GridSearchCV
Свайпніть щоб показати меню
Для підвищення продуктивності моделі налаштовують гіперпараметри. Суть проста: перевіряють різні значення, обчислюють оцінки крос-валідації та обирають те, що має найвищу оцінку.
Цей процес можна виконати за допомогою класу GridSearchCV з модуля sklearn.model_selection.
GridSearchCV потребує моделі та решітки параметрів (param_grid).
Приклад:
param_grid = {'n_neighbors': [1, 3, 5, 7]}
Після ініціалізації GridSearchCV виконайте .fit(X, y).
- Найкраща модель знаходиться у
.best_estimator_; - Її оцінка крос-валідації міститься у
.best_score_.
12345678910111213import pandas as pd from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import GridSearchCV df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_pipelined.csv') X, y = df.drop('species', axis=1), df['species'] param_grid = {'n_neighbors': [1,3,5,7,9]} grid_search = GridSearchCV(KNeighborsClassifier(), param_grid) grid_search.fit(X, y) print(grid_search.best_estimator_) print(grid_search.best_score_)
Після навчання GridSearchCV автоматично перенавчає найкращий оцінювач на всьому наборі даних.
Об'єкт grid_search стає фінальною навченою моделлю та може використовуватися безпосередньо з .predict() і .score().
12grid_search.fit(X, y) print(grid_search.score(X, y)) # training accuracy (not reliable for real evaluation)
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат