Алгоритмы бустинга — различия между версиями
Wdywbac (обсуждение | вклад) (Новая страница: « Бустинг {{---}} это композиция алгоритмов, где на каждой итерации алгоритм…») |
(нет различий)
|
Версия 03:52, 14 июня 2022
Бустинг — это композиция алгоритмов, где на каждой итерации алгоритм пытается исправить все ошибки композиции предыдущих алгоритмов.
Содержание
LogitBoost
BrownBoost
Идея алгоритма
Расмотренные ранее AdaBoost и LogitBoost плохо работают при наличии шума в данных, что может приводить к переобучению. На каждой итерации бустинга объектам присваиваются веса, и большой вес у объекта показывает, что алгоритм плохо отработал на нем. Это может быть индикатором того, что этот объект шумовой. Тогда, если "откидывать" объекты с большим весом при работе алгоритма, на итоговый классификатор будут влиять незашумленные объекты. Из-за этого итоговая функция ошибки может улучшиться.
Пусть дана обучающая выборка длины
Основная идея BrownBoost — на каждой итерации у найденного слабого классификатора есть вес и количество прошедшего в течение итерации времени и эти величины напрямую связаны между собой. Они задаются системой нелинейных уравнений вида:
Граничные условия: Параметр t - аналогия к параметру T из AdaBoost
Алгоритм
function BrownBoost($T$, $c$):
do:
//Задаем вес для каждого объекта
Вызываем слабый алгоритм и находим классификатор //
Решение системы уравнений [1]
//Обновляем веса каждого объекта
s = s - t //Обновляем время
while
return //$H(x)$ — результирующий классификатор