Ансамбли ансамблей ансамблей: руководство по составлению ансамблей.
Лучшая модель машинного обучения — это не одна модель.
Делиться

Как и в Формуле-1, машинное обучение — это сверхконкурентная игра, основанная на ансамблевом проектировании. Разница в незначительном улучшении времени круга или количестве поражений может измеряться миллионами долларов, которые зарабатывает команда, делая все необходимое, чтобы стать лучшей. При этом не только каждый отдельный компонент системы должен быть идеальным, но и вся система в целом должна быть безупречной.
Современное состояние дел
Исторически сложилось так, что модели градиентного бустинга были наиболее конкурентоспособными для задач прогнозирования табличных данных и временных рядов. Это ансамблевые методы, поскольку они объединяют результаты нескольких базовых оценок, чтобы получить окончательный ответ, который лучше, чем любое отдельное прогнозирование. Но ситуация начинает меняться. Предварительно обученные модели, такие как TabPFN для табличных данных и Chronos для временных рядов, начинают соответствовать или превосходить модели градиентного бустинга на определенных тестовых наборах данных. В некотором смысле это тоже ансамблевые методы, за исключением того, что вместо объединения множества прогнозов они представляют собой ансамбль данных, на которых они обучаются. Интуитивная основа этого подхода широко применима и может быть развита дальше.
В настоящее время сложилась ситуация, когда два совершенно разных подхода борются за первое место в рейтингах машинного обучения, а за ними следуют десятки других архитектур, каждая из которых имеет свои сильные и слабые стороны. Учитывая, что все они обучаются по-разному и на разных данных, их можно использовать вместе в дополнительном ансамбле, который сохранит большинство сильных сторон, устранив при этом большинство слабых. При правильном подходе это почти всегда приводит к повышению производительности и созданию более надежной модели.
Утверждения и предположения
Те же стратегии, которые можно использовать для определения того, какие данные важны для построения того или иного прогноза, можно также использовать для определения того, какие модели важны для построения того или иного прогноза. Подобно тому, как комбинация базовых оценок в моделях градиентного бустинга лучше, чем одна оценка, комбинация моделей лучше, чем одна.
В дальнейшем обсуждении будет исходить из предположения, что в процессе моделирования используются все корректные данные. Другими словами, вся релевантная информация известна в момент времени t (или во время вывода). В науке о данных это нетривиальное предположение, и ложное его выполнение в значительной степени опровергнет сделанные здесь утверждения. Как оказалось, большая часть работы в науке о данных заключается лишь в попытке удовлетворить это предположение с помощью данных в правильном формате. Также следует отметить, что ковариаты/признаки, предоставляемые моделям, не являются фиксированными, поскольку разные архитектуры лучше работают с разными типами данных и могут вообще не обрабатывать определенные типы данных (это будет особенно важным моментом для предварительно обученных гибридных моделей языка/числового представления, которые все еще находятся на ранней стадии разработки).
Многослойная укладка
Обобщенный подход, который может быть модифицирован для решения задач анализа временных рядов или табличной регрессии/классификации.
Слой 1
Существует множество способов создания ансамблевых методов, и наиболее целесообразно организовать эти шаги послойно. Первый слой — это набор базовых моделей (например, CatBoost, MLP, TabPFN и т. д.).
Для табличных задач обучение может проводиться с использованием бутстрап-агрегации, при которой новые обучающие наборы создаются путем выборки из базового обучающего набора с замещением. Затем отдельные модели обучаются на каждом новом наборе, и их прогнозы усредняются. Оптимизация гиперпараметров также может быть выполнена для каждой из этих моделей, хотя это гораздо более ресурсоемко с точки зрения вычислительных затрат, поскольку каждая модель для каждой выборки (или «набора») переобучается много раз. Для сокращения времени обучения можно использовать планировщик оптимизации гиперпараметров, такой как Optuna, чтобы прерывать запуск моделей, которые показывают плохие результаты, и быстрее находить локальный минимум с помощью статистических методов оптимизации. В качестве альтернативы, для каждой модели можно использовать несколько предустановок гиперпараметров, основанных на том, что обычно хорошо работает для этой конкретной модели на аналогичных наборах данных. Различные модели с разными предустановками могут быть либо усреднены для «представления» одной модели, либо зарегистрированы как разные версии модели и использованы на следующем уровне.
Для прогнозирования временных рядов традиционный метод бутстреппинга становится проблематичным. Поскольку необходимо соблюдать временное измерение, процесс не может случайным образом разбивать данные и перевыбирать их для создания новых обучающих наборов. Вместо этого следует использовать перекрестную проверку с помощью скользящего окна во времени. Для этого процесса создается новая модель для прогнозирования в валидационном окне с временными метками, строго следующими за метками в обучающем наборе. После обучения и оценки это валидационное окно добавляется к обучающему набору, и процесс повторяется для следующего временного среза (следующего валидационного окна). Это дает хорошее представление о том, насколько хорошо модель будет работать во времени, но модели обычно не объединяются в ансамбль на этом этапе. Поскольку недавние данные временных рядов часто являются наиболее информативными, для вывода используется только модель, обученная на последнем шаге. Однако внескладчатые прогнозы из предыдущих окон все еще могут быть использованы в следующем слое.
Слой 2
После обучения базовых моделей становятся доступны метрики оценки на обучающем и валидационном наборах данных. На всех промежуточных этапах тестовый набор данных следует полностью игнорировать. На втором уровне можно использовать новые стратегии, поскольку производительность модели известна, и (надеемся) уже сделаны надежные прогнозы.
Для табличных задач можно провести второй раунд обучения моделей с использованием метода бутстреппинга, добавив в качестве признаков предсказания моделей первого слоя. В случае, если базовая модель показывает плохие результаты на валидации, ее можно исключить из этого этапа.
В случае временных рядов та же стратегия невозможна, поскольку модели первого слоя никогда не делали прогнозов для всего обучающего набора данных. Это невозможно, так как не будет данных для обучения, чтобы получить прогнозы для начала обучающего набора, а модель, обученная на данных после этого периода, не может быть использована для получения прогнозов, необходимых для использования в качестве признаков в модели. Следует отметить, что если архитектура модели второго слоя может обрабатывать пропущенные значения или используется только подмножество обучающего набора данных, содержащее прогнозы, то на этом слое можно выполнить полное переобучение (на обучающих данных и прогнозах модели первого слоя). Хотя это возможно и может быть полезно, существуют более элегантные подходы.
Поскольку производительность модели известна, а прогнозы уже сделаны, комбинацию прогнозов базовой модели можно использовать в качестве новых предикторов. Существует несколько способов сделать это:
- Просто усредните все полученные значения.
- Присвойте каждому набору прогнозов вес, исходя из его эффективности при валидации, и усредните полученные значения.
- Возьмите линейную комбинацию всех прогнозов, которая минимизирует потери, используя метод наименьших квадратов.
- Создайте жадный ансамбль, начав с модели, демонстрирующей наилучшие результаты, и постепенно добавляя вес других моделей, пока их показатели не перестанут улучшаться.
- Если этого недостаточно, целую модель можно обучить исключительно на основе предсказаний базовых моделей (это действительно полезно только в том случае, если имеется достаточно большое количество предсказаний, выходящих за рамки основной выборки).
Обратите внимание, что окна валидации первого слоя становятся обучающим набором данных для второго слоя, поэтому в качестве валидационного набора данных для второго слоя используется только последний валидационный набор данных первого слоя. Вместо того чтобы пытаться определить, какой подход является наилучшим, второй слой должен попробовать все варианты, поскольку эти шаги являются вычислительно эффективными.
Слой 3
Пора добавить больше слоев… Табличный подход дал результаты прогнозов еще одного раунда моделей, построенных методом бэггинга, а подход с использованием временных рядов — результаты прогнозов различных стратегий ансамблирования. На третьем слое будет просто использована одна из стратегий ансамблирования, упомянутых в ансамблях временных рядов второго слоя, для создания окончательной метамодели. Именно эту модель следует использовать для оценки на тестовом наборе, хотя полезно убедиться, что она действительно превосходит базовые модели. Окончательная модель почти всегда должна побеждать и будет менее чувствительна к плохим прогнозам от одной модели, поскольку плохие прогнозы могут быть уменьшены по весу и, как правило, усреднены. И наоборот, если одна модель улавливает закономерность, которую не замечают другие, многослойный стек может научиться усиливать эти прогнозы. Единственные случаи, когда это неэффективно, — это если одна модель всегда лучше во всех отношениях, что довольно редко, или одна или несколько базовых моделей довольно плохи, в этом случае их следует полностью удалить.
Стоило ли всё это того?
Вероятно. Недостаток этого подхода заключается в том, что он требует обучения множества моделей вместо одной. Если наборы данных достаточно велики, время обучения и вывода может быстро стать ограничивающим фактором для некоторых приложений. Контраргументом является то, что процесс хорошо распараллеливается, и при необходимости вместо глубокого обучения можно использовать эффективные алгоритмы. LightGBM на порядок быстрее глубокого обучения и часто остается конкурентоспособным.
Философия ансамблевого обучения в машинном обучении получила широкое распространение и была полностью принята компанией AutoGluon. Фактически, это де-факто стандарт для их решения AutoML, и их команда внесла большой вклад как в сообщество открытого исходного кода, так и в передовые исследования в этой области. Поскольку область предварительного обучения для преобразователей табличных/временных рядов еще не полностью изучена, следует ожидать, что добавление разнообразия моделей в будущем еще больше укрепит эту стратегию.
Есть веские основания полагать, что эта философия продолжит побеждать, как это уже произошло во многих других областях:
- Демократия — это совокупность избранных должностных лиц, а избранные должностные лица представляют совокупность своих избирателей (по крайней мере, в теории). Хотя она и не идеальна, это все же лучшая из существующих систем.
- Медицинская диагностика улучшается благодаря наличию нескольких мнений. Объединение оценок нескольких рентгенологов, патологоанатомов или специалистов неизменно снижает количество ошибочных диагнозов. Каждый врач может выявить разные закономерности или нестандартные случаи, и их совместное суждение более надежно, чем любая индивидуальная оценка.
- Даже фондовые рынки представляют собой совокупность представлений о будущем. Хотя исторически информация, содержащаяся в движениях этих рынков, не имела прямого отношения к большинству людей, рынки прогнозов и платформы прогнозирования меняют эту ситуацию.
- В недавнем релизе Claude Code (февраль 2026 г.) Anthropic представила совместные «команды агентов», где несколько экземпляров Claude работают вместе над задачами, координируя свои действия с помощью общих списков задач и одноранговой связи. xAI использует аналогичный многоагентный подход в Grok 4 Heavy/Grok 4.20, где независимые агенты работают параллельно и «перекрестно проверяют» решения друг друга, прежде чем прийти к окончательному ответу.
Оказывается, командная работа — это правильный путь. Ансамбли ансамблей ансамблей неоднократно встречаются в лучших системах, созданных людьми, и область машинного обучения не является исключением. В эпоху интеллекта масштабирование этой идеи не будет лишним.
Коул Сассмейер. Все работы Коула Сассмейера.
Источник: towardsdatascience.com

Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.