Недолік GridSearchCV
Перед використанням GridSearchCV зверніть увагу, що у KNeighborsClassifier є більше гіперпараметрів, ніж лише n_neighbors. Два важливих параметри — це weights та p.
Ваги
За замовчуванням класифікатор використовує weights='uniform', тобто всі k сусідів мають однакову вагу при голосуванні.
Встановлення weights='distance' надає ближчим сусідам більший вплив, що часто покращує передбачення, коли найближчі точки є більш релевантними.
P
Параметр p визначає метрику відстані:
p=1: Манхеттенська відстань;p=2: Евклідова відстань.
Параметр p може приймати будь-яке додатне ціле число. Існує багато різних метрик відстані, але їх важче візуалізувати, ніж p=1 або p=2.
Не переймайтеся, якщо деталі щодо weights або p залишаються незрозумілими. Вони наведені лише для того, щоб показати, що існує декілька гіперпараметрів, які можуть впливати на передбачення моделі. Розглядайте їх як приклади гіперпараметрів, які можна налаштовувати.
Раніше налаштовувався лише параметр n_neighbors. Щоб здійснити пошук за всіма трьома гіперпараметрами, використовуйте:
param_grid = {
'n_neighbors': [1, 3, 5, 7],
'weights': ['distance', 'uniform'],
'p': [1, 2]
}
GridSearchCV перевіряє всі можливі комбінації для знаходження найкращої, тому він спробує всі такі варіанти:
Більша сітка, наприклад:
param_grid = {
'n_neighbors': [...],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
створює 100 комбінацій. З 5-кратною крос-валідацією модель навчається 500 разів. Це прийнятно для невеликих наборів даних, але для більших це стає надто повільно.
Щоб зменшити час обчислень, RandomizedSearchCV перевіряє лише випадкову підмножину комбінацій, зазвичай знаходячи хороші результати значно швидше, ніж повний перебір сітки.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain how RandomizedSearchCV selects the combinations to test?
What are some best practices for choosing the range of hyperparameters?
How do I interpret the results from GridSearchCV or RandomizedSearchCV?
Awesome!
Completion rate improved to 3.13
Недолік GridSearchCV
Свайпніть щоб показати меню
Перед використанням GridSearchCV зверніть увагу, що у KNeighborsClassifier є більше гіперпараметрів, ніж лише n_neighbors. Два важливих параметри — це weights та p.
Ваги
За замовчуванням класифікатор використовує weights='uniform', тобто всі k сусідів мають однакову вагу при голосуванні.
Встановлення weights='distance' надає ближчим сусідам більший вплив, що часто покращує передбачення, коли найближчі точки є більш релевантними.
P
Параметр p визначає метрику відстані:
p=1: Манхеттенська відстань;p=2: Евклідова відстань.
Параметр p може приймати будь-яке додатне ціле число. Існує багато різних метрик відстані, але їх важче візуалізувати, ніж p=1 або p=2.
Не переймайтеся, якщо деталі щодо weights або p залишаються незрозумілими. Вони наведені лише для того, щоб показати, що існує декілька гіперпараметрів, які можуть впливати на передбачення моделі. Розглядайте їх як приклади гіперпараметрів, які можна налаштовувати.
Раніше налаштовувався лише параметр n_neighbors. Щоб здійснити пошук за всіма трьома гіперпараметрами, використовуйте:
param_grid = {
'n_neighbors': [1, 3, 5, 7],
'weights': ['distance', 'uniform'],
'p': [1, 2]
}
GridSearchCV перевіряє всі можливі комбінації для знаходження найкращої, тому він спробує всі такі варіанти:
Більша сітка, наприклад:
param_grid = {
'n_neighbors': [...],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
створює 100 комбінацій. З 5-кратною крос-валідацією модель навчається 500 разів. Це прийнятно для невеликих наборів даних, але для більших це стає надто повільно.
Щоб зменшити час обчислень, RandomizedSearchCV перевіряє лише випадкову підмножину комбінацій, зазвичай знаходячи хороші результати значно швидше, ніж повний перебір сітки.
Дякуємо за ваш відгук!