Ансамбли ML-моделей и стратегии их построения
В этой заметке поговорим о том, что такое ансамбли моделей в Machine learning. Заодно рассмотрим основные стратегии построения ансамблей.
Как известно, классические ML-модели совершенными не являются (впрочем, как и все в этом мире). К примеру, используя лишь одно дерево решений, вы вряд ли сможете решить сложную задачу. Однако если собрать много базовых моделей, то ситуация меняется, ведь из них уже может получиться что-то намного более интересное. Таким образом, ансамблем (Ensemble) можно назвать алгоритм, состоящий из нескольких ML-алгоритмов. Что касается процесса построения ансамбля, то его называют ансамблированием (ensemble learning).
Стратегии ансамблирования
Существуют следующие стратегии построения ансамблей:
- Бэггинг. Основная идея -- упростить агрегирование предсказания, выдаваемого базовыми моделями (к примеру, усреднить либо взять наиболее популярное предсказание). Для получения качественного результата необходимо, чтобы каждая существующая модель была достаточно сильна. Распространенный пример бэггинга — это случайный лес, использующий глубокие и переобученные решающие деревья.
- Бустинг. Данная стратегия основывается на предположении, что базовые модели будут строиться последовательно, причем каждая следующая будет уточнять предсказание предыдущих (при этом всех). Как правило, для базовых берутся слабые модели, например, деревья небольшой глубины.
- Стекинг. Здесь уже предлагается применять предсказания базовых моделей в роли новых признаков, ну а поверх их обучать какую-либо еще ML-модель. По большему счету, "стэкать" можно, что угодно, будь то нейронные сети либо детерминированные пайплайны для извлечения фичей. На практике эта стратегия часто встречается в продакшене, хотя стоит добавить, что от стекинга стараются избавиться в пользу end-to-end обучения, предпочитая одну большую модель, которая будет обучаться не поэтапно, а целиком.
По материалам https://tproger.ru/.