Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Запобігання перенавчанню в деревах рішень | Дерево Рішень
Класифікація з Python

bookЗапобігання перенавчанню в деревах рішень

Перш ніж перейти до реалізації дерева рішень за допомогою Python, важливо розглянути одну ключову тему: переобучення — основна проблема, пов'язана з деревами рішень.

Нижче наведено приклад того, як дерево рішень підлаштовується під набір даних. Зверніть увагу, як модель адаптується до навчальних даних, захоплюючи їхні закономірності та особливості:

Хоча модель ідеально підходить до навчального набору, не допускаючи жодної помилки, проблема полягає в тому, що межі рішень є надто складними. Відповідно, точність на тестовому наборі (або при крос-валідації) буде значно нижчою, ніж на навчальному, що свідчить про переобучення моделі.

Причина цього полягає в тому, що модель буде виконувати стільки розгалужень, скільки потрібно, щоб ідеально підлаштуватися під навчальні дані.

На щастя, дерево рішень має багато налаштувань, тому можна змінювати його гіперпараметри, щоб мінімізувати переобучення.

Максимальна глибина дерева

Глибина вузла — це відстань (вертикально) від вузла до кореневого вузла.

Можна обмежити максимальну глибину дерева рішень, зробивши його меншим і менш схильним до перенавчання. Для цього вузли рішень на максимальній глибині перетворюються на листові вузли.

Нижче наведено gif, який демонструє, як змінюється межа рішення при різних значеннях максимальної глибини:

Мінімальна кількість зразків

Ще один спосіб обмежити дерево — встановити мінімальну кількість зразків на листових вузлах. Це зробить модель простішою та більш стійкою до викидів.

Можна побачити, як цей гіперпараметр впливає на межу рішень:

Обидва ці гіперпараметри доступні в реалізації Decision Tree бібліотеки scikit-learn.
За замовчуванням дерево не має обмежень: max_depth встановлено як None, тобто глибина не обмежена, а min_samples_leaf дорівнює 1.

question mark

Оберіть НЕПРАВИЛЬНЕ твердження.

Select the correct answer

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

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

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

Секція 3. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Suggested prompts:

Can you explain more about overfitting and why it's a problem for Decision Trees?

How do I choose the right values for max_depth and min_samples_leaf?

What other hyperparameters can help prevent overfitting in Decision Trees?

Awesome!

Completion rate improved to 4.17

bookЗапобігання перенавчанню в деревах рішень

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

Перш ніж перейти до реалізації дерева рішень за допомогою Python, важливо розглянути одну ключову тему: переобучення — основна проблема, пов'язана з деревами рішень.

Нижче наведено приклад того, як дерево рішень підлаштовується під набір даних. Зверніть увагу, як модель адаптується до навчальних даних, захоплюючи їхні закономірності та особливості:

Хоча модель ідеально підходить до навчального набору, не допускаючи жодної помилки, проблема полягає в тому, що межі рішень є надто складними. Відповідно, точність на тестовому наборі (або при крос-валідації) буде значно нижчою, ніж на навчальному, що свідчить про переобучення моделі.

Причина цього полягає в тому, що модель буде виконувати стільки розгалужень, скільки потрібно, щоб ідеально підлаштуватися під навчальні дані.

На щастя, дерево рішень має багато налаштувань, тому можна змінювати його гіперпараметри, щоб мінімізувати переобучення.

Максимальна глибина дерева

Глибина вузла — це відстань (вертикально) від вузла до кореневого вузла.

Можна обмежити максимальну глибину дерева рішень, зробивши його меншим і менш схильним до перенавчання. Для цього вузли рішень на максимальній глибині перетворюються на листові вузли.

Нижче наведено gif, який демонструє, як змінюється межа рішення при різних значеннях максимальної глибини:

Мінімальна кількість зразків

Ще один спосіб обмежити дерево — встановити мінімальну кількість зразків на листових вузлах. Це зробить модель простішою та більш стійкою до викидів.

Можна побачити, як цей гіперпараметр впливає на межу рішень:

Обидва ці гіперпараметри доступні в реалізації Decision Tree бібліотеки scikit-learn.
За замовчуванням дерево не має обмежень: max_depth встановлено як None, тобто глибина не обмежена, а min_samples_leaf дорівнює 1.

question mark

Оберіть НЕПРАВИЛЬНЕ твердження.

Select the correct answer

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

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

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

Секція 3. Розділ 3
some-alt