Ансамбли ML-моделей и стратегии их построения | OTUS

Курсы

Программирование
C# Developer. Professional Flutter Mobile Developer C# Developer. Basic C# Developer PHP Developer. Basic
-50%
Специализация PHP Developer Буткемп Java Python Developer. Professional Архитектура и шаблоны проектирования MS SQL Server Developer Highload Architect C++ Developer. Professional Java Developer. Basic JavaScript Developer. Professional JavaScript Developer. Basic HTML/CSS Kotlin Developer. Basic Android Developer. Basic Специализация Android-разработчик Team Lead Web-разработчик на Python Unity Game Developer. Professional PostgreSQL для администраторов баз данных и разработчиков Алгоритмы и структуры данных Разработчик программных роботов (RPA) на базе UiPath и PIX Kotlin Backend Developer React.js Developer Node.js Developer Разработчик IoT Подготовка к сертификации Oracle Java Programmer (OCAJP) Специализация C++ Developer Groovy Developer
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Ансамбли ML-моделей и стратегии их построения

В этой заметке поговорим о том, что такое ансамбли моделей в Machine learning. Заодно рассмотрим основные стратегии построения ансамблей.

8cef4984e977907113b3969a318894db_1-1801-c1c84e.jpg

Как известно, классические ML-модели совершенными не являются (впрочем, как и все в этом мире). К примеру, используя лишь одно дерево решений, вы вряд ли сможете решить сложную задачу. Однако если собрать много базовых моделей, то ситуация меняется, ведь из них уже может получиться что-то намного более интересное. Таким образом, ансамблем (Ensemble) можно назвать алгоритм, состоящий из нескольких ML-алгоритмов. Что касается процесса построения ансамбля, то его называют ансамблированием (ensemble learning).

Стратегии ансамблирования

1_zTgGBTQIMlASWm5QuS2UpA_1-1801-431178.jpeg

Существуют следующие стратегии построения ансамблей:

  1. Бэггинг. Основная идея -- упростить агрегирование предсказания, выдаваемого базовыми моделями (к примеру, усреднить либо взять наиболее популярное предсказание). Для получения качественного результата необходимо, чтобы каждая существующая модель была достаточно сильна. Распространенный пример бэггинга — это случайный лес, использующий глубокие и переобученные решающие деревья.
  2. Бустинг. Данная стратегия основывается на предположении, что базовые модели будут строиться последовательно, причем каждая следующая будет уточнять предсказание предыдущих (при этом всех). Как правило, для базовых берутся слабые модели, например, деревья небольшой глубины.
  3. Стекинг. Здесь уже предлагается применять предсказания базовых моделей в роли новых признаков, ну а поверх их обучать какую-либо еще ML-модель. По большему счету, "стэкать" можно, что угодно, будь то нейронные сети либо детерминированные пайплайны для извлечения фичей. На практике эта стратегия часто встречается в продакшене, хотя стоит добавить, что от стекинга стараются избавиться в пользу end-to-end обучения, предпочитая одну большую модель, которая будет обучаться не поэтапно, а целиком.

stacking_1-1801-1ebece.jpg

По материалам https://tproger.ru/.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться