Использование двух разных моделей регрессии в одном наборе данных для прогнозирования одной метки - PullRequest
0 голосов
/ 17 мая 2019

Я хотел использовать KNN для функций, которые были заминированы при использовании другого типа регрессии для остальных моих функций.Можно ли как-то объединить обе модели регрессии, чтобы предсказать одну метку?Должен ли я разделить свои наборы данных на два разных?

В настоящее время я использую панды и склеарн.

1 Ответ

0 голосов
/ 17 мая 2019

Вы можете сделать это с помощью моделей Ensemble.

Модели ансамбля сочетают в себе решения различных моделей для повышения общей производительности.Для задач регрессии я бы предложил следующие ансамблевые модели / методы:

Усреднение

Это довольно простой метод ансамбля, в котором вам нужно взять среднее из прогнозов из всехваших моделей и использовать его, чтобы сделать окончательный прогноз.

Взвешенное усреднение

Это похоже на простое усреднение, но все модели теперь имеют разные веса, определяя важность / вклад каждой из моделей вокончательный прогноз.

Мета-оценщик сумок

Это метод ансамблирования, который может использоваться как в классификации (BaggingClassifier), так и в регрессии ()BaggingRegressor).Метаоценщик суммирования предпринимает следующие шаги для достижения окончательного прогноза:

  1. Произвольное создание подмножеств из исходного набора данных
  2. Базовая оценка установлена ​​на каждом из подмножествсоздан на шаге 1.
  3. Прогнозы объединяются для получения окончательной прогнозируемой метки

Ниже приведен очень простой пример, использующий BaggingRegressor из sklearn:

from sklearn.ensemble import BaggingRegressor

ensemble_model = BaggingRegressor(tree.DecisionTreeRegressor(random_state=1))
ensemble_model.fit(X_train, Y_train)
ensemble_model.score(X_test,Y_test)
...