Как переобучить конвейер с разными данными в Scikit-learn? - PullRequest
0 голосов
/ 02 августа 2020
• 1000 1003 * Пока все хорошо. Однако в конце я хочу переобучить выигрышную комбинацию гиперпараметров конвейера на моих полных X и Y без какой-либо перекрестной проверки. Как я мог это получить? Простое повторное применение CV.fit(X, y) приведет к повторному выполнению всего процесса чередования с CV, что, очевидно, не нужно. Я мог бы также проанализировать CV.get_params() на предмет гиперпараметров наилучшей комбинации и соответствующим образом построить конвейер, но это почему-то кажется неуклюжим и непрофессиональным ...

1 Ответ

0 голосов
/ 02 августа 2020

Ответ на ваш вопрос находится в документации GridSearchCV . См. Раздел «Атрибуты»: best_estimator_ - это место, где хранится лучшая модель, поэтому вы можете получить к ней доступ после того, как закончите настройку. Вы можете использовать его, напрямую вызвав `CV.best_estimatory_ ', вы можете создать новую ссылку на него или обработать его для дальнейшего использования, используя joblib , ie.:

import joblib
joblib.dump(CV.best_estimator_, 'my_pipeline.pkl')

Позже вы можете загрузить свою модель для дальнейшей работы:

import joblib
my_pipeline = joblib.load('my_pipeline.pkl')

Если вам не нужна модель, а только ее гиперпараметры, вы можете получить доступ к ним из атрибута best_params_, ie.:

CV.best_params_

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

...