Чому Adaboost з деревами рішень?


11

Я читав трохи про алгоритми підсилення для класифікаційних завдань і зокрема Adaboost. Я розумію, що метою Adaboost є прийняття декількох "слабких учнів" і через набір ітерацій щодо даних про навчання підштовхують класифікаторів навчитися прогнозувати класи, на яких модель (и) неодноразово помиляються. Однак мені було цікаво, чому так багато прочитаних нами читань використовували дерева рішень як слабкий класифікатор. Чи є певна причина цього? Чи є певні класифікатори, які роблять особливо добрих чи поганих кандидатів у Adaboost?


Найпростіший учень, який можна використовувати, - це дерево рішень з глибиною = 1. Можливо, тому кожен використовує це у своїх прикладах.
Аарон

Відповіді:


18

Я говорив про це у відповіді на пов’язане питання ЗО . Дерева рішень, як правило, дуже добре підходять для підвищення, набагато більше, ніж інші алгоритми. Точка кулі / підсумкова версія така:

  1. Дерева рішень нелінійні. Підвищення лінійних моделей просто не працює добре.
  2. Слабкий учень повинен бути незмінно кращим, ніж випадкові здогадки. Вам не потрібно робити будь-яку настройку параметрів на дереві рішення, щоб отримати таку поведінку. Навчання SVM дійсно потребує пошуку параметрів. Оскільки дані повторно зважуються на кожній ітерації, вам, ймовірно, потрібно зробити інший пошук параметрів на кожній ітерації. Таким чином, ви збільшуєте обсяг роботи, яку ви повинні виконати з великим запасом.
  3. Дерева рішень досить швидко навчаються. Оскільки ми збираємося будувати 100-ти чи 1000-ти з них, це хороша власність. Вони також швидко класифікуються, що знову важливо, коли для запуску вам потрібно 100 чи 1000, перш ніж ви зможете вивести своє рішення.
  4. Змінюючи глибину, у вас є простий і легкий контроль над зміною / відхиленням, знаючи, що прискорення може зменшити зміщення, але також значно зменшити дисперсію. Відомо, що прискорення роботи є надмірним, тому легка настройка корисної стрічки корисна в цьому плані.

1

У мене немає відповіді з підручника. Однак ось деякі думки.

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

Як наслідок, якщо ви вважаєте, наприклад, використання мішків та прискорення дерев як слабких учнів, найкращим способом використання є невеликі / короткі дерева з прискореними та дуже деталізованими деревами з мішковиною. Ось чому дуже часто процедура прискорення використовує кулю рішення як слабкого учня, який є найкоротшим можливим деревом (єдиним, якщо умова на одному вимірі). Цей пень дуже стійкий, тому він має дуже низьку дисперсію.

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

Крім того, ви повинні зауважити, що для певних процедур прискорення, збільшення градієнта, наприклад, Брейман виявив, що якщо слабкий учень є деревом, деяка оптимізація в тому, як можна зробити прискорення. Таким чином, у нас ростуть градієнтні дерева. У книзі ESTL є приємна витримка збільшення.

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