Ансамблевое обучение

Материал из Википедии — свободной энциклопедии

Ансамблевое обучение — техника машинного обучения, использующая несколько обученных алгоритмов с целью получения лучшей предсказательной эффективности[англ.], чем можно было бы получить от каждого алгоритма по отдельности[1][2][3]. В отличие от статистического ансамбля в статистической механике, который обычно бесконечен, ансамбль моделей в машинном обучении состоит из конкретного конечного множества альтернативных моделей, но обычно позволяет существовать гораздо более гибким структурам.

Алгоритмы обучения с учителем наиболее часто описываются как решение задачи поиска в пространстве гипотез подходящей гипотезы — позволяющей делать хорошие предсказания для конкретной задачи. Но поиск хорошей гипотезы может оказаться трудной задачей. Ансамбль использует комбинацию нескольких гипотез в надежде, что она окажется лучше, чем гипотезы по отдельности. Термин «ансамбль» обычно резервируется для методов, которые генерируют несколько гипотез с помощью одного и того же базового учителя[что?]. Более широкое понятие системы множественных классификаторов также использует несколько гипотез, но сгенерированных не с помощью одного и того же учителя[источник не указан 765 дней].

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

случайные леса
), хотя медленные алгоритмы могут получить также преимущества от техники сборки в ансамбль.

По аналогии, техника сборки в ансамбль используется также и в сценариях обучения без учителя, например, в кластеризации на основе согласия[англ.] или в выявлении аномалий.

Теория сборки в ансамбль

Ансамбль сам по себе является алгоритмом обучения с учителем, поскольку он может быть тренирован и затем использован для осуществления предсказания. Тренированный ансамбль, поэтому, представляет одну гипотезу. Эта гипотеза, однако, не обязательно лежит в пространстве гипотез моделей, из которых она построена. Таким образом, ансамбли могут иметь большую гибкость в функциях, которые они могут представлять. Эта гибкость может, в теории, быстрее привести их к переобучению по тренировочным данным, чем могло быть в случае отдельной модели, но, на практике, некоторые техники сборки в ансамбль (особенно бэггинг) склонны уменьшить проблемы, связанные с переобучением на тренировочных данных.

Эмпирически ансамбли склонны давать результаты лучше, если имеется существенное отличие моделей[4][5]. Многие ансамбли поэтому стараются повысить различие в моделях, которые они комбинируют[6][7]. Хотя, возможно, неинтуитивные, более случайные алгоритмы (подобные случайным деревьям решений) могут быть использованы для получения более строгих ансамблей, чем продуманные алгоритмы (такие как деревья решений с уменьшением энтропии)[8]. Использование различных алгоритмов строгого обучения, однако, как было показано, более эффективно, чем использование техник, которые пытаются упростить модели с целью обеспечить большее различие[9].

Размер ансамбля

В то время как число классификаторов в ансамбле имеют большое влияние на точность предсказания, имеется лишь ограниченное число статей, изучающих эту проблему. Определение априори размера ансамбля и размеров скорости больших потоков данных делает этот фактор даже более критичным для онлайновых ансамблей классификаторов. Большинство статистических тестов были использованы для определения подходящего числа компонент. Относительно недавно теоретический фреймворк дал повод предположить, что имеется идеальное число классификаторов ансамбля, такое, что число классификаторов больше или меньше этого идеального числа приводит к ухудшению точности. Это называется «законом убывания отдачи в построении ансамбля». Этот теоретический фреймворк показывает, что использование числа независимых классификаторов, равного числу меток класса, даёт наибольшую точность[10][11].

Часто используемые типы ансамблей

Байесовский оптимальный классификатор

Байесовский оптимальный классификатор — это техника классификации. Он является ансамблем всех гипотез из пространства гипотез. В среднем ни один из ансамблей не может превосходить его[12]. Простой байесовский оптимальный классификатор — это версия, которая предполагает, что данные условно независимы от класса, и выполняет вычисления за более реальное время. Каждой гипотезе даётся голос, пропорциональный вероятности того, что тренировочные данные будут выбраны из системы, если гипотеза была бы верна. Для получения тренировочных данных конечного размера голос каждой гипотезы умножается на априорную вероятность такой гипотезы. Байесовский оптимальный классификатор можно выразить следующим равенством:

,

где предсказанный класс, является множеством всех возможных классов, является классом гипотез, относится к вероятности, а является тренировочными данными. Как ансамбль байесовский оптимальный классификатор представляет гипотезу, которая не обязательно принадлежит в . Гипотеза, представленная байесовским оптимальным классификатором, однако, является оптимальной гипотезой в пространстве ансамблей (пространство всех возможных ансамблей, состоящих только из гипотез пространства ).

Формулу можно переписать с помощью теоремы Байеса, которая гласит, что постериорная вероятность пропорциональна априорной вероятности:

откуда

Бэггинг

Бутстрэп-агрегирование, часто сокращаемое до бэггинг, даёт каждой модели в ансамбле одинаковый вес (голос). Чтобы поддерживать вариантность, бэггинг тренирует каждую модель в ансамбле с помощью случайно отобранного подмножества из тренировочного множества. Как пример, алгоритм «

случайного леса» комбинирует случайные деревья решений с бэггингом, чтобы получить высокую точность классификации[13]
.

Бустинг

Бустинг строит ансамбль последовательными приращениями путём тренировки каждой новой модели, чтобы выделить тренировочные экземпляры, которые предыдущие модели классифицировали ошибочно. В некоторых случаях бустинг, как было показано, даёт лучшие результаты, чем бэггинг, но имеет тенденцию к переобучению на тренировочных данных. Наиболее частой реализацией бустинга является алгоритм AdaBoost, хотя есть утверждения, что некоторые более новые алгоритмы дают лучшие результаты.

Усреднение байесовских параметров

Усреднение байесовских параметров (англ. Bayesian parameter averaging, BPA) — это техника сборки ансамбля, которая пытается аппроксимировать байесовский оптимальный классификатор путём семплинга из пространства гипотез и комбинирования их с помощью закона Байеса[14]. В отличие от байесовского оптимального классификатора, байесовская модель усреднения может быть практически реализована. Гипотезы обычно отбираются с помощью техники Монте-Карло, такой как MCMC[англ.]. Например, может быть использовано семплирование по Гиббсу для выборки гипотез, которые представляют распределение . Было показано, что при некоторых обстоятельствах, если гипотезы выбираются таким образом и усредняются согласно закону Байеса, эта техника имеет ожидаемую ошибку, которая ограничена удвоенной ожидаемой ошибки байесовского оптимального классификатора[15]. Несмотря на теоретическую корректность этой техники, в ранних работах на основе экспериментальных данных было высказано предположение, что метод склонен к переобучению и ведёт себя хуже, чем простые техники сборки ансамбля, такие как бэггинг[16]. Однако эти заключения были основаны на недопонимании цели байесовской модели усреднения для комбинации моделей[17]. Кроме того, есть существенные преимущества в теории и практике БМУ. Недавние строгие доказательства показывают точность БМУ для выбора переменных и оценке при многомерных условиях[18] и дают эмпирическое свидетельство существенной роли обеспечения разреженности в БМУ в смягчении переобучения[19].

Комбинация байесовских моделей

Комбинация байесовских моделей (КБМ, англ. Bayesian model combination, BMC) — это алгоритмическое исправление байесовской модели усреднения (БМУ, англ. Bayesian model averaging, BMA). Вместо выбора каждой модели в ансамбль индивидуально, алгоритм отбирает из пространства возможных ансамблей (с весами моделей, выбранных случайно из распределения Дирихле с однородными параметрами). Эта модификация позволяет избежать тенденцию БМУ отдать полный вес одной модели. Хотя КБМ вычислительно несколько более расточителен по сравнению с БМУ, он даёт существенно лучшие результаты. Результаты КБМ, как было показано, в среднем лучше, чем БМУ и бэггинг[20].

Использование закона Байеса для вычисления весов модели неизбежно влечёт вычисление вероятности данных для каждой модели. Обычно ни одна из моделей в ансамбле не имеет точно такое же распределение, что и тренировочные данные, из которых они сгенерированы, так что все члены корректно получают значение, близкое к нулю. Это хорошо бы работало, если бы ансамбль был достаточно большим для выборки из полного пространства моделей, но такое редко случается возможным. Следовательно, каждый представитель тренировочного набора вызывает вес ансамбля сдвигаться к модели в ансамбле, которая наиболее близка к распределению тренировочных данных. Это существенно уменьшает необходимость чрезмерно сложного метода выбора модели.

Возможные веса для ансамбля можно представить как лежащие на симплексе. На каждой вершине симплекса все веса задаются отдельной моделью ансамбля. БМУ сходится к вершине, которая ближе по распределению с тренировочными данными. Для контраста, КБМ сходится к точке, где это распределение проектируется в симплекс. Другими словами, вместо выбора одной модели, которая ближе всего к распределению, метод ищет комбинацию моделей, наиболее близкой к распределению.

Результаты БМУ можно часто аппроксимировать с помощью перекрёстной проверки для выбора модели из ведра моделей. Аналогично, результаты КБМ можно аппроксимировать с помощью перекрёстной проверки для выбора лучшей комбинации ансамблей из случайной выборки возможных весов.

Ведро моделей

«Ведро моделей» (англ. bucket of models) является техникой сбора ансамбля, в которой используется алгоритм выбора модели для получения лучшей модели для каждой задачи. Когда тестируется только одна задача, ведро моделей не может дать результат лучше, чем лучшая модель в наборе, однако в случае прогона для нескольких задач, алгоритм обычно даёт более хорошие результаты, чем любая модель в наборе.

Наиболее частый подход, используемый для выбора модели,— это перекрёстная выборка. Он описывается следующим псевдокодом:

Для каждой модели в ведре:
  Выполнить c раз: (где 'c' — некоторая константа)
    Случайным образом делим тренировочные данные на два набора: A и B.
    Тренируем m по A
    Проверяем m по B
Выбираем модель, которая покажет высший средний результат

Перекрёстная выборка может быть описана как: «прогони все на тренировочном множестве и выбери тот, что работает лучше»[21].

Выделение (англ. Gating) является обобщением перекрёстной выборки. Метод вовлекает тренировку другой модели обучения для решения, какая из моделей в ведре больше подходит для решения задачи. Часто для выделения модели используется перцептрон. Он может быть использован для выбора «лучшей» модели, или он может быть использован для получения линейного веса для предсказаний из каждой модели в ведре.

Когда ведро моделей используется с большим набором задач, может быть желательным избежать тренировки некоторых моделей, которые требуют долгого времени тренировки. Ландмарк-обучение — это метаобучающий подход, который ищет решение этой задачи. Он вовлекает для тренировки только быстрые (но неточные) алгоритмы, а затем используется эффективность этих алгоритмов для определения, какой из медленных (но точных) алгоритмов выбрать как лучший[22].

Стогование

Стогование (иногда называемое стековое обобщение) вовлекает тренировку обучающего алгоритма для комбинирования предсказаний нескольких других обучающих алгоритмов. Сначала все другие алгоритмы тренируются с помощью допустимых данных, затем алгоритмы комбинирования тренируются с целью сделать конечное предсказание с помощью всех предсказаний других алгоритмов как дополнительный вход. Если используется произвольный алгоритм комбинирования, то стогование может теоретически представлять любую технику создания ансамблей, описанную в этой статье, хотя, на практике, модель логистической регрессии часто используется в качестве средства алгоритма комбинирования.

Стогование обычно даёт лучшую эффективность, чем любая отдельная из тренировочных моделей[23]. Оно было успешно использовано как в задачах обучения с учителем (регрессии[24], классификации и дистанционного обучения[25]), так и задачах обучения без учителя (оценка плотности)[26]. Он использовался также для оценки ошибки бэггинга[3][27]. Утверждалось, что метод превзошёл байесовскую модель усреднения[28]. Два призёра конкурса Netflix используют смешивание, которое можно считать формой стогования[29].

Реализация в статистических пакетах

  • R: по мешьшей мере три пакета предлагают средства для байесовской модели усреднения[30], включая пакет BMS (сокращение от Bayesian Model Selection)[31], пакет BAS (сокращение от Bayesian Adaptive Sampling)[32] и пакет BMA[33]. Пакет H2O предлагает большое число моделей обучении машин, включая модель сборки ансамбля, которая может быть тренирована с помощью Spark.
  • Python: Scikit-learn, пакет для машинного обучения на языке Python, предлагает пакеты для обучения ансамблей, включая пакеты для бэггинга и методов усреднения.
  • MATLAB: ансамбли классификаторов реализованы в наборе средств Statistics и Machine Learning[34].

Приложения обучения с помощью ансамблей

В недавние годы, вследствие растущей вычислительной мощности, позволяющей тренировку больших тренировочных обучающих ансамблей в разумное время, число приложений росло всё быстрее[35]. Некоторые из приложений ансамблей классификаторов приведены ниже.

Дистанционное зондирование Земли

Отражение растительного покрова

растительного покрова
.

Обнаружение изменений

. Ранние приложения ансамблей классификаторов в определении изменений разрабатывались с помощью голосования большинством голосов[англ.], байесовского среднего[англ.] и оценки апостериорного максимума[42].

Защита компьютера

DoS-атака

Распределенная атака типа отказа в обслуживании является одной и самых угрожающих кибератак, которая может случаться с интернет-провайдером[35]. Путём комбинирования выхода отдельных классификаторов ансамбль классификаторов снижает общую ошибку детектирования и отделения таких атак от законных флешмобов[43].

Обнаружение вредоносных программ

Классификация кодов

вирусы-вымогатели и программы-шпионы, с помощью техник машинного обучения, навеяна задачей категоризации документов[44]. Системы обучения ансамблей показали надёжную эффективность в этой области[45][46]
.

Обнаружение вторжения

Система обнаружения вторжений отслеживает для идентификации кодов вторжения компьютерную сеть или компьютеры подобно процессу выявления аномалий. Обучение ансамблей успешно помогает таким системам сокращать общее число ошибок[47][48].

Распознавание лиц

Распознавание лиц, которое недавно стало наиболее популярной областью исследований в распознавания образов, справляется с идентификацией или верификацией личности по его/её цифровому изображению[49].

Иерархические ансамбли, основанные на классификаторе Габора Фишера и техниках предварительной обработки данных при анализе независимых компонентов[англ.], являются некоторыми ранними ансамблями, используемыми в этой области[50][51][52].

Распознавание эмоций

В то время как распознавание речи главным образом основывается на глубоком обучении, поскольку большинство индустриальных игроков в этой области, такие как Google, Microsoft и IBM, используют его в качестве основы технологии распознавания речи, основанное на разговоре распознавание эмоций[англ.] может иметь удовлетворительные показатели с обучением ансамбля[53][54].

Метод также успешно использовался в распознавании эмоций на лице[55][56][57].

Выявление мошенничества

Выявление мошенничества имеет дело с идентификацией банковского мошенничества[англ.], такого как отмывание денег, мошенничество с платежными картами и телекоммуникационное мошенничество. Выявление мошенничества имеет широкие возможности для исследования и применения машинного обучения. Поскольку обучение ансамбля улучшает устойчивость нормального поведения моделирования, оно было предложено в качестве эффективной техники определения таких случаев мошенничества и подозрительной активности в банковских операциях в системах кредитных карт[58][59].

Принятие финансовых решений

Точность предсказания коммерческого краха является важнейшим вопросом при принятии финансовых решений, поэтому были предложены различные ансамбли классификаторов для предсказания

ценами акций[60]
.

Медицина

Система классификаторов успешно применена в нейронауках, протеомике и медицинской диагностике, таких как распознавание нейрокогнитивных расстройств[англ.] (то есть болезни Альцгеймера или миотонической дистрофии[англ.]) основанного на данных магнитно-резонансной томографии[61][62][63] или классификация цитологии шейки матки на основе микроскопии[64][65].

См. также

Примечания

  1. Opitz, Maclin, 1999, с. 169—198.
  2. Polikar, 2006, с. 21—45.
  3. 1 2 Rokach, 2010, с. 1—39.
  4. Kuncheva, Whitaker, 2003, с. 181—207.
  5. Sollich, Krogh, 1996, с. 190—196, 1996.
  6. Brown, Wyatt, Harris, Yao, 2005, с. 5—20.
  7. Adeva, Cerviño, Calvo, 2005.
  8. Ho, 1995, с. 278—282.
  9. Gashler, Giraud-Carrier, Martinez, 2008, с. 900—905.
  10. Bonab, Can, 2016, с. 2053.
  11. Bonab, Can, 2017.
  12. Mitchell, 1997, с. 175.
  13. Breiman, 1996, с. 123—140.
  14. Hoeting, Madigan, Raftery, Volinsky, 1999, с. 382–401.
  15. Haussler, Kearns, Schapire, 1994, с. 83–113.
  16. Domingos, 2000, с. 223–-230.
  17. Minka, 2002.
  18. Castillo, Schmidt-Hieber, van der Vaart, 2015, с. 1986–2018.
  19. Hernández-Lobato, Hernández-Lobato, Dupont, 2013, с. 1891–1945.
  20. Monteith, Carroll, Seppi, Martinez, 2011, с. 2657—2663.
  21. Dzeroski, Zenko, 2004, с. 255—273.
  22. Bensusan, Giraud-Carrier, 2000, с. 325—330.
  23. Wolpert, 1992, с. 241—259.
  24. Breiman, 1996.
  25. Ozay, Vural, 2013.
  26. Smyth, Wolpert, 1999, с. 59—83.
  27. Wolpert, Macready, 1999, с. 41—55.
  28. Clarke, 2003, с. 683—712.
  29. Sill, Takacs, Mackey, Lin, 2009.
  30. Amini, Parmeter, 2011, с. 253–287.
  31. BMS: Bayesian Model Averaging Library. The Comprehensive R Archive Network. Дата обращения: 9 сентября 2016. Архивировано 28 ноября 2020 года.
  32. BAS: Bayesian Model Averaging using Bayesian Adaptive Sampling. The Comprehensive R Archive Network. Дата обращения: 9 сентября 2016. Архивировано 7 октября 2020 года.
  33. BMA: Bayesian Model Averaging. The Comprehensive R Archive Network. Дата обращения: 9 сентября 2016. Архивировано 7 мая 2021 года.
  34. Classification Ensembles. MATLAB & Simulink. Дата обращения: 8 июня 2017. Архивировано 1 декабря 2020 года.
  35. 1 2 Woźniak, Graña, Corchado, 2014, с. 3–17.
  36. 1 2 Rodriguez-Galiano, Ghimire, Rogan и др., 2012, с. 93–104.
  37. Giacinto, Roli, 2001, с. 699–707.
  38. Xia, Yokoya, Iwasaki, 2017, с. 6185—6189.
  39. Mochizuki, Murakami, 2012, с. 126—133.
  40. Giacinto, Roli, Fumera, 2000, с. 160—163.
  41. Du, Liu, Xia, Zhao, 2013, с. 19–27.
  42. Bruzzone, Cossu, Vernazza, 2002, с. 289–297.
  43. Raj Kumar, Selvakumar, 2011, с. 1328–1341.
  44. Shabtai, Moskovitch, Elovici, Glezer, 2009, с. 16–29.
  45. Zhang, Yin, Hao, Zhang, Wang, 2007, с. 468—477.
  46. Menahem, Shabtai, Rokach, Elovici, 2009, с. 1483–1494.
  47. Locasto, Wang, Keromytis, Salvatore, 2005, с. 82—101.
  48. Giacinto, Perdisci, Del Rio, Roli, 2008, с. 69–82.
  49. Mu, Lu, Watta, Hassoun, 2009.
  50. Yu, Shan, Chen, Gao, 2006, с. 91—96.
  51. Yu, Shan, Chen, Gao, 2006, с. 528—531.
  52. Liu, Lin, Chen, 2008, с. 144—148.
  53. Rieger, Muraleedharan, Ramachandran, 2014, с. 589—593.
  54. Krajewski, Batliner, Kessel, 2010, с. 3716—3719.
  55. Rani, Muneeswaran, 2016, с. 10017–10040.
  56. Rani, Muneeswaran, 2016, с. 1655020.
  57. Rani, Muneeswaran, 2018.
  58. Louzada, Ara, 2012, с. 11583–11592.
  59. Sundarkumar, Ravi, 2015, с. 368–377.
  60. 1 2 Kim, Sohn, 2012, с. 8986–8992.
  61. Savio, García-Sebastián, Chyzyk и др., 2011, с. 600–610.
  62. Ayerdi, Savio, Graña, 2013, с. 122—130.
  63. Gu, Ding, Zhang, 2015, с. 110–118.
  64. 31 августа 2021 года.
  65. 31 августа 2021 года.

Литература