Ансамблеве навчання
Шаблон:Машинне навчання Ансамблеве навчання — техніка машинного навчання, що використовує кілька навчених алгоритмів з метою отримати кращу Шаблон:Не перекладено, ніж можна отримати від кожного алгоритму окремоШаблон:SfnШаблон:SfnШаблон:Sfn. На відміну від Шаблон:Нп в статистичній механіці, який зазвичай нескінченний, ансамбль моделей у машинному навчанні складається з конкретної скінченної множини альтернативних моделей, але зазвичай дозволяє існувати істотно гнучкішим структурам.
Алгоритми навчання з учителем найчастіше описують як розв'язання задачі пошуку у просторі гіпотез відповідної гіпотези — такої, що дозволяє робити гарні передбачення для конкретної задачі. Але пошук хорошої гіпотези може бути складною задачею. Ансамбль використовує комбінацію кількох гіпотез, сподіваючись, що вона виявиться кращою, ніж окремі гіпотези. Термін «ансамбль» зазвичай резервують для методів, які генерують кілька гіпотез за допомогою одного й того ж базового учня. Ширше поняття системи множинних класифікаторів також використовує кілька гіпотез, але згенерованих не за допомогою одного й того ж учняШаблон:Джерело.
Обчислення передбачення ансамблю зазвичай потребує більше обчислень, ніж передбачення однієї моделі, отже ансамблі можна вважати способом компенсації поганого алгоритму навчання додатковими обчисленнями. В ансамблі моделей зазвичай використовують швидкі алгоритми, такі як дерева рішень (наприклад, випадкові ліси), хоча повільні алгоритми можуть отримати переваги від ансамблевої техніки.
За аналогією, ансамблеву техніку використовують також у сценаріях навчання без учителя, наприклад, Шаблон:Не перекладено або у виявленні аномалій.
Теорія ансамблювання
Ансамбль є алгоритмом навчання з учителем, оскільки його можна натренувати, а потім використати для здійснення передбачення. Тому тренований ансамбль надає одну гіпотезу. Ця гіпотеза, проте, необов'язково лежить у просторі гіпотез моделей, із яких її побудовано. Таким чином, ансамблі можуть мати більшу гнучкість у функціях, які можуть представляти. Ця гнучкість може, теоретично, швидше привести їх до перенавчання за тренувальними даними, ніж могло бути у випадку окремої моделі, але, на практиці, деякі техніки ансамблювання (особливо бутстрепова агрегація) схильні зменшувати проблеми, пов'язані з перенавчанням на тренувальних даних.
Емпірично ансамблі схильні давати кращі результати, якщо є відмінність моделейШаблон:SfnШаблон:Sfn. Тому в багатьох ансамблевих методах намагаються підвищити різницю комбінованих моделейШаблон:SfnШаблон:Sfn. Хоча, можливо, неінтуїтивні, більш випадкові алгоритми (подібні до випадкових дерев рішень) можна використати для отримання строгіших ансамблів, ніж продумані алгоритми (такі як дерева рішень зі зменшенням ентропії)Шаблон:Sfn. Використання різних алгоритмів строгого навчання, проте, як було показано, ефективніше, ніж використання технік, які намагаються спростити моделі з метою забезпечити більшу відмінністьШаблон:Sfn.
Розмір ансамблю
Хоча кількість класифікаторів у ансамблі значно впливає на точність передбачення, цю проблему досліджено мало. Визначення апріорі розміру ансамблю та обсягів і швидкості великих потоків даних робить цей фактор навіть критичнішим для онлайнових ансамблів класифікаторів. Для визначення належної кількості компонентів використовувано переважно статистичні тести. Нещодавно теоретичний фреймворк дав привід припустити, що є ідеальне число класифікаторів ансамблю, таке, що число класифікаторів більше або менше від цього ідеального числа призводить до погіршення точності. Це називають «законом зменшення віддачі в побудові ансамблю». Цей теоретичний фреймворк показує, що використання числа незалежних класифікаторів, рівного кількості міток класу, дає найвищу точністьШаблон:SfnШаблон:Sfn.
Часто використовувані типи ансамблів
Баєсів оптимальний класифікатор
Баєсів оптимальний класифікатор — це техніка класифікації. Він є ансамблем усіх гіпотез із простору гіпотез. У середньому жоден з ансамблів не може перевершувати йогоШаблон:Sfn. Наївний баєсів класифікатор — це версія, яка передбачає, що дані умовно незалежні від класу, і виконує обчислення за реальніший час. Кожній гіпотезі надається голос, пропорційний імовірності того, що тренувальні дані буде взято із системи, якщо гіпотеза була б істинною. Для отримання тренувальних даних скінченного розміру голос кожної гіпотези множиться на апріорну можливість такої гіпотези. Баєсів оптимальний класифікатор можна виразити такою рівністю:
- ,
де — передбачений клас, — множина всіх можливих класів, — клас гіпотез, — ймовірність, — тренувальні дані. Як ансамбль, баєсів оптимальний класифікатор представляє гіпотезу, яка не обов'язково належить до . Гіпотеза, представлена баєсовим оптимальним класифікатором, однак, є оптимальною гіпотезою у просторі ансамблів (простір усіх можливих ансамблів, які складаються лише з гіпотез простору ).
Формулу можна переписати за допомогою теореми Баєса, яка свідчить, що постеріорна ймовірність пропорційна апріорній імовірності:
звідки
Беггінг
Бутстрепове агрегування (беггінг), надає кожній моделі в ансамблі однакову вагу (голос). Щоб підтримувати варіантність, беггінг тренує кожну модель в ансамблі за допомогою випадково відібраної підмножини з тренувальної множини. Наприклад, алгоритм «випадкового лісу» комбінує випадкові дерева рішень із беггінгом, щоб отримати високу точність класифікаціїШаблон:Sfn.
Підсилювання
Шаблон:ДокладнішеПідсилювання (бустинг) будує ансамбль послідовними приростами шляхом тренування кожної нової моделі, щоб виділити екземпляри, які попередні моделі класифікували помилково. Показано, що в деяких випадках підсилювання дає кращі результати, ніж бегінг, але має тенденцію до перенавчання на тренувальних даних. Найчастішою реалізацією підсилювання є алгоритм Шаблон:Нп, хоча є повідомлення, що деякі нові алгоритми дають кращі результати.
Усереднення баєсових параметрів
Усереднення баєсівських параметрів (Шаблон:Lang-en, BPA) — це техніка складання ансамблю, за якої намагаються апроксимувати баєсівський оптимальний класифікатор шляхом вибірок із простору гіпотез і комбінування їх за допомогою закону БаєсаШаблон:Sfn. На відміну від баєсівського оптимального класифікатора, баєсівську модель усереднення можна реалізувати практично. Гіпотези зазвичай відбирають за допомогою техніки Монте-Карло, такої як MCMC. Наприклад, для вибирання гіпотез, які представляють розподіл , можна використати Шаблон:Нп. Показано, що за деяких обставин, якщо гіпотези вибирають так і усереднюють згідно із законом Баєса, ця техніка має очікувану помилку, обмежену подвійною очікуваною помилкою баєсівського оптимального класифікатораШаблон:Sfn. Попри теоретичну коректність цієї техніки, в ранніх роботах на основі експериментальних даних висловлено припущення, що метод схильний до перенавчання і поводиться гірше, ніж прості техніки складання ансамблю, такі як беггінгШаблон:Sfn . Однак ці висновки ґрунтуються на недостатньому розумінні мети баєсівської моделі усереднення (БМУ) для комбінації моделейШаблон:Sfn. Крім того, теорія та практика БМУ має суттєві переваги. Недавні строгі доведення показують точність БМУ для вибору змінних та оцінення за багатовимірних умовШаблон:Sfn і дають емпіричне свідчення істотної ролі забезпечення розрідженості в БМУ в пом'якшенні перенавчанняШаблон:Sfn.
Комбінація баєсівських моделей
Комбінація баєсівських моделей (КБМ, Шаблон:Lang-en, BMC) — це алгоритмічне виправлення баєсівської моделі усереднення (БМУ,Шаблон:Lang-en, BMA). Замість вибору кожної моделі до ансамблю індивідуально, алгоритм відбирає із простору можливих ансамблів (з вагами моделей, вибраних випадково з розподілу Діріхле з однорідними параметрами). Ця модифікація дозволяє уникнути тенденції БМУ віддати повну вагу одній моделі. Хоча КБМ обчислювально дещо витратніший порівняно з БМУ, він дає істотно кращі результати. Результати КБМ, як показано, в середньому кращі, ніж БМУ та беггінгШаблон:Sfn.
Використання для обчислення ваги моделі закону Баєса неминуче тягне за собою обчислення ймовірності даних для кожної моделі. Зазвичай жодна з моделей в ансамблі не має такого ж розподілу, що й тренувальні дані, з яких їх згенеровано, так що всі члени коректно набувають значення, близького до нуля. Це добре працювало б, якби ансамбль був досить великим для вибірки з повного простору моделей, але таке трапляється рідко. Отже, кожен представник тренувального набору спонукає вагу ансамблю зрушуватися до моделі в ансамблі, яка найближча до розподілу тренувальних даних. Це суттєво зменшує необхідність надмірно складного методу вибору моделі.
Можливі ваги для ансамблю можна уявити як такі, що лежать на симплексі. На кожній вершині симплексу всі ваги задаються окремою моделлю ансамблю. БМУ збігається до вершини, яка ближче за розподілом до тренувальних даних. Для контрасту, КБМ збігається до точки, де цей розподіл проєктується в симплекс. Іншими словами, замість вибору однієї моделі, найближчої до розподілу, метод шукає комбінацію моделей, найближчу до розподілу.
Часто результати БМУ можна апроксимувати за допомогою перехресної перевірки для вибору моделі із відра моделей. Аналогічно, результати КБМ можна апроксимувати за допомогою перехресної перевірки для вибору кращої комбінації ансамблів із випадкової вибірки можливих ваг.
Відро моделей
«Відро моделей» (Шаблон:Lang-en) — це техніка збирання ансамблю, в якій використовують алгоритм вибору моделі для отримання кращої моделі для кожної задачі. Коли тестується лише одне завдання, відро моделей не може дати результату кращого, ніж найкраща модель у наборі, проте, в разі прогону для кількох задач, алгоритм зазвичай дає кращі результати, ніж будь-яка модель в наборі.
Найчастіше для вибору моделі використовують перехресну вибірку. Цей підхід описує такий псевдокод:
Для кожної моделі у відрі: Виконати c разів: (де 'c' - деяка константа) Випадково ділимо тренувальні дані на два набори: A і B. Тренуємо m за A Перевіряємо m за B Вибираємо модель, яка покаже найвищий середній результат
Перехресну вибірку можна описати як: «прожени всі на тренувальній множині і вибери ту, що працює краще»Шаблон:Sfn.
Виділення (Шаблон:Lang-en) є узагальненням перехресної вибірки. Метод залучає тренування іншої моделі навчання для вирішення, яка з моделей у відрі більше придатна для розв'язання задачі. Часто для виділення моделі використовують перцептрон. Його можна використати для вибору «найкращої» моделі, або для отримання лінійної ваги для передбачень кожної моделі у відрі.
Коли відро моделей використовують із великим набором задач, може бути бажаним уникнути тренування деяких моделей, які потребують тривалого тренування. Ландмарк-навчання — це метанавчальний підхід, який шукає розв'язок цієї задачі. Він залучає для тренування лише швидкі (але неточні) алгоритми, а потім їх ефективність використовують для визначення, який із повільних (але точних) алгоритмів вибрати як найкращийШаблон:Sfn.
Стогування
Стогування (іноді зване стековим узагальненням) залучає тренування навчального алгоритму для комбінування передбачень кількох інших алгоритмів. Спочатку всі інші алгоритми тренуються за допомогою допустимих даних, потім алгоритми комбінування тренуються з метою зробити кінцевий прогноз за допомогою всіх прогнозів інших алгоритмів як додаткового входу. Якщо використовується довільний алгоритм комбінування, то стогування може теоретично представляти будь-яку техніку створення ансамблів, описану в цій статті, хоча на практиці як засіб алгоритму комбінування часто використовують модель логістичної регресії.
Стогування зазвичай дає кращу ефективність, ніж будь-яка окрема з тренувальних моделейШаблон:Sfn. Його успішно використовують як у задачах навчання з учителем (регресіїШаблон:Sfn, класифікації та дистанційного навчанняШаблон:Sfn), так і задачах навчання без учителя (оцінення густини)Шаблон:Sfn. Також його використовують для оцінки помилки беггінгуШаблон:SfnШаблон:Sfn. Стверджувалося, що метод перевершив баєсівську модель усередненняШаблон:Sfn. Два призери Шаблон:Нп використовують змішування, яке можна вважати формою стогуванняШаблон:Sfn.
Реалізація у статистичних пакунках
- R: щонайменше три пакунки пропонують засоби для баєсівської моделі усередненняШаблон:Sfn, а саме, пакет BMS (скорочення від Bayesian Model Selection)[1], пакет BAS (скорочення від Bayesian Adaptive Sampling)[2] та пакет BMA[3]. Пакет H2O пропонує багато моделей машинного навчання, включно з моделлю складання ансамблю, яку можна тренувати за допомогою Spark.
- Python: Scikit-learn, пакунок для машинного навчання мовою Python, пропонує пакунки для ансамблевого навчання, зокрема, для беггінгу та методів усереднення.
- MATLAB: ансамблі класифікаторів реалізовано в наборі засобів Statistics та Machine Learning[4].
Застосування ансамблевого навчання
У недавні роки, внаслідок зростання обчислювальної потужності, що дозволяє тренування великих навчальних ансамблів за розумний час, кількість застосувань суттєво зрослаШаблон:Sfn. Деякі з застосувань класифікаторів ансамблів наведено нижче.
Дистанційне зондування Землі
Відображення рослинного покриву
Шаблон:Не перекладено є одним із головних застосувань Шаблон:Не перекладено з використанням дистанційного зондування та геопросторових даних для розпізнавання об'єктів, розташованих на поверхні цільових ділянок. Як правило, класи цільового матеріалу включають дороги, будівлі, річки, озера та рослинністьШаблон:Sfn. Запропоновано деякі різні підходи ансамблевого навчання, що базуються на штучних нейронних мережахШаблон:Sfn, Шаблон:Не перекладено (Шаблон:Lang-en, KPCA)Шаблон:Sfn, деревах рішень із підсилюваннямШаблон:Sfn, випадкових лісахШаблон:Sfn і автоматичному створення кількох систем класифікаторівШаблон:Sfn, для ефективного розпізнавання об'єктів рослинного покриву.
Виявлення змін
Шаблон:Не перекладено — це задача Шаблон:Не перекладено, яка полягає в ідентифікації місць, де рослинний покрив із змінився. Застосовується в таких галузях, как зростання міст, Шаблон:Не перекладено, землекористування та Шаблон:Не перекладеноШаблон:Sfn. Ранні застосування ансамблів класифікаторів до визначення змін розробляли за допомогою Шаблон:Не перекладено, баєсового середнього та оцінення апостеріорного максимумуШаблон:Sfn.
Захист комп'ютера
DoS-атака
Розподілена атака типу «відмова в обслуговуванні» є однією з найзагрозливіших кібератак, яка може трапитися з інтернет-провайдеромШаблон:Sfn. Комбінуючи виходи окремих класифікаторів ансамбль класифікаторів знижує загальну помилку детектування та відокремлення таких атак від законних Шаблон:НпШаблон:Sfn.
Виявлення шкідливих програм
Класифікація кодів шкідливих програм, таких як комп'ютерні віруси, мережеві хробаки, трояни, віруси-вимагачі та програми-шпигуни, за допомогою технік машинного навчання, навіяна задачею класифікування документівШаблон:Sfn. Системи ансамблевого навчання показали в цій галузі надійну ефективністьШаблон:SfnШаблон:Sfn.
Виявлення вторгнень
Система виявлення вторгнень відстежує комп'ютерну мережу чи комп'ютери для ідентифікації кодів вторгнення, подібно до процесу виявлення аномалій. Ансамблеве навчання успішно допомагає таким системам скорочувати загальну кількість помилокШаблон:SfnШаблон:Sfn.
Розпізнавання облич
Розпізнавання облич, яке нещодавно стало популярною областю досліджень у розпізнаванні образів, справляється з ідентифікацією або верифікацією особи за його/її цифровим зображеннямШаблон:Sfn.
Ієрархічні ансамблі, засновані на класифікаторі Габора Фішера та техніках попередньої обробки даних під час Шаблон:Не перекладено, належать до ранніх прикладів використання ансамблів у цій галузіШаблон:SfnШаблон:SfnШаблон:Sfn.
Розпізнавання емоцій
Тоді як розпізнавання мови переважно ґрунтується на глибокому навчанні, оскільки більшість індустріальних гравців у цій галузі, такі як Google, Microsoft і IBM, використовують його як основу технології розпізнавання мовлення, засноване на розмові розпізнавання емоцій може мати задовільні показники з ансамблевим навчаннямШаблон:SfnШаблон:Sfn.
Метод також успішно використовувався для розпізнаванні емоцій на обличчіШаблон:SfnШаблон:SfnШаблон:Sfn.
Виявлення шахрайства
Виявлення шахрайства включає ідентифікацію Шаблон:Не перекладено , такого як відмивання грошей, шахрайство з платіжними картками, та телекомунікаційного шахрайства. Виявлення шахрайства має широкі можливості для дослідження та застосування машинного навчання. Оскільки ансамблеве навчання покращує стійкість нормальної поведінки моделі, його запропоновано як ефективну техніку визначення таких випадків шахрайства та підозрілої активності в банківських операціях у системах кредитних картокШаблон:SfnШаблон:Sfn.
Ухвалення фінансових рішень
У процесі прийняття фінансових рішень ажливоют є очність передбачення комерційного краху, тому для передбачення фінансових криз та Шаблон:Не перекладено запропоновано різні ансамблі класифікаторівШаблон:Sfn. Також у задачі маніпуляюванняна основі торгів, де трейдери намагаються маніпулювати цінами акцій шляхом купівлі або продажу, ансамблюькласифікаторів пмаєпроаналізувати зміни в даних на ринку цінних паперів та визначити симптоми підозрілих маніпуляцій зі цінами акцій Шаблон:Sfn.
Медицина
Систему класифікаторів успішно застосовано в нейронауках, протеоміці та медичній діагностиці, зокрема, для розпізнавання Шаблон:Не перекладено (тобто, хвороби Альцгеймера або Шаблон:Не перекладено) заснованого на даних магнітно-резонансної томографіїШаблон:SfnШаблон:SfnШаблон:Sfn, або класифікація цитології шийки матки на основі мікроскопії[5][6].
Див. також
Примітки
Література
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:Книга
- Шаблон:Книга
- Шаблон:Книга
- Шаблон:Книга
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:Книга
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Стаття
- Шаблон:Книга
- Шаблон:КнигаШаблон:Бібліоінформація