Алгоритм AnyBoost
Материал из MachineLearning.
(→Описание алгоритма) |
|||
| Строка 15: | Строка 15: | ||
## Уточнение классификатора <tex>F_{t+1}=F_{t}+w_{t+1}f_{t+1}</tex> | ## Уточнение классификатора <tex>F_{t+1}=F_{t}+w_{t+1}f_{t+1}</tex> | ||
# Возвращаем <tex>F_{T+1}</tex> | # Возвращаем <tex>F_{T+1}</tex> | ||
| + | |||
В случае бинарного классификатора <tex>Y=\{-1;1\}</tex>. | В случае бинарного классификатора <tex>Y=\{-1;1\}</tex>. | ||
| Строка 20: | Строка 21: | ||
Функция потерь <tex> C=\frac{1}{m}\sum^{m}_{i=1}{c(y_iF(x_i))}</tex> определяется через дифференцируемую функцию выброса <tex>c:\mathbb{R} \to \mathbb{R}</tex>. | Функция потерь <tex> C=\frac{1}{m}\sum^{m}_{i=1}{c(y_iF(x_i))}</tex> определяется через дифференцируемую функцию выброса <tex>c:\mathbb{R} \to \mathbb{R}</tex>. | ||
В этом случае <tex>-\left \langle \nabla C(F),f \right \rangle = -\frac{1}{m^2}\sum^{m}_{i=1}{y_if(x_i)c'(y_iF(x_i))} </tex>, и нахождение классификатора на каждом шаге будет равносильно нахождению классификатора <tex>f</tex>, минимизирующего взвешенную ошибку. | В этом случае <tex>-\left \langle \nabla C(F),f \right \rangle = -\frac{1}{m^2}\sum^{m}_{i=1}{y_if(x_i)c'(y_iF(x_i))} </tex>, и нахождение классификатора на каждом шаге будет равносильно нахождению классификатора <tex>f</tex>, минимизирующего взвешенную ошибку. | ||
| + | ==Методы голосования как частный случай AnyBoost== | ||
| + | {| class="standard" | ||
| + | !Алгоритм | ||
| + | !Функция потерь | ||
| + | !Размер шага | ||
| + | |- | ||
| + | |AdaBoost | ||
| + | |<tex>e^{-yF(x)}</tex> | ||
| + | |Линейный поиск | ||
| + | |- | ||
| + | |ARC-X4 | ||
| + | |<tex>{(1-yF(x)}^5</tex> | ||
| + | |<tex>1/t</tex> | ||
| + | |- | ||
| + | |ConfidenceBoost | ||
| + | |<tex>e^{-yF(x)}</tex> | ||
| + | |Линейный поиск | ||
| + | |- | ||
| + | |LogitBoost | ||
| + | |<tex>{\ln(1+e^{-yF(x)})</tex> | ||
| + | |Метод Ньютона | ||
| + | |} | ||
| + | |||
| + | ==Достоинства== | ||
| + | * | ||
| + | * | ||
| + | * | ||
| + | * | ||
| + | ==Недостатки== | ||
| + | * | ||
| + | * | ||
| + | * | ||
| + | * | ||
==См. также== | ==См. также== | ||
==Литература== | ==Литература== | ||
| Строка 32: | Строка 66: | ||
|том = 12 | |том = 12 | ||
|страниц = 512--518 | |страниц = 512--518 | ||
| + | }} | ||
| + | #{{книга | ||
| + | |автор = Mason L., Baxter J., Bartlett P., Frean M. | ||
| + | |заглавие = Functional Gradient Techniques for Combining Hypotheses | ||
| + | |ссылка = http://homepages.ecs.vuw.ac.nz/~marcus/manuscripts/Mason_etal99B.ps.gz | ||
| + | |издание = Advances in Large Margin Classifiers | ||
| + | |издательство = MIT Press | ||
| + | |год = 1999 | ||
| + | |том = 12 | ||
| + | |страниц = 221--246 | ||
}} | }} | ||
Версия 18:43, 7 февраля 2010
| | Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |
Алгоритм AnyBoost - класс алгоритмов, представляющих бустинг как процесс градиентного спуска. В основе алгоритма лежит последовательное уточнение функции, представляющей собой линейную комбинацию базовых классификаторов, с тем чтобы минимизировать функцию потерь. В класс AnyBoost входят практически все алгоритмы бустинг как частные случаи.
Содержание |
Описание алгоритма
Алгоритм AnyBoost
Рассмотрим задачу классификации, - множество базовых классификаторов, все их линейные комбинации содержатся в множестве
.
На каждом шаге алгоритма к текущему классификатору
прибавляется базовый классификатор так, чтобы значение
уменьшилось на некоторое значение
. То есть в терминах функционального пространства для функции
ищется направление, в котором функция
быстрее уменьшается. Наибольшее уменьшение функции потерь наблюдается в случае, когда
максимизирует
.
- Инициализация
;
- Для всех
пока не выполнено условие выхода из цикла;
- Получение нового классификатора
, увеличивающего значение
;
- Если
выходим из цикла и возвращаем
;
- Выбор веса
- Уточнение классификатора
- Получение нового классификатора
- Возвращаем
В случае бинарного классификатора .
- обучающая выборка.
Функция потерь
определяется через дифференцируемую функцию выброса
.
В этом случае
, и нахождение классификатора на каждом шаге будет равносильно нахождению классификатора
, минимизирующего взвешенную ошибку.
Методы голосования как частный случай AnyBoost
| Алгоритм | Функция потерь | Размер шага |
|---|---|---|
| AdaBoost | Линейный поиск | |
| ARC-X4 | ||
| ConfidenceBoost | Линейный поиск | |
| 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 с.

