Обзор алгоритмов машинного обучения

61
1 Обзор алгоритмов машинного обучения Воронов Александр Video Group CS MSU Graphics & Media Lab

description

 

Transcript of Обзор алгоритмов машинного обучения

Page 1: Обзор алгоритмов машинного обучения

1

Обзор алгоритмов машинного обучения

Воронов Александр

Video GroupCS MSU Graphics & Media Lab

Page 2: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

2

Page 3: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Постановка задачиТерминология

Множество объектов: X

Конечное множество классов: Y

Любой объект x ∈ X соответствует хотя бы одному классу yi ∈ Y

3

Page 4: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Постановка задачи

По конечной выборке прецедентовXl :(xi, yi)i=1l

построить отображение a: X→Y,

удовлетворяющее следующим условиям:

Эффективная программная реализация Воспроизведение заданных ответов на

обучающей выборке Обобщающая способность для всего

множества X Априорные ограничения (соответствие

модели)

4

Page 5: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Постановка задачиОценка обобщающей способности

Функционал качества:

- тестируемый алгоритм

- функция, определяющая величину ошибки алгоритма

5

),(

),(1

),(1

i

l

i

i

l

xa

a

xal

XaQ

),(minarg)( l

Aa

l XaQX

Page 6: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Постановка задачиОценка обобщающей способности

Дана выборка

Разобьѐм еѐ N способами на обучающую и контрольную подвыборки (k = L – l)

Оценка скользящего контроля(cross-validation):

CV совпадает с матожиданием потерь

6

L

iii

L yxX 1),(

k

nX

l

nX

N

n

k

n

l

n

L XXQN

X1

)),((1

),CV(

Page 7: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus Примеры прикладных

задач

Медицинская диагностика

Распознавание спама

Рубрикация текста

Распознавание рукописных символов

Оценивание заѐмщиков

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

и т.д.7

Page 8: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus Эвристические принципы

обучения по прецедентам

сходства минимизации эмпирического риска регуляризации (штраф на сложность

алгоритма) разделимости (можно описать некоторую

поверхность, разделяющую классы) отделимости и закономерности (можно описать

область, которая включает объекты только одного класса)

самоорганизации моделей (структура модели алгоритма заранее не известна)

композиции8

Page 9: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

9

Page 10: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Дерево решенийПример

10

Page 11: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Дерево решенийАвтоматическое построение

X = {x1, …, xn}, pi – вероятность события xi

- энтропия множества X

C = {c1, …, cm} – множество классовF – признак с возможными значениями {f1, …, fd}

Количество информации класса C относительно признака F:

11

n

i

ii ppXH1

2log)(

m

i

d

j ii

iiii

fFPcCP

fFcCPfFcCPFCI

1 1

2)()(

),(log),(),(

Page 12: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Дерево решенийАвтоматическое построение

1. Признак с наибольшим количеством информации выбирается в качестве корневого узла

2. Если подмножество событий ветви не совпадает с одним из классов, то алгоритм запускается рекурсивно для этой ветви

12

Page 13: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

13

Page 14: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыОбозначения

14

Py = P(y) – априорная вероятность класса y

py(x) = p(x|y) – функция правдоподобия класса y

p(x,y) – плотность распределения

λys – величина потери при отнесении объекта класса y к классу s

Ay = {x ∈ X | a(x) = y}, y ∈ Y

Page 15: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыОбозначения

Функционал среднего риска:

Формула Байеса

15

Yy Ys

syys yAPaR )|()(

Ys ss

yy

Pxp

Pxp

xp

yxpxyP

)(

)(

)(

),()|(

Page 16: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыСхема работы

1. Задаются штрафы ошибочной классификации λys.

2. По обучающей выборке вычисляются функции, характеризующие классы.

3. На основе этих функций строится алгоритм, который минимизирует функционал среднего риска.

16

Page 17: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыОбозначения

Оптимальный алгоритм классификации

При условии, что

Разделяющая поверхность:

17

)()( xpPxpP sssttt

Yy

yyysYs

xpPxa )(minarg)(

)|P(maxarg)(maxarg)( xyxpPxa yYy

yyyYy

yys

Page 18: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыВосстановление плотности

Оценка априорной вероятности класса y:

Чтобы восстановить функции правдоподобия py(x), рассмотрим общую

задачу:

Для выборки Xm = {x1, …, xm} построить

эмпирическую оценку плотности, приближающую p(x) на всѐм X.

18

YyXll

lP l

yy

y

y ,,ˆ

Page 19: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмы

Предположим, что p(x) = φ(x,θ)

φ – фиксированная функция

θ – параметр, значение которого выбирается

из принципа максимума правдоподобия:

Gm = (g1,…,gm)

19

m

i

ii

mm xgGXL1

max),(ln),,(

Page 20: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмы

Предположим, что

то есть n-мерное нормальное распределение с матожиданием μ ∈ R

n,

Σ ∈ Rnxn

20

))()(2

1exp()2(),,(),( 1

2

12

xxxNxn

Page 21: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмы

Вычисление:

Можно положить

Несмещѐнная оценка ков.матрицы:

21

m

i ig1

1

m

i

iii

m

i

ii xxgxg11

)ˆ)(ˆ(ˆ;ˆ

mgi

1

m

x

ii xxm 1

)ˆ)(ˆ(1

Page 22: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыКвадратичный дискриминант

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

22

Page 23: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыЛинейный дискриминант Фишера

Фишер предложил считать ковариационные матрицы равными, даже если они на самом деле не равны.

23

)(maxarg

)ˆˆˆˆˆ2

1)(ln(maxarg

))((maxarg)(

11

yyYy

yyyyyYy

yyyYy

x

xP

xpPxa

Page 24: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыЛинейный дискриминант Фишера

Обучение сводится к оцениванию матожидания и общей ковариационной матрицы для всей выборки.

24

Page 25: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыНаивный байесовский классификатор

Если предположить , что признаки объекта независимы и нормально распределены, то общая плотность вычисляется как произведение плотностей характеристик

Плотность каждой характеристики внутри класса вычисляется значительно проще

В реальности такая ситуация встречается редко, на большинстве задач качество классификации будет относительно низким

25

Page 26: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыНаивный байесовский классификатор

- признаки

Итоговый алгоритм:

26

n

j

jyj

yy

Yy

nynyy

nn

pl

lxa

ppxp

xfxf

1

11

11

)(ˆlnlnmaxarg)(

)()...()(

)(),...,(

Page 27: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Статистические алгоритмыВыводы

Преимущества: Байесовское решающее правило оптимально,

имеет простую формулу, легко реализуется программно

Имеет широкую область применения, часто используется в качестве эталона при тестировании других алгоритмов

Недостатки: При неправильном подходе к восстановлению

функций правдоподобия качество работы алгоритма может быть очень низким

27

Page 28: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

28

Page 29: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмы

Метрические алгоритмы:

основанные на анализе сходства объектов.

Гипотеза компактности:

Классы образуют компактно локализованные множества в пространстве объектов.

Вводится метрика ρ(x, x´) в пространстве объектов X

29

Page 30: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмы

u – рассматриваемый объект

Xl – обучающая выборка

w(i, u) – оценка степени важности i-го соседа

- суммарный вес

ближайших обучающих объектов

Метрический алгоритм:

30

l

i

i

u

l

y uiwyyXu1

)( ),(][),(

),(maxarg),( l

yYy

l XuXua

Page 31: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыСхема работы

Обучение:

1. Выбор метрики сходства между объектами

2. Удаление из обучающей выборки неинформативных и шумовых объектов

Классификация:

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

31

Page 32: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыВесовые функции

Метод ближайшего соседа (1NN):

w(i, u) = [i = 1]

Метод k ближайших соседей (kNN):

w(i, u) = [i ≤ k]

Метод взвешенных ближайших соседей:

w(i, u) = [i ≤ k]qi

32

Page 33: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыМетод парзеновского окна

K(z) – функция ядра, невозрастающая на [0, ∞)

При неравномерном распределении объектов можно использовать окно переменной ширины:

Доп.ограничение на K: z > 1, K(z)=0

33

h

xuKuiw

i

u ),(),(

)(

),()( )1( k

uxuuh

Page 34: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыОтбор эталонных объектов

Эталоны – типичные представители классов

При исключении из выборки шумовые и неинформативные объекты повышается качество классификации и уменьшается объѐм хранимых данных

34

Page 35: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыОтбор эталонных объектов

Отступ объекта xi относительно алгоритма a(u)

Объекты:

Эталонные (большой положительный отступ) Неинформативные (положительный отступ) Пограничные (отступ, близкий к нулю) Ошибочные объекты (отрицательный отступ) Шумовые объекты или выбросы (большой

отрицательный отступ)

Из выборки удаляются неинформативные и шумовые объекты

35

)(max)()(\

iyyYy

iyi xxxMi

i

Page 36: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Метрические алгоритмыВыводы

Преимущества: Нет необходимости выделять признаки

(прецедентная логика) Простота реализации

Недостатки: Необходимость хранить обучающую

выборку Поиск ближайших соседей

предполагает большой число сравнений36

Page 37: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

37

Page 38: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVM

38

Page 39: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVM

39

Page 40: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVM

X = Rn, Y = {-1, +1}

w, w0 – параметры алгоритма

- разделяющая гиперплоскость

40

00

1

,sgnsgn)( wxwwxwxan

j

j

j

0, wxw

Page 41: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMСхема работы

Обучение:

1. Для поиска максимальной ширины разделяющей полосы при минимальной ошибке составляется функция Лагранжа

2. Ищется седловая точка функции Лагранжа.

3. Находятся опорные точки, на их основе вычисляются параметры алгоритма

41

Page 42: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMШирина разделяющей полосы

x+ и x- - произвольные точки классов,

лежащие на границе полосы

Тогда ширина полосы:

Для линейно разделимой выборки требуется найти параметры w, w0, такие, что при

выполнении условия норма w будет минимальна.

42

ww

ww

w

xwxw

w

wxx

2)1()1(,,),( 00

1, 0 wxwy ii

Page 43: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЗадача поиска седловой точки

Необходимые условия седловой точки:

43

liywxwлибо

li

wxwywwwwL

iii

i

ww

l

i

iii

,...,1,,,0

,...,1,0

maxmin1,,2

1),,(

0

,1

000

00

0

110

11

l

i

ii

l

i

ii

l

i

iii

l

i

iii

yyw

L

xywxyww

L

Page 44: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЗадача поиска седловой точки

Из необходимых условий седловой точки следует :

44

l

i

ii

i

l

i

l

i

l

j

jijijii

y

li

xxyyL

1

1 1 1

0

,...,1,0

min,2

1)(

Page 45: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVM

После решения задачи вычисляем:

Итоговый алгоритм:

45

liyxwmedw

xyw

iii

l

i

iii

,...,1,0:,0

1

0,sgn)( wxwxa

Page 46: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЛинейно неразделимая выборка

Добавим в исходную задачу минимизации нормы w штраф за суммарную ошибку:

46

li

liwxwy

Cww

i

iii

ww

l

i

i

,...,1,0

,...,1,1,

min,2

1

0

,,1 0

Page 47: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЛинейно неразделимая выборка

Введѐм понятие отступа:

Рассмотрим функционал числа ошибок:

Заменим пороговую функциюна еѐ верхнюю оценку:

Добавим к Q штрафное слагаемое , учитывающее норму w

47

0, wxwym iii

l

i

i

l mXaQ1

]0[),(

)1(]0[ ii mm2

w

Page 48: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЛинейно неразделимая выборка

Задача минимизации полученного функционала

эквивалентна исходной задаче

при

48

0,

2

1

min)1(),(ww

l

i

i

l wmXaQ

li

liwxwy

Cww

i

iii

ww

l

i

i

,...,1,0

,...,1,1,

min,2

1

0

,,1 0

C2

1

Page 49: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЛинейно неразделимая выборка

Соответствующая функция Лагранжа:

49

maxmin)(

1,,2

1),,,,(

0,1

1

00

ww

l

i

iii

l

i

iii

C

wxwywwwwL

Page 50: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMЛинейно неразделимая выборка

Задача поиска седловой точки:

50

liлибо

liwxwyлибо

li

wwL

ii

iiii

iii

ww

,...,1,0,0

,...,1,1,,0

,...,1,0,0,0

maxmin),,,,(

0

,,,0

0

Page 51: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMСпрямляющие пространства

Ещѐ один способ решения проблемы линейной неразделимости:переход из пространства объектов X в пространство H с помощью преобразования ψ: X → H

Пространство H называется спрямляющим

SVM строится так же, только на основе объектов ψ(xi) вместо xi.

- ядровая функция

51

)(),(),( xxxxK

Page 52: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

SVMВыводы

Преимущества: Решение задачи хорошо оптимизируется:

сводится к задаче квадратичного программирования

Более уверенная классификация за счѐт максимизации ширины разделяющей полосы

Недостатки: Неустойчивость к шуму, выбросы существенно

учитываются Нет общих методов построения ядер или

спрямляющих пространств

52

Page 53: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Содержание

Введение

Дерево решений

Статистические алгоритмы

Метрические алгоритмы

SVM

AdaBoost

53

Page 54: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoostПостановка задачи

Классификация на два класса: Y = {-1,+1}

bt(x) – некоторые базовые алгоритмы

Искомый алгоритм – взвешенная сумма базовых:

Функционал качества композиции:

54

T

t

tt Xxxbxa1

)),(sgn()(

l

t

T

t

ittiT xbyQ1 1

0)(

Page 55: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoost

Упрощение задачи минимизации функционала Qt:

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

Эвристика 2: аппроксимировать пороговую функцию потерь в Qt непрерывно

дифференцируемой оценкой сверху.

55

Page 56: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoost

Аппроксимация экспонентой:

Введѐм нормированный вектор весов объектов:

56

l

i

iTTi

w

T

t

itti

l

i

T

t

ittitt

xbyxby

xbyQQ

i

1

1

1

1 1

))(exp()(exp

)(exp~

l

j j

iil

l

w

wwwwW

1

1~),~,...,~(

~

Page 57: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoost

Теорема 1:

Тогда:

57

1:,2/1),(min

1],0)([),(

1

1 1

l

i

i

ll

b

l

i

l

i

iiii

l

wWWbQ

uxbyuUbQ

)~

,(

)~

,(1ln

2

1

)~

,(minarg

l

T

l

TT

l

bT

WbQ

WbQ

WbQb

Page 58: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoost

Теорема 2:

Если существует такое, что на

каждом шаге , то AdaBoost гарантирует построение корректного алгоритма a(x) за конечное

число шагов.

58

2/1)~

,( l

t WbQ0

Page 59: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoostАлгоритм обучения

1. инициализация весов объектов: wi := 1/l, i = 1, …,l

2. для всех l = 1,…,T, пока не выполнен критерий

останова

3.

4.

5. пересчѐт весов объектов: wi := wiexp(-αtyibt(xi)),

i = 1, …,l

6. нормировка весов объектов:

59

),(minarg: l

bt WbQb

),(

),(1ln

2

1:

l

t

l

tt

WbQ

WbQ

liwww

ww

ii

l

j j

,...,1,/:

:

0

10

Page 60: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

AdaBoostВыводы

Достоинства:

Хорошая обобщающая способность

Простота реализации

Возможность идентификации выбросов по высокому значению wi

Недостатки:

Переобучение при значительном уровне шума

Требует длинных выборок

Может привести к построению громоздких композиций

60

Page 61: Обзор алгоритмов машинного обучения

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

Литература

1. Курс лекций К.В. Воронцова по машинному обучений (2007-2008)http://www.machinelearning.ru/wiki/index.php?title=Машинное_обучение_(курс_лекций%2C_К.В.Воронцов)

2. Л.Шапиро, Дж.Стокман «Компьютерное зрение», глава 4, С.126-167

61