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

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

Обзор

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

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

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

Метод

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

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

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

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

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

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

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

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

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

Примечания

Литература

  • 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.