Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Завдання: Вибір Найкращого Значення K | Класифікатор K-NN
Класифікація з Python

bookЗавдання: Вибір Найкращого Значення K

Як показано в попередніх розділах, передбачення моделі можуть змінюватися залежно від значення k (кількість сусідів). Під час побудови моделі k-NN важливо обрати таке значення k, яке забезпечує найкращу продуктивність.

Поширеним підходом є використання крос-валідації для оцінки якості моделі. Можна виконати цикл і обчислити оцінки крос-валідації для різних значень k, а потім обрати те, яке дає найвищий результат. Це найпоширеніший метод.

Для цього у sklearn є зручний інструмент: клас GridSearchCV.

Параметр param_grid приймає словник, де ключами є назви параметрів, а значеннями — списки варіантів для перевірки. Наприклад, щоб протестувати значення від 1 до 99 для n_neighbors, можна записати:

param_grid = {'n_neighbors': range(1, 100)}

Виклик методу .fit(X, y) для об'єкта GridSearchCV дозволяє здійснити пошук по сітці параметрів, знайти найкращі параметри, а потім перенавчити модель на всьому наборі даних з використанням цих параметрів.

Отримати найкращий результат можна за допомогою атрибута .best_score_, а робити передбачення оптимізованою моделлю — через метод .predict(). Також саму найкращу модель можна отримати через атрибут .best_estimator_.

Завдання

Swipe to start coding

Вам надано набір даних з оцінками Star Wars, збережений у змінній DataFrame як df.

  • Ініціалізуйте param_grid як словник, що містить параметр n_neighbors зі значеннями [3, 9, 18, 27].
  • Створіть об'єкт GridSearchCV, використовуючи param_grid з 4-кратною крос-валідацією, навчіть його та збережіть у змінній grid_search.
  • Отримайте найкращу модель з grid_search і збережіть її у змінній best_model.
  • Отримайте оцінку найкращої моделі та збережіть її у змінній best_score.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 7
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

Awesome!

Completion rate improved to 4.17

bookЗавдання: Вибір Найкращого Значення K

Свайпніть щоб показати меню

Як показано в попередніх розділах, передбачення моделі можуть змінюватися залежно від значення k (кількість сусідів). Під час побудови моделі k-NN важливо обрати таке значення k, яке забезпечує найкращу продуктивність.

Поширеним підходом є використання крос-валідації для оцінки якості моделі. Можна виконати цикл і обчислити оцінки крос-валідації для різних значень k, а потім обрати те, яке дає найвищий результат. Це найпоширеніший метод.

Для цього у sklearn є зручний інструмент: клас GridSearchCV.

Параметр param_grid приймає словник, де ключами є назви параметрів, а значеннями — списки варіантів для перевірки. Наприклад, щоб протестувати значення від 1 до 99 для n_neighbors, можна записати:

param_grid = {'n_neighbors': range(1, 100)}

Виклик методу .fit(X, y) для об'єкта GridSearchCV дозволяє здійснити пошук по сітці параметрів, знайти найкращі параметри, а потім перенавчити модель на всьому наборі даних з використанням цих параметрів.

Отримати найкращий результат можна за допомогою атрибута .best_score_, а робити передбачення оптимізованою моделлю — через метод .predict(). Також саму найкращу модель можна отримати через атрибут .best_estimator_.

Завдання

Swipe to start coding

Вам надано набір даних з оцінками Star Wars, збережений у змінній DataFrame як df.

  • Ініціалізуйте param_grid як словник, що містить параметр n_neighbors зі значеннями [3, 9, 18, 27].
  • Створіть об'єкт GridSearchCV, використовуючи param_grid з 4-кратною крос-валідацією, навчіть його та збережіть у змінній grid_search.
  • Отримайте найкращу модель з grid_search і збережіть її у змінній best_model.
  • Отримайте оцінку найкращої моделі та збережіть її у змінній best_score.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 7
single

single

some-alt