Взвешенное голосование

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: {{well|Статья написана с использованием LLM '''OpenAI GPT-5''' и проверена участником ~~~~}} '''Вариационный байесов...)
 
Строка 1: Строка 1:
{{well|Статья написана с использованием LLM '''OpenAI GPT-5''' и проверена участником [[Участник:Platon Usaсhev|Platon Usaсhev]] 11:20, 16 июня 2026 (MSD)}}
{{well|Статья написана с использованием LLM '''OpenAI GPT-5''' и проверена участником [[Участник:Platon Usaсhev|Platon Usaсhev]] 11:20, 16 июня 2026 (MSD)}}
-
'''Вариационный байесовский вывод''' (англ. ''variational Bayesian inference'', ''variational inference'') класс методов приближённого [[Байесовский вывод|байесовского вывода]], в которых вычисление апостериорного распределения заменяется задачей оптимизации. Метод особенно полезен в вероятностных моделях с латентными переменными, где точный вывод требует суммирования или интегрирования по большому числу скрытых состояний.
+
'''Взвешенное голосование''' — способ построения [[алгоритмическая композиция|композиции алгоритмов]], при котором решения нескольких базовых моделей объединяются с разными весами. Вес отражает доверие к модели, её качество, область применимости или вклад в оптимизируемый критерий. Взвешенное голосование применяется в задачах [[классификация|классификации]], регрессии, ранжирования и вероятностного прогнозирования.
-
Пусть наблюдения обозначены через <tex>x</tex>, латентные переменные и параметры — через <tex>z</tex>. В байесовской модели интерес представляет апостериорное распределение
+
В простом голосовании все базовые алгоритмы имеют одинаковый вклад. Во взвешенном голосовании сильные, более надёжные или более уместные для данной задачи модели получают больший вес. Поэтому метод является базовой схемой для многих ансамблевых подходов, включая [[бустинг]], комитеты моделей, усреднение вероятностных классификаторов и некоторые варианты [[стекинг|стекинга]].
-
::<tex>p(z|x)=\frac{p(x,z)}{p(x)}.</tex>
+
== Бинарная классификация ==
-
::<tex>p(x)=\int p(x,z)dz.</tex>
+
Пусть дана композиция из <tex>T</tex> базовых классификаторов
-
Главная трудность обычно связана не с числителем <tex>p(x,z)</tex>, который задаётся моделью, а с нормировочной константой <tex>p(x)</tex>, называемой также правдоподобием данных или маргинальным правдоподобием. В сложных моделях этот интеграл не вычисляется аналитически. Вариационный подход строит более простое распределение <tex>q(z)</tex> из заранее выбранного семейства <tex>Q</tex> и подбирает его так, чтобы оно было близко к истинному <tex>p(z|x)</tex>.
+
::<tex>b_t:X\to\{-1,+1\}, t=1,\ldots,T,</tex>
-
== Основная идея ==
+
и неотрицательные веса <tex>\alpha_t\geq 0</tex>. Взвешенное голосование задаёт классификатор
-
Наиболее распространённая постановка минимизирует дивергенцию Кульбака — Лейблера
+
::<tex>a(x)= sign \sum_{t=1}^{T}\alpha_t b_t(x).</tex>
-
::<tex>D_{KL}(q(z),p(z|x))=\int q(z)\log\frac{q(z)}{p(z|x)}dz.</tex>
+
Если сумма положительных голосов с учётом весов превышает сумму отрицательных, объект относится к классу <tex>+1</tex>; иначе — к классу <tex>-1</tex>. При <tex>\alpha_1=\cdots=\alpha_T</tex> получается обычное голосование большинством.
-
Так как истинное апостериорное распределение содержит неизвестное <tex>p(x)</tex>, напрямую минимизировать эту величину нельзя. Вместо этого максимизируют нижнюю оценку логарифма маргинального правдоподобия, или ELBO (англ. ''evidence lower bound''):
+
Величина
-
::<tex>L(q)=E_q(\log p(x,z))-E_q(\log q(z)).</tex>
+
::<tex>M(x,y)= y\sum_{t=1}^{T}\alpha_t b_t(x)</tex>
-
Связь между ELBO и апостериорным распределением выражается тождеством
+
называется отступом композиции на объекте <tex>(x,y)</tex>. Положительный отступ означает правильную классификацию, отрицательный — ошибку. Чем больше отступ, тем увереннее композиция. Во многих теориях ансамблей качество связывают не только с числом ошибок, но и с распределением отступов на обучающей выборке.
-
::<tex>\log p(x)=L(q)+D_{KL}(q(z),p(z|x)).</tex>
+
== Многоклассовая классификация ==
-
Поскольку дивергенция Кульбака — Лейблера неотрицательна, <tex>L(q)</tex> действительно является нижней оценкой <tex>\log p(x)</tex>. Максимизация ELBO эквивалентна минимизации <tex>D_{KL}(q(z),p(z|x))</tex> по выбранному семейству распределений. Если семейство <tex>Q</tex> слишком бедное, оптимальное <tex>q</tex> всё равно может заметно отличаться от истинного апостериорного распределения; если слишком богатое, оптимизация становится трудной.
+
Для множества классов <tex>Y=\{1,\ldots,K\}</tex> естественная форма взвешенного голосования:
-
== Факторизованные приближения ==
+
::<tex>a(x)= \arg\max_{y\in Y} \sum_{t=1}^{T}\alpha_t [b_t(x)=y],</tex>
-
Классический вариант вариационного вывода использует среднеполевое приближение (англ. ''mean-field approximation''):
+
где <tex>[b_t(x)=y]</tex> равно единице, если <tex>t</tex>-й классификатор выбрал класс <tex>y</tex>, и нулю иначе. Побеждает класс с максимальной суммой весов поддержавших его моделей.
-
::<tex>q(z)=\prod_{j=1}^m q_j(z_j).</tex>
+
Если базовые алгоритмы выдают оценки вероятностей <tex>p_t(y| x)</tex>, то часто используют взвешенное усреднение вероятностей:
-
Предположение означает не то, что истинные латентные переменные независимы, а то, что независимость вводится как вычислительное приближение. Для такого семейства часто можно получить координатные обновления:
+
::<tex>p(y| x)= \frac{\sum_{t=1}^{T}\alpha_t p_t(y| x)} {\sum_{t=1}^{T}\alpha_t}, a(x)=\arg\max_{y\in Y}p(y| x).</tex>
-
::<tex>\log q_j^*(z_j)=E_{q_{-j}}(\log p(x,z))+C.</tex>
+
Такой вариант сохраняет больше информации, чем голосование по готовым меткам классов. Однако он требует калиброванных вероятностей: если один классификатор систематически выдаёт слишком уверенные оценки, он может доминировать даже при умеренном весе.
-
где математическое ожидание берётся по всем вариационным множителям, кроме <tex>q_j</tex>. Эта формула лежит в основе координатного вариационного вывода для моделей экспоненциального семейства: поочерёдно обновляются распределения отдельных блоков латентных переменных, а значение ELBO растёт до локального максимума.
+
== Регрессия и прогнозирование ==
-
По структуре такие обновления напоминают [[EM-алгоритм]]: в обоих случаях есть чередование шагов, связанных с латентными переменными и параметрами модели. Однако EM обычно ищет точечную оценку параметров, тогда как вариационный байесовский вывод поддерживает приближённое распределение неопределённости по латентным переменным и, при байесовской постановке, по параметрам.
+
В задачах регрессии аналогом голосования является взвешенное среднее прогнозов:
-
== Сравнение с методами Монте-Карло ==
+
::<tex>a(x)= \frac{\sum_{t=1}^{T}\alpha_t b_t(x)} {\sum_{t=1}^{T}\alpha_t}.</tex>
-
Ближайшая альтернатива вариационному выводу — методы [[Метод Монте-Карло по схеме марковской цепи|MCMC]], например [[Сэмплирование Гиббса|сэмплирование Гиббса]]. Они строят выборку из апостериорного распределения и при достаточно длинной цепи могут давать асимптотически точные оценки. Их слабое место — высокая вычислительная цена, трудности диагностики сходимости и плохое перемешивание цепей в многомодальных распределениях.
+
Если веса нормированы так, что <tex>\textstyle\sum_t\alpha_t=1</tex>, формула принимает вид выпуклой комбинации. Временные ряды, вероятностные прогнозы и эконометрические модели часто объединяются именно так: разные модели хорошо работают в разных режимах, а усреднение снижает дисперсию прогноза.
-
Вариационный вывод, напротив, обычно быстрее и лучше масштабируется на большие выборки, потому что сводится к детерминированной или стохастической оптимизации. Цена этой скорости — систематическая ошибка приближения. Минимизация <tex>D_{KL}(q,p)</tex> часто приводит к тому, что <tex>q</tex> концентрируется на одной области высокой плотности и занижает дисперсии. Поэтому вариационные апостериорные интервалы не следует автоматически интерпретировать как точные байесовские доверительные области.
+
Для вероятностных моделей возможны две близкие операции:
-
== Стохастический и амортизованный вывод ==
+
* усреднение предсказательных распределений:
 +
::<tex>p(y| x)=\sum_t \alpha_t p_t(y| x);</tex>
 +
* усреднение параметров или логитов моделей.
-
Для больших наборов данных используют стохастический вариационный вывод. Если логарифм совместной плотности раскладывается по объектам выборки, ELBO можно оптимизировать по мини-батчам, получая шумные, но дешёвые оценки градиента. В моделях с условно-сопряжённой структурой такие методы часто сочетают с натуральным градиентом, что ускоряет обучение тематических моделей, байесовских смесей и вероятностной матричной факторизации.
+
Эти операции не эквивалентны. Усреднение распределений обычно безопаснее с точки зрения вероятностной интерпретации, тогда как усреднение параметров требует, чтобы модели имели одинаковую структуру и совместимые параметры.
-
В глубоких генеративных моделях распространён амортизованный вариационный вывод. Вместо того чтобы хранить отдельные вариационные параметры для каждого объекта, вводят параметризованное отображение
+
== Выбор весов ==
-
::<tex>q_\phi(z|x)</tex>
+
Способ выбора весов определяет поведение композиции. Наиболее распространённые варианты:
-
обычно реализованное нейронной сетью. Оно по наблюдению <tex>x</tex> сразу выдаёт параметры приближённого апостериорного распределения. Такая идея используется в [[Вариационный автокодировщик|вариационных автокодировщиках]]: генеративная сеть задаёт <tex>p_\theta(x|z)</tex>, а сеть вывода приближает <tex>p_\theta(z|x)</tex>. Чтобы оптимизировать ELBO градиентными методами, часто применяют репараметризацию латентной переменной, например <tex>z=\mu_\phi(x)+\sigma_\phi(x)\epsilon</tex>, где <tex>\epsilon</tex> имеет фиксированное стандартное распределение.
+
* равные веса: простое большинство или обычное среднее;
 +
* веса по качеству на контрольной выборке;
 +
* веса, найденные минимизацией функции потерь;
 +
* веса, задаваемые экспертно;
 +
* веса, зависящие от объекта <tex>x</tex>;
 +
* байесовские веса, пропорциональные апостериорной вероятности модели.
-
== Практическое использование ==
+
При оптимизации по выборке можно решать задачу
-
Вариационный байесовский вывод применяют в [[Тематическое моделирование|тематическом моделировании]], байесовских смесях распределений, скрытых марковских моделях, вероятностных графовых моделях, рекомендательных системах и глубоких генеративных моделях. В [[Латентное размещение Дирихле|латентном размещении Дирихле]] вариационный вывод стал одним из стандартных способов оценивать распределения тем в документах и распределения слов в темах.
+
::<tex>\min_{\alpha} \sum_{i=1}^{m} L(y_i,\sum_{t=1}^{T}\alpha_t b_t(x_i)) +\lambda\Omega(\alpha),</tex>
-
На практике качество вариационного вывода зависит от нескольких решений:
+
где <tex>L</tex> — функция потерь, <tex>\Omega</tex> — регуляризатор весов. Неотрицательность и нормировка весов делают композицию более устойчивой и интерпретируемой. Разрешение отрицательных весов превращает ансамбль в более общую линейную комбинацию моделей, что может повысить качество, но усложняет объяснение как голосования.
 +
 
 +
В [[AdaBoost]] веса базовых классификаторов выбираются последовательно. Для бинарной классификации при ошибке <tex>\epsilon_t</tex> на взвешенной выборке классическая формула имеет вид
 +
 
 +
::<tex>\alpha_t= \frac{1}{2} \ln \frac{1-\epsilon_t}{\epsilon_t}.</tex>
 +
 
 +
Чем меньше ошибка базового классификатора относительно текущего распределения весов объектов, тем больше его вклад в итоговую композицию. При <tex>\epsilon_t=1/2</tex> вес равен нулю: такой классификатор не лучше случайного угадывания.
 +
 
 +
== Объектно-зависимые веса ==
 +
 
 +
В обычном взвешенном голосовании <tex>\alpha_t</tex> не зависит от объекта. Более гибкий вариант использует веса
 +
 
 +
::<tex>\alpha_t=\alpha_t(x).</tex>
 +
 
 +
Тогда композиция принимает вид
 +
 
 +
::<tex>a(x)= sign \sum_{t=1}^{T}\alpha_t(x)b_t(x).</tex>
 +
 
 +
Такая схема учитывает, что разные модели могут быть сильны в разных областях пространства признаков. Она близка к [[смесь экспертов|смеси экспертов]], где специальная шлюзовая функция выбирает веса экспертов для каждого объекта. Отличие состоит в том, что в смеси экспертов объектно-зависимые веса обычно являются частью вероятностной модели и обучаются совместно с экспертами.
 +
 
 +
== Почему ансамбль может улучшать качество ==
 +
 
 +
Взвешенное голосование эффективно не только потому, что отдельные модели сильны. Важна также их разнообразность. Если все базовые классификаторы делают одинаковые ошибки, голосование не исправит ситуацию. Если же ошибки слабо коррелированы, композиция может быть существенно точнее каждого отдельного алгоритма.
 +
 
 +
Для простого большинства независимых бинарных классификаторов с одинаковой вероятностью ошибки <tex>p<1/2</tex> вероятность ошибки ансамбля убывает с ростом числа классификаторов:
 +
 
 +
::<tex>P_{err}= \sum_{j=\lceil (T+1)/2\rceil}^{T} {T\choose j}p^j(1-p)^{T-j}.</tex>
 +
 
 +
Это идеализированная оценка: на практике ошибки моделей зависимы. Тем не менее она показывает общий принцип: ансамбль выигрывает, когда базовые модели лучше случайных и ошибаются не одинаково.
 +
 
 +
Взвешивание добавляет ещё один механизм: модели с меньшей ошибкой или большей специализацией получают больший вклад. Но чрезмерно большие веса могут ухудшить устойчивость, если качество модели было переоценено на малой контрольной выборке.
 +
 
 +
== Связь с другими методами ==
 +
 
 +
Взвешенное голосование является общей формой для многих методов.
 +
 
 +
* В [[бэггинг|бэггинге]] и [[случайный лес|случайном лесе]] часто используют равные веса деревьев, но возможны и взвешенные варианты.
 +
* В [[бустинг|бустинге]] веса базовых алгоритмов являются частью процедуры обучения.
 +
* В [[стекинг|стекинге]] веса или более сложная функция агрегации обучаются метамоделью по предсказаниям базовых моделей.
 +
* В байесовском усреднении моделей веса связаны с апостериорными вероятностями моделей.
 +
* В [[смесь экспертов|смеси экспертов]] веса зависят от объекта и задаются шлюзовой функцией.
 +
 
 +
Поэтому термин «взвешенное голосование» может означать как простой способ объединения уже обученных классификаторов, так и часть более сложного алгоритма построения ансамбля.
 +
 
 +
== Практическое использование ==
-
* выбора семейства <tex>Q</tex>: диагональное нормальное приближение проще, но хуже передаёт зависимости между переменными;
+
Взвешенное голосование применяют, когда имеется несколько моделей с различными свойствами: например, линейная модель, решающее дерево, метод ближайших соседей и нейронная сеть. Оно также полезно при объединении моделей, обученных на разных признаковых представлениях, разных подвыборках или разных временных интервалах.
-
* инициализации: ELBO обычно невыпукла, поэтому разные запуски могут приводить к разным локальным максимумам;
+
-
* способа оценки градиентов: стохастические оценки требуют контроля дисперсии;
+
-
* проверки результата: полезно сравнивать предсказательные распределения, ELBO на отложенной выборке и, для малых подзадач, результаты MCMC.
+
-
Вариационный вывод особенно уместен, когда нужно быстро обучать вероятностную модель на больших данных или многократно выполнять вывод для новых объектов. Если же главная цель — точная оценка хвостов распределения, редких событий или строгая калибровка неопределённости, одного вариационного приближения может быть недостаточно.
+
Практические вопросы:
-
== Достоинства и ограничения ==
+
* веса следует подбирать на данных, не использованных для обучения базовых моделей, иначе возникает переобучение композиции;
 +
* базовые вероятностные модели желательно калибровать перед усреднением вероятностей;
 +
* слабая модель может быть полезной, если её ошибки отличаются от ошибок сильных моделей;
 +
* слишком много похожих моделей фактически усиливают один и тот же голос;
 +
* качество ансамбля стоит сравнивать с качеством лучшей отдельной модели и простого равновесного голосования.
-
К достоинствам метода относятся:
+
Если число базовых моделей велико, полезна регуляризация весов или отбор моделей. Иначе ансамбль может стать сложным, медленным и плохо интерпретируемым без заметного выигрыша качества.
-
* масштабируемость по числу объектов;
+
== Ограничения ==
-
* связь с оптимизацией, позволяющая использовать градиентные методы и автоматическое дифференцирование;
+
-
* возможность применять байесовские модели там, где точный вывод невозможен;
+
-
* естественное расширение к нейросетевым генеративным моделям.
+
-
Основные ограничения:
+
Основные ограничения взвешенного голосования:
-
* зависимость результата от выбранного вариационного семейства;
+
* веса, подобранные на малой выборке, нестабильны;
-
* риск сходимости к плохому локальному максимуму ELBO;
+
* высокая корреляция ошибок базовых моделей снижает пользу ансамбля;
-
* возможное занижение неопределённости из-за асимметрии <tex>D_{KL}(q,p)</tex>;
+
* голосование по меткам теряет информацию об уверенности классификаторов;
-
* сложность диагностики: высокий ELBO не всегда означает хорошее приближение ко всем важным характеристикам апостериорного распределения.
+
* усреднение некалиброванных вероятностей может давать плохие вероятностные прогнозы;
 +
* фиксированные веса не учитывают, что модель может быть сильна только в отдельной области пространства объектов;
 +
* композиция усложняет объяснение решения по сравнению с одной интерпретируемой моделью.
-
Таким образом, вариационный байесовский вывод следует понимать не как универсальную замену MCMC, а как вычислительно эффективный компромисс между выразительностью байесовских моделей и стоимостью точного вывода.
+
Взвешенное голосование лучше рассматривать как простой и надёжный базовый инструмент ансамблирования. Оно часто даёт выигрыш, но требует аккуратного выбора весов, проверки на независимой выборке и анализа разнообразия базовых моделей.
== См. также ==
== См. также ==
-
* [[Байесовский вывод]]
+
* [[Алгоритмическая композиция]]
-
* [[Байесовская сеть]]
+
* [[Бустинг]]
-
* [[EM-алгоритм]]
+
* [[AdaBoost]]
-
* [[Метод Монте-Карло по схеме марковской цепи]]
+
* [[Бэггинг]]
-
* [[Сэмплирование Гиббса]]
+
* [[Случайный лес]]
-
* [[Латентное размещение Дирихле]]
+
* [[Смесь экспертов]]
-
* [[Вариационный автокодировщик]]
+
* [[Стекинг]]
-
* [[Вероятностная графовая модель]]
+
* [[Скользящий контроль]]
== Литература ==
== Литература ==
-
* ''Jordan M. I., Ghahramani Z., Jaakkola T. S., Saul L. K.'' An Introduction to Variational Methods for Graphical Models // Machine Learning. — 1999. — Vol. 37. — P. 183–233.
+
* ''Kittler J., Hatef M., Duin R. P. W., Matas J.'' On combining classifiers // IEEE Transactions on Pattern Analysis and Machine Intelligence. — 1998. — Vol. 20, No. 3. — P. 226–239.
-
* ''Wainwright M. J., Jordan M. I.'' [https://people.eecs.berkeley.edu/~wainwrig/Papers/WaiJor08_FTML.pdf Graphical Models, Exponential Families, and Variational Inference] // Foundations and Trends in Machine Learning. — 2008. — Vol. 1, No. 1–2. — P. 1–305.
+
* ''Breiman L.'' Bagging predictors // Machine Learning. — 1996. — Vol. 24. — P. 123–140.
-
* ''Blei D. M., Kucukelbir A., McAuliffe J. D.'' [https://arxiv.org/abs/1601.00670 Variational Inference: A Review for Statisticians] // Journal of the American Statistical Association. — 2017. — Vol. 112, No. 518. — P. 859–877.
+
* ''Freund Y., Schapire R. E.'' A decision-theoretic generalization of on-line learning and an application to boosting // Journal of Computer and System Sciences. — 1997. — Vol. 55, No. 1. — P. 119–139.
-
* ''Hoffman M. D., Blei D. M., Wang C., Paisley J.'' [https://arxiv.org/abs/1206.7051 Stochastic Variational Inference] // Journal of Machine Learning Research. — 2013. — Vol. 14. — P. 1303–1347.
+
* ''Dietterich T. G.'' Ensemble methods in machine learning // Multiple Classifier Systems. — Springer, 2000. — P. 1–15.
-
* ''Kingma D. P., Welling M.'' [https://arxiv.org/abs/1312.6114 Auto-Encoding Variational Bayes]. — ICLR, 2014.
+
* ''Kuncheva L. I.'' Combining Pattern Classifiers: Methods and Algorithms. — Wiley, 2004.
-
* ''Bishop C. M.'' Pattern Recognition and Machine Learning. — Springer, 2006. — Ch. 10.
+
* ''Hastie T., Tibshirani R., Friedman J.'' The Elements of Statistical Learning. — 2nd ed. — Springer, 2009.
 +
* ''Bishop C. M.'' Pattern Recognition and Machine Learning. — Springer, 2006. — Ch. 14.
[[Категория:Машинное обучение]]
[[Категория:Машинное обучение]]
-
[[Категория:Байесовский вывод]]
+
[[Категория:Алгоритмические композиции]]
-
[[Категория:Вероятностные модели]]
+
[[Категория:Классификация]]
[[Категория:Энциклопедия анализа данных]]
[[Категория:Энциклопедия анализа данных]]

Текущая версия

Статья написана с использованием LLM OpenAI GPT-5 и проверена участником Platon Usaсhev 11:20, 16 июня 2026 (MSD)


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

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

Содержание

Бинарная классификация

Пусть дана композиция из T базовых классификаторов

b_t:X\to\{-1,+1\}, t=1,\ldots,T,

и неотрицательные веса \alpha_t\geq 0. Взвешенное голосование задаёт классификатор

a(x)= sign \sum_{t=1}^{T}\alpha_t b_t(x).

Если сумма положительных голосов с учётом весов превышает сумму отрицательных, объект относится к классу +1; иначе — к классу -1. При \alpha_1=\cdots=\alpha_T получается обычное голосование большинством.

Величина

M(x,y)= y\sum_{t=1}^{T}\alpha_t b_t(x)

называется отступом композиции на объекте (x,y). Положительный отступ означает правильную классификацию, отрицательный — ошибку. Чем больше отступ, тем увереннее композиция. Во многих теориях ансамблей качество связывают не только с числом ошибок, но и с распределением отступов на обучающей выборке.

Многоклассовая классификация

Для множества классов Y=\{1,\ldots,K\} естественная форма взвешенного голосования:

a(x)= \arg\max_{y\in Y} \sum_{t=1}^{T}\alpha_t [b_t(x)=y],

где [b_t(x)=y] равно единице, если t-й классификатор выбрал класс y, и нулю иначе. Побеждает класс с максимальной суммой весов поддержавших его моделей.

Если базовые алгоритмы выдают оценки вероятностей p_t(y| x), то часто используют взвешенное усреднение вероятностей:

p(y| x)= \frac{\sum_{t=1}^{T}\alpha_t p_t(y| x)} {\sum_{t=1}^{T}\alpha_t}, a(x)=\arg\max_{y\in Y}p(y| x).

Такой вариант сохраняет больше информации, чем голосование по готовым меткам классов. Однако он требует калиброванных вероятностей: если один классификатор систематически выдаёт слишком уверенные оценки, он может доминировать даже при умеренном весе.

Регрессия и прогнозирование

В задачах регрессии аналогом голосования является взвешенное среднее прогнозов:

a(x)= \frac{\sum_{t=1}^{T}\alpha_t b_t(x)} {\sum_{t=1}^{T}\alpha_t}.

Если веса нормированы так, что \textstyle\sum_t\alpha_t=1, формула принимает вид выпуклой комбинации. Временные ряды, вероятностные прогнозы и эконометрические модели часто объединяются именно так: разные модели хорошо работают в разных режимах, а усреднение снижает дисперсию прогноза.

Для вероятностных моделей возможны две близкие операции:

  • усреднение предсказательных распределений:
p(y| x)=\sum_t \alpha_t p_t(y| x);
  • усреднение параметров или логитов моделей.

Эти операции не эквивалентны. Усреднение распределений обычно безопаснее с точки зрения вероятностной интерпретации, тогда как усреднение параметров требует, чтобы модели имели одинаковую структуру и совместимые параметры.

Выбор весов

Способ выбора весов определяет поведение композиции. Наиболее распространённые варианты:

  • равные веса: простое большинство или обычное среднее;
  • веса по качеству на контрольной выборке;
  • веса, найденные минимизацией функции потерь;
  • веса, задаваемые экспертно;
  • веса, зависящие от объекта x;
  • байесовские веса, пропорциональные апостериорной вероятности модели.

При оптимизации по выборке можно решать задачу

\min_{\alpha} \sum_{i=1}^{m} L(y_i,\sum_{t=1}^{T}\alpha_t b_t(x_i)) +\lambda\Omega(\alpha),

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

В AdaBoost веса базовых классификаторов выбираются последовательно. Для бинарной классификации при ошибке \epsilon_t на взвешенной выборке классическая формула имеет вид

\alpha_t= \frac{1}{2} \ln \frac{1-\epsilon_t}{\epsilon_t}.

Чем меньше ошибка базового классификатора относительно текущего распределения весов объектов, тем больше его вклад в итоговую композицию. При \epsilon_t=1/2 вес равен нулю: такой классификатор не лучше случайного угадывания.

Объектно-зависимые веса

В обычном взвешенном голосовании \alpha_t не зависит от объекта. Более гибкий вариант использует веса

\alpha_t=\alpha_t(x).

Тогда композиция принимает вид

a(x)= sign \sum_{t=1}^{T}\alpha_t(x)b_t(x).

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

Почему ансамбль может улучшать качество

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

Для простого большинства независимых бинарных классификаторов с одинаковой вероятностью ошибки p<1/2 вероятность ошибки ансамбля убывает с ростом числа классификаторов:

P_{err}= \sum_{j=\lceil (T+1)/2\rceil}^{T} {T\choose j}p^j(1-p)^{T-j}.

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

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

Связь с другими методами

Взвешенное голосование является общей формой для многих методов.

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

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

Практическое использование

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

Практические вопросы:

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

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

Ограничения

Основные ограничения взвешенного голосования:

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

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

См. также

Литература

  • Kittler J., Hatef M., Duin R. P. W., Matas J. On combining classifiers // IEEE Transactions on Pattern Analysis and Machine Intelligence. — 1998. — Vol. 20, No. 3. — P. 226–239.
  • Breiman L. Bagging predictors // Machine Learning. — 1996. — Vol. 24. — P. 123–140.
  • Freund Y., Schapire R. E. A decision-theoretic generalization of on-line learning and an application to boosting // Journal of Computer and System Sciences. — 1997. — Vol. 55, No. 1. — P. 119–139.
  • Dietterich T. G. Ensemble methods in machine learning // Multiple Classifier Systems. — Springer, 2000. — P. 1–15.
  • Kuncheva L. I. Combining Pattern Classifiers: Methods and Algorithms. — Wiley, 2004.
  • Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. — 2nd ed. — Springer, 2009.
  • Bishop C. M. Pattern Recognition and Machine Learning. — Springer, 2006. — Ch. 14.
Личные инструменты