Алгоритм AnyBoost
Материал из MachineLearning.
(→Достоинства) |
|||
Строка 46: | Строка 46: | ||
|} | |} | ||
- | == | + | ==Особенности алгоритма== |
*Алгоритм в значительной доле случаев устойчив к переобучению, даже при использовании большого числа классификаторов. | *Алгоритм в значительной доле случаев устойчив к переобучению, даже при использовании большого числа классификаторов. | ||
- | * | + | *Проявляет нестойкость к переобучению в случае экспоненциальных функций потерь, но он может быть устранен путем использования близких по значению к функции <tex>C(F)=\frac{1}{m}\sum^{m}_{i=1}{1-\tanh(\lambda y_iF(x_i))}</tex>. В качестве выходного значения будут получаться только выпуклые линейные комбинации классификаторов. |
- | + | *Возможно использование модификаций метода <tex>AnyBoost.L_1</tex> (с применением нормализации линейной комбинации) и <tex> AnyBoost.L_2</tex> (метод градиентного спуска используется в выборе коэффициента при норме линейной комбинации, входящей в функцию потерь). | |
- | + | ||
- | + | ||
- | == | + | |
- | + | ||
- | + | ||
- | + | ||
- | * | + | |
==См. также== | ==См. также== | ||
+ | [[Алгоритм AdaBoost]] | ||
+ | [[BrownBoost]] | ||
+ | [[LogitBoost]] | ||
+ | |||
==Литература== | ==Литература== | ||
+ | #''К.В. Воронцов'', [[Машинное обучение (курс лекций, К.В.Воронцов)|Машинное обучение (курс лекций)]] | ||
#{{книга | #{{книга | ||
|автор = Mason L., Baxter J., Bartlett P., Frean M. | |автор = Mason L., Baxter J., Bartlett P., Frean M. |
Версия 21:27, 9 февраля 2010
![]() | Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |
Алгоритм AnyBoost - класс алгоритмов, представляющих бустинг как процесс градиентного спуска. В основе алгоритма лежит последовательное уточнение функции, представляющей собой линейную комбинацию базовых классификаторов, с тем чтобы минимизировать функцию потерь. В класс AnyBoost входят практически все алгоритмы бустинг как частные случаи.
Содержание[убрать] |
Описание алгоритма
Алгоритм AnyBoost
Рассмотрим задачу классификации. Пусть - множество базовых классификаторов, а
- множество всех линейных комбинаций из
.
На каждом шаге алгоритма к текущему классификатору
прибавляется базовый классификатор так, чтобы значение
уменьшилось на некоторое значение
. То есть в терминах функционального пространства для функции
ищется направление, в котором функция
быстрее уменьшается. Наибольшее уменьшение функции потерь наблюдается в случае, когда
максимизирует величину
.
- Инициализация
;
- Для всех
пока не выполнено условие выхода из цикла;
- Получение нового классификатора
, увеличивающего значение
;
- Если
выходим из цикла и возвращаем
;
- Выбор веса
- Уточнение классификатора
- Получение нового классификатора
- Возвращаем
В случае бинарного классификатора .
Пусть
- обучающая выборка.
Функция потерь
определяется через дифференцируемую функцию выброса
.
В этом случае
, и нахождение классификатора на каждом шаге будет равносильно нахождению классификатора
, минимизирующего взвешенную ошибку.
Методы голосования как частный случай AnyBoost
Алгоритм | Функция потерь | Размер шага |
---|---|---|
AdaBoost | Линейный поиск | |
ARC-X4 | ||
ConfidenceBoost | Линейный поиск | |
LogitBoost | Метод Ньютона |
Особенности алгоритма
- Алгоритм в значительной доле случаев устойчив к переобучению, даже при использовании большого числа классификаторов.
- Проявляет нестойкость к переобучению в случае экспоненциальных функций потерь, но он может быть устранен путем использования близких по значению к функции
. В качестве выходного значения будут получаться только выпуклые линейные комбинации классификаторов.
- Возможно использование модификаций метода
(с применением нормализации линейной комбинации) и
(метод градиентного спуска используется в выборе коэффициента при норме линейной комбинации, входящей в функцию потерь).
См. также
Алгоритм AdaBoost BrownBoost LogitBoost
Литература
- К.В. Воронцов, Машинное обучение (курс лекций)
- Mason L., Baxter J., Bartlett P., Frean M. Boosting algorithms as gradient descent. — Advances in Neural Information Processing Systems. — MIT Press, 2000. — T. 12. — 512--518 с.
- Mason L., Baxter J., Bartlett P., Frean M. Functional Gradient Techniques for Combining Hypotheses. — Advances in Large Margin Classifiers. — MIT Press, 1999. — T. 12. — 221--246 с.