ШІ 101
Що таке ансамблеве навчання?

Одна з найпотужніших технік машинного навчання – ансамблеве навчання. Ансамблеве навчання полягає у використанні кількох моделей машинного навчання для покращення надійності та точності прогнозів. Але як використання кількох моделей машинного навчання призводить до більш точних прогнозів? Які техніки використовуються для створення моделей ансамблевого навчання? Ми розглянемо відповіді на ці питання, розглянувши підстави використання моделей ансамблевого навчання та основні способи створення цих моделей.
Що таке ансамблеве навчання?
По суті, ансамблеве навчання – це процес навчання кількох моделей машинного навчання та об’єднання їх виходів. Різні моделі використовуються як основа для створення однієї оптимальної прогнозувальної моделі. Об’єднання різноманітної сукупності індивідуальних моделей машинного навчання може покращити стабільність загальної моделі, що призводить до більш точних прогнозів. Моделі ансамблевого навчання часто є більш надійними, ніж індивідуальні моделі, і тому вони часто займають перше місце у багатьох змаганнях з машинного навчання.
Існує кілька технік, які інженер може використовувати для створення моделі ансамблевого навчання. Прості техніки ансамблевого навчання включають такі речі, як середнє значення виходів різних моделей, а також існують більш складні методи та алгоритми, розроблені спеціально для об’єднання прогнозів багатьох базових моделей/учнів.
Чому використовувати методи ансамблевого навчання?
Моделі машинного навчання можуть відрізнятися одна від одної з різних причин. Різні моделі машинного навчання можуть працювати з різними вибірками даних населення, можуть використовуватися різні методи моделювання, і може використовуватися різна гіпотеза.
Представіть собі, що ви граєте в тривіальну гру з великою групою людей. Якщо ви граєте в команді самі по собі, є певні теми, про які ви знаєте, і багато тем, про які ви нічого не знаєте. Тепер припустіть, що ви граєте в команді з іншими людьми. Як і ви, вони будуть мати певні знання щодо своїх спеціальностей і жодних знань про інші теми. Але коли ваші знання об’єднуються, у вас є більш точні здогади щодо більшої кількості галузей, і кількість тем, про які ваша команда нічого не знає, зменшується. Це той же принцип, який лежить в основі ансамблевого навчання, об’єднання прогнозів різних членів команди (індивідуальних моделей) для покращення точності та мінімізації помилок.
Статистики довели, що коли натовп людей запитують про правильну відповідь на певне питання з діапазоном можливих відповідей, всі їхні відповіді утворюють розподіл імовірності. Люди, які дійсно знають правильну відповідь, виберуть правильну відповідь з впевненістю, тоді як люди, які виберуть неправильні відповіді, розподілить свої здогади по діапазону можливих неправильних відповідей. Вернувшись до прикладу тривіальної гри, якщо ви та ваші два друга знаєте, що правильна відповідь – А, всі троє з вас проголосують за А, тоді як три інших людей у вашій команді, які не знають відповідь, ймовірно, неправильно виберуть Б, В, Г або Д. Результатом є те, що А має три голоси, а інші відповіді мають не більше одного або двох голосів максимум.
Усі моделі мають певну кількість помилок. Помилки однієї моделі будуть відрізнятися від помилок, згенерованих іншою моделлю, оскільки моделі самі по собі відрізняються з причин, описаних вище. Коли всі помилки розглядаються, вони не будуть скупчені навколо однієї відповіді чи іншої, а будуть розкидані. Неправильні здогади по суті розподілені по всіх можливих неправильних відповідях, взаємно виключając одна одну. Тим часом правильні здогади з різних моделей будуть скупчені навколо справжньої, правильної відповіді. Коли методи ансамблевого навчання використовуються, правильну відповідь можна знайти з більшою надійністю.
Прості методи ансамблевого навчання
Прості методи ансамблевого навчання зазвичай включають застосування статистичних методів підсумовування, таких як визначення моди, середнього значення або зваженого середнього значення набору прогнозів.
Мода відноситься до найбільш часто зустрічається елемента у наборі чисел. Для отримання моди індивідуальні моделі навчання повертають свої прогнози, і ці прогнози розглядаються як голоси щодо остаточного прогнозу. Визначення середнього значення прогнозів проводиться просто шляхом розрахунку арифметичного середнього прогнозів, округленого до найближчого цілого числа. Нарешті, зважене середнє значення можна розрахувати шляхом присвоєння різних ваг моделям, використаним для створення прогнозів, причому ваги представляють сприйняту важливість цієї моделі. Числове подання класифікаційного прогнозу множиться разом із вагою від 0 до 1,0, індивідуальні зважені прогнози потім підсумовуються, а результат округлюється до найближчого цілого числа.
Розширені методи ансамблевого навчання
Існує три основні розширені методи ансамблевого навчання, кожний з яких призначений для вирішення певного типу задач машинного навчання. Техніки “багінгу” використовуються для зменшення дисперсії прогнозів моделі, причому дисперсія відноситься до того, наскільки результат прогнозів відрізняється при одному й тому ж спостереженні. Техніки “бустінгу” використовуються для боротьби зі зміщенням моделей. Нарешті, “стекінг” використовується для покращення прогнозів загалом.
Методи ансамблевого навчання самі по собі загалом можна розділити на одну з двох різних груп: послідовні методи та паралельні методи ансамблевого навчання.
Послідовні методи ансамблевого навчання отримують назву “послідовні”, оскільки базові учні/моделі генеруються послідовно. У разі послідовних методів основна ідея полягає в тому, щоб використати залежність між базовими учнями для отримання більш точних прогнозів. Помилково позначені приклади мають свої ваги调整, тоді як правильно позначені приклади зберігають ті ж ваги. Кожного разу, коли генерується новий учень, ваги змінюються, а точність (сподіваємося) покращується.
На відміну від послідовних моделей ансамблевого навчання, паралельні методи ансамблевого навчання генерують базові учні паралельно. При виконанні паралельного ансамблевого навчання ідея полягає в тому, щоб використати той факт, що базові учні мають незалежність, оскільки загальну швидкість помилок можна зменшити шляхом усереднення прогнозів індивідуальних учнів.
Методи ансамблевого навчання можуть бути однорідними або неоднорідними за своєю суттю. Більшість методів ансамблевого навчання є однорідними, тобто вони використовують один тип базової моделі навчання/алгоритму. Напротивагу, неоднорідні ансамблі використовують різні алгоритми навчання, диверсифікуючи та варіюючи учнів, щоб забезпечити максимально можливу точність.
Приклади алгоритмів ансамблевого навчання

Візуалізація ансамблевого бустінгу. Фото: Sirakorn via Wikimedia Commons, CC BY SA 4.0, (https://commons.wikimedia.org/wiki/File:Ensemble_Boosting.svg)
Приклади послідовних методів ансамблевого навчання включають AdaBoost, XGBoost та градієнтне дерево бустінгу. Це всі моделі бустінгу. Для цих моделей бустінгу мета полягає в тому, щоб перетворити слабкі, недооптимізовані учні на більш потужні учні. Моделі, такі як AdaBoost та XGBoost, починаються з багатьох слабких учнів, які працюють лише трохи краще, ніж випадкові здогади. По мірі продовження навчання ваги застосовуються до даних та регулюються. Приклади, які були неправильно класифіковані учнями в попередніх раундах навчання, отримують більшу вагу. Після повторення цього процесу протягом бажаної кількості раундів навчання прогнози об’єднуються шляхом зваженого сумування (для задач регресії) та зваженого голосування (для задач класифікації).

Процес навчання багінгу. Фото: SeattleDataGuy via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Bagging.png)
Прикладом паралельної моделі ансамблевого навчання є класифікатор случайного лісу, а випадковий ліс також є прикладом техніки багінгу. Термін “багінг” походить від “бутстреп-агрегації”. Вибірки беруться з загального набору даних за допомогою методу вибірки, відомого як “бутстреп-вибірка”, який використовується базовими учнями для створення прогнозів. Для задач класифікації виходи базових моделей агрегуються за допомогою голосування, тоді як вони усереднюються для задач регресії. Випадкові ліси використовують окремі дерева рішень як свої базові учні, і кожне дерево в ансамблі будується за допомогою різних вибірок з набору даних. Вибірка випадкових функцій також використовується для генерації дерева. Це призводить до високорандомізованих окремих дерев рішень, які об’єднуються для отримання надійних прогнозів.

Візуалізація ансамблевого стекінгу. Фото: Supun Setunga via Wikimedia Commons, CC BY S.A 4.0 (https://commons.wikimedia.org/wiki/File:Stacking.png)
Що стосується технік ансамблевого стекінгу, кілька регресійних або класифікаційних моделей об’єднуються разом за допомогою вищого рівня мета-моделі. Низькорівневі базові моделі тренуються шляхом подачі їм всього набору даних. Вихід базових моделей потім використовується як функції для тренування мета-моделі. Моделі ансамблевого стекінгу часто є неоднорідними за своєю суттю.












