Ансамблевое усреднение (машинное обучение)

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

Обзор

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

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

Это известно как компромисс между смещением и дисперсией (англ. bias–variance tradeoff). Ансамблевое усреднение формирует группу сетей, каждая из которых обладает низким смещением и высокой дисперсией, и объединяет их, чтобы получить сеть с низким смещением и низкой дисперсией. Таким образом, данный метод можно рассматривать как разрешение компромисса между смещением и дисперсией[4]. Идея объединения «экспертов» восходит к работам Пьера-Симона Лапласа[5].

Метод

Вышеуказанная теория приводит к очевидной стратегии: создать набор экспертов с низким смещением и высокой дисперсией и усреднить их. Как правило, это означает создание нескольких экспертов с различными параметрами; часто варьируются начальные синаптические веса нейронной сети, но могут меняться и другие параметры (скорость обучения, момент инерции и др.). Некоторые исследователи не рекомендуют варьировать регуляризацию или преждевременную остановку[3]. Основные этапы:

  1. Сгенерировать N экспертов с индивидуальными начальными параметрами (обычно они выбираются случайно из заданного распределения)
  2. Обучить каждого эксперта отдельно
  3. Объединить экспертов и усреднить их выходные значения.

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

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

где — набор весовых коэффициентов. Задача оптимизации весов решается с помощью нейронных сетей: можно обучить «мета-сеть», где каждая «нейрона» — это целая нейронная сеть, а синаптический вес — это искомый вес эксперта. Такой подход называется линейным объединением экспертов[2].

Большинство видов нейронных сетей можно рассматривать как частные случаи линейного объединения: стандартная нейронная сеть (с одним экспертом) — это линейная комбинация, где для всех j, кроме одного, где . Простое усреднение — это ситуация, когда все равны одной и той же константе, то есть обратной количеству экспертов[2].

Более новая разновидность ансамблевого усреднения — обучение с отрицательной корреляцией[6], предложенное Я. Лю и С. Яо. Этот метод широко применяется в эволюционных вычислениях.

Преимущества

  • Комитет, полученный в результате, почти всегда менее сложен, чем одиночная сеть той же производительности[7]
  • Такой комитет легче обучать на меньших наборах данных[1]
  • Часто достигается более высокая производительность по сравнению с любой отдельной моделью[2]
  • Риск переобучения снижается, поскольку число параметров (например, весов сети), которые нужно определить, меньше[1]

Примечания

  1. 1 2 3 Haykin, Simon. Neural networks: a comprehensive foundation. 2-е изд. Upper Saddle River N.J.: Prentice Hall, 1999.
  2. 1 2 3 4 Hashem, S. "Optimal linear combinations of neural networks." Neural Networks 10, no. 4 (1997): 599–614.
  3. 1 2 Naftaly, U., N. Intrator, and D. Horn. "Optimal ensemble averaging of neural networks." Network: Computation in Neural Systems 8, no. 3 (1997): 283–296.
  4. Geman, S., E. Bienenstock, and R. Doursat. "Neural networks and the bias/variance dilemma." Neural computation 4, no. 1 (1992): 1–58.
  5. Clemen, R. T. "Combining forecasts: A review and annotated bibliography." International Journal of Forecasting 5, no. 4 (1989): 559–583.
  6. Y. Liu и X. Yao, “Ensemble Learning via Negative Correlation”. Neural Networks [англ.]. 12 (10): 1399—1404. декабрь 1999. DOI:10.1016/S0893-6080(99)00073-8. Дата обращения 2024-06-08. Проверьте дату в |date= (справка на английском)
  7. Pearlmutter, B. A., and R. Rosenfeld. "Chaitin–Kolmogorov complexity and generalization in neural networks." In Proceedings of the 1990 conference on Advances in neural information processing systems 3, 931. Morgan Kaufmann Publishers Inc., 1990.

Литература

  • Perrone, M. P. Improving regression estimation: Averaging methods for variance reduction with extensions to general convex measure optimization. 1993.
  • Wolpert, D. H. Stacked generalization. Neural Networks, 1992, т. 5, № 2, с. 241–259, doi:10.1016/S0893-6080(05)80023-1.
  • Hashem, S. Optimal linear combinations of neural networks. Neural Networks, 1997, т. 10, № 4, с. 599–614, doi:10.1016/S0893-6080(96)00098-6.
  • Hashem, S. and B. Schmeiser. Approximating a function and its derivatives using MSE-optimal linear combinations of trained feedforward neural networks. Proceedings of the Joint Conference on Neural Networks, 1987, с. 617–620.