Дерево рішень проти КНН


15

У яких випадках краще використовувати дерево рішень, а в інших випадках - KNN?

Навіщо використовувати один з них у певних випадках? А інший у різних випадках? (Переглядаючи його функціональність, а не алгоритм)

Хтось має якісь пояснення чи посилання на це?


2
KNN НЕ є без нагляду. Можливо, у відповідь було думати про k-засоби?

2
Навчання на дереві рішень також не контролюється. en.wikipedia.org/wiki/Supervid_learning .
Валентас

Відповіді:


9

Вони служать різним цілям.

KNN не контролюється, дерево рішень (DT) контролюється. ( KNN контролюється навчанням, тоді як K-засоби не контролюються. Я думаю, що ця відповідь викликає деяку плутанину. ) KNN використовується для кластеризації, DT для класифікації. ( Обидва використовуються для класифікації. )

KNN визначає мікрорайони, тому має бути метрика відстані. Це означає, що всі функції повинні бути числовими. На показники відстані можуть впливати різні масштаби між атрибутами, а також простір у великих розмірах.

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

Отже, якщо ви хочете знайти подібні приклади, ви можете скористатися KNN. Якщо ви хочете класифікувати приклади, ви можете використовувати DT.


Уточнення: Кластеризація, але один кластер розміром до k навколо заданого вхідного вектора. Не обов'язково правда, що всі функції повинні бути числовими. Наприклад, ви можете використовувати подібність Жакарда, щоб визначити відстань, де функції номінальні.

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

1
Ви також можете класифікувати КНН саме на основі більшості ваших сусідів К
Єкатерина Кокатюха

3
-1 knnі k-meansрізні алгоритми, і ця відповідь, на жаль (і помилково) пропускає ці дві процедури. knnне є ні наглядом, ні не використовується для кластеризації! Див. Q: Diff kNN and kMean
SebNag

@SebNag, чи справедливо сказати, що розділ "Непідконтрольне найближчим сусідам" наукового комплекту насправді просто говорить про k-засоби в маскуванні? scikit-learn.org/stable/modules/neighbors.html Схоже, що в цьому розділі використовується кнн, але просто з якоюсь мірою відстані, а не для визначення кластерів, які не знають міток .. тобто це звучить як k-означає.
Фрікстер

8

Класифікатори, такі як дерево рішень, байесівський, зворотний розповсюдження, підтримка векторної машини, підпадають під категорію "Eager Learners" , оскільки вони спочатку будують модель класифікації на навчальному наборі даних, перш ніж зможуть фактично класифікувати [небачене] спостереження з тестового набору даних . Вивчена модель тепер "нетерпляча" (читайте голодною) класифікувати раніше небачені спостереження, звідси і назва.


Однак класифікатор на основі KNN не створює жодної моделі класифікації. Це безпосередньо вчиться з навчальних випадків (спостережень). Він починає обробляти дані лише після того, як йому надано тестове спостереження для класифікації. Таким чином, KNN потрапляє під категорію підходів "Ледачий учень" .

Виходячи з наведених основоположних відмінностей, ми можемо зробити висновок про наступне:

  1. Оскільки KNN здійснює навчання на місці, воно вимагає частих пошуку баз даних, отже, це може бути обчислювально дорого. Класифікатору дерев рішень не потрібні такі пошукові підходи, оскільки готова модель класифікації пам’яті.

  2. Оскільки KNN виконує навчання, засноване на екземплярі, добре налаштований K може моделювати складні простори рішень, що мають довільно складні межі рішення, які не легко моделюються іншими «прагнутими» учнями, такими як Дерева рішень.

  3. "Готові" учні працюють партіями, моделюючи одну групу навчальних спостережень за один раз. Тому вони не підходять для поступового навчання. Але KNN, природно, підтримує інкрементальне навчання (потоки даних), оскільки це вчитель, заснований на екземплярі.

  4. Крім того, класифікатор KNN дає тестові коефіцієнти помилок, ближчі до рівня байєсівського класу (золотий стандарт). Як цитується в ISLR :

Коефіцієнт помилок Байєса аналогічний невідмінній помилці


4

З машинного навчання Себастьяна Рашка :

Основна перевага такого підходу, заснованого на пам’яті [KNN], полягає в тому, що класифікатор негайно адаптується під час збору нових навчальних даних. Однак недоліком є ​​те, що обчислювальна складність класифікації нових вибірок лінійно зростає з кількістю вибірок у навчальному наборі даних за найгіршим сценарієм - якщо набір даних має дуже мало вимірів (особливостей) і алгоритм не був реалізований з використанням ефективних даних структури, такі як KD-дерева. Дж. Фрідман, Дж. Л. Бентлі та Р. А. Фінкель. Алгоритм пошуку найкращих збігів у очікуваному логарифмічному часі. Операції ACM на математичному програмному забезпеченні (TOMS), 3 (3): 209–226, 1977 рр. Крім того, ми не можемо відкинути навчальні зразки, оскільки жоден крок навчання не задіяний. Таким чином, простір для зберігання даних може стати проблемою, якщо ми працюємо з великими наборами даних.

Однак дерево рішень може швидко класифікувати нові приклади. Ви просто ведете серію булевих порівнянь.


2

Я додам, що дерева рішень можуть використовуватися як для задач класифікації, так і для регресії. З іншого боку, DT передбачає, що клас у прийнятій відповіді буде більш конкретним, описуючи дерева класифікації, які технічно є підтипом загальної концепції DT. Одне посилання (ігнорування нижніх шарів, які обговорюють конкретні реалізації):
типи дерев рішень Звідси: http://www.simafore.com/blog/bid/62482/2-main-differences-bet Between-classification-and-regression- trees

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.