Как ансамблевые методы превосходят всех составляющих?

16

Я немного запутался в изучении ансамбля. Короче говоря, он запускает k моделей и получает среднее значение этих k моделей. Как можно гарантировать, что среднее значение k моделей будет лучше, чем у любой другой модели? Я понимаю, что уклон "распределен" или "усреднен". Однако что, если в ансамбле две модели (т.е. k = 2), и одна из них хуже другой - разве ансамбль не будет хуже, чем лучшая модель?

user1691278
источник
эта тема меня интересует, но подняла больше вопросов, чем ответила. Можем ли мы все использовать немного больше чтобы более строго определить все эти слова, которые мы используем? LATЕИкс
Тейлор

Ответы:

23

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

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

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

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

Flounderer
источник
Разве вы не имеете в виду, что РФ использует большое количество деревьев для достижения большой дисперсии? Я ожидаю, что по мере того, как деревья будут расти больше, они будут охватывать большинство функций, и разница между моделями будет уменьшаться.
Итамар
Нет, @Flounderer - это правильно. Деревья решений называются нестабильными моделями. Если вы слегка измените данные, вы получите очень разные деревья. Случайные леса являются средством их стабилизации. Если вы тренируете две RF с немного разными выборками данных, они будут производить аналогичные модели.
Рикардо Круз
«Усреднение группы моделей линейной регрессии все еще дает вам линейную модель» <- что вы подразумеваете под усреднением здесь? Также о какой дисперсии вы говорите?
Тейлор
6

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

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

В машинном обучении обучение нескольких моделей обычно превосходит обучение одной модели. Это потому, что у вас есть больше параметров для настройки.

SmallChess
источник
2

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

Ансамбль также работает с людьми!

Наблюдалось, что усреднение человеческих предсказаний дает лучшие предсказания, чем любое отдельное предсказание. Это известно как мудрость толпы.

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

Об этом написано множество книг и экспериментов, и этот феномен все еще озадачивает исследователей.

При этом, как отметил @Flounderer, реальные выгоды получают от так называемых нестабильных моделей, таких как деревья решений, где каждое наблюдение обычно оказывает влияние на границу решения. Более стабильные, такие как SVM, не получают столько же, потому что повторная выборка обычно не сильно влияет на векторы поддержки.

Рикардо Круз
источник
1
Вот почему я всегда старался нанимать людей, которые не были такими же, как я. Хороший совет для построения гибких и эффективных команд.
Мэтью Друри
0

На самом деле вполне возможно, что отдельные модели будут лучше ансамблей.

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

southsinger
источник
0

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

Керем Т
источник