35
Машинное обучение: оценка методов обучения с учителем И. Куралёнок, Н. Поваров Яндекс СПб, 2013 И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 1 из 35

2013 09 27_machine_learning_lecture_03

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 2013 09 27_machine_learning_lecture_03

Машинное обучение: оценка методовобучения с учителем

И. Куралёнок, Н. Поваров

Яндекс

СПб, 2013

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 1 из 35

Page 2: 2013 09 27_machine_learning_lecture_03

Задача на сегодня

Задача: Есть метод обучения и данные, на которыхобучаемся. Хотим понять хорошо ли будет работатьрешающая функция на практике.

“If you can’t measure it, you can’t improve it”

—– Lord Kelvin

“Гораздо легче что-то измерить, чем понять, чтоименно вы измеряете.”

—– Джон Уильям Салливан

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 2 из 35

Page 3: 2013 09 27_machine_learning_lecture_03

Источник проблемы

F0 = arg maxF (D)

µξ∼U(Γ)T (yξ,F (xξ))

Мы обучаемся на одном множестве, а работаем надругом. А что, если эти множества отличаются?

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 3 из 35

Page 4: 2013 09 27_machine_learning_lecture_03

Свойства выборки

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

— Дж. Б. Мангейм, Р. К. Рич

Такого сложно достичь, поэтому хотим лишь“несмещенности” по параметрам обучения:

F0 = argmaxF µξ∼U(D)T (yξ,F (xξ))= argmaxF µξ∼U(Γ)T (yξ,F (xξ))

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 4 из 35

Page 5: 2013 09 27_machine_learning_lecture_03

Способы повлиять на несмещенность

Интересно получить выборку, несмещенную(смещенную не более чем . . .) по результатампроцедуры обучения:

Найти «хороший» способ генерации выборки приусловии процедуры подбораНаложить ограничения на процедуру подбораОграничения на решающую функцию

⇒ Надо научиться мерять смещенностьвыборки, и чем тоньше изменения, тем болееточный инструмент измерения нужен.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 5 из 35

Page 6: 2013 09 27_machine_learning_lecture_03

Известные способы оценки

Оценка по принципу “чёрного ящика”:Оценка в боевых условиях (на пользователях)Кросс-валидацияПовторные выборки

Оценка по принципу “прозрачного ящика”:VС-оценкиPAC-Bayes boundsОценки по Воронцову

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 6 из 35

Page 7: 2013 09 27_machine_learning_lecture_03

Оценка в боевых условиях

Как оценить, насколько пользователяю системы“хорошо” по его поведению? Конкретная реализациязависит от области, но можно выделить типы:

blind testing;A/B тестирование (Abandonment Rate, MRR bylong clicks, etc.);подстроенные результаты (TDI, BI, etc.).

Мы можем долго-долго рассказывать байки в этом месте :).

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 7 из 35

Page 8: 2013 09 27_machine_learning_lecture_03

Cross-fold validation I

Разобьем множество X на два L и T так, чтобыL ∪ T = X , L ∩ T = ∅ случайным образом (Jackknife).Будем обучаться на одной половине а проверятьрезультат обучения на другой.

+ простой и надежный+ позволяет оценить распределение на множестверешений– последовательные эксперименты зависимы– используем мало данных для обучения– непонятно как подбирать соотношения |L||T |

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 8 из 35

Page 9: 2013 09 27_machine_learning_lecture_03

Cross-fold validation II

Можно организовать разными способами:2-fold обычно так и делаемk-fold когда очень боимся зависимостиэкспериментов, а данных многоLeave-one-out (LOO) когда совсем мало данных

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 9 из 35

Page 10: 2013 09 27_machine_learning_lecture_03

Повторные выборкиВ статисике продолжением метода Jackknife сталBootstrapping. Сформируем 2 множества L и T так,что:

1 |L| = |T | = |X |2 li ∼ U(X ), ti ∼ U(X )

Будем считать, что эти 2 множества разные.+ используем полный объем выборки+ на больших объемах вариативность выбораогромна– теперь еще и T зависит от L и как это учесть –не ясно

⇒ можно применять только на больших объемах(>10k точек)

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 10 из 35

Page 11: 2013 09 27_machine_learning_lecture_03

Как принять решение по результатамCV/ПВНе стоит забывать, что результаты CV/ПВэкспериментов всегда зависимы, и не спасают нас отсмещенности исходной выборки.

1 провести серию последовательных эксприментов;

2 закрыв глаза на зависимость, построить доверительныеинтервалы на T (F0,T );

3 чтобы сравнить два альтернативных метода можнопроверить

H0 : µ (T (F0A ,T )) = µ (T (F0B ,T ))

например с помощью парного WX-test’а.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 11 из 35

Page 12: 2013 09 27_machine_learning_lecture_03

Сложность моделиЧем больше в модели параметров, тем большуюинформацию они несут.

— Ваш К.О.

Какая бывает информация в параметрах:

про генеральную совокупность;

про выборку;

про random seed.

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

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 12 из 35

Page 13: 2013 09 27_machine_learning_lecture_03

Семейство полиномов p-й степени

Будем строить семейства решающих функцийследующим образом:

F (x , λ1 = {w}) = wTxF (x , λ2 = {w ,A}) = wTx + xTAxF (x , λ3 = {w ,A,B}) = wTx + xTAx +

∑i

∑j

∑k bijkxixjxk

etc .

Понятно, что |λi | < |λi+1|.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 13 из 35

Page 14: 2013 09 27_machine_learning_lecture_03

Размерность Вапника-Червоненкиса

Definition (ru.wikipedia.org)VC -размерность класса функций F — наибольшееколичество точек, которое может быть разделенофункциями семейства, вне зависимости отконфигурации множества точек.

картинки с en.wikipedia.org

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 14 из 35

Page 15: 2013 09 27_machine_learning_lecture_03

Overfit vs. underfit

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 15 из 35

Page 16: 2013 09 27_machine_learning_lecture_03

Overfit vs. underfit определения

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

Недообучение (underfitting) — нежелательное явление,возникающее при решении задач обучения по прецедентам,когда алгоритм обучения не обеспечивает достаточно малойвеличины средней ошибки на обучающей выборке.Недообучение возникает при использовании недостаточносложных моделей.

— machinelearning.ruИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 16 из 35

Page 17: 2013 09 27_machine_learning_lecture_03

Как это выглядит в полиномах (underfit)

картинка с machinelearning.ruИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 17 из 35

Page 18: 2013 09 27_machine_learning_lecture_03

Как это выглядит в полиномах (fit)

картинка с machinelearning.ruИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 18 из 35

Page 19: 2013 09 27_machine_learning_lecture_03

Как это выглядит в полиномах (overfit)

картинка с machinelearning.ruИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 19 из 35

Page 20: 2013 09 27_machine_learning_lecture_03

Как это выглядит в пространстверешений

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 20 из 35

Page 21: 2013 09 27_machine_learning_lecture_03

Что в какой ситуации делать

Увеличение числа примеров для обучения фиксятhigh variance, но не high biasМеньшее число факторов фиксят high variance, ноне high biasУвеличение числа факторов фиксят high bias, ноне high varianceДобавление степени к полиному ивзаимодействующих факторов фиксят high bias,но не high variance

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 21 из 35

Page 22: 2013 09 27_machine_learning_lecture_03

Понимаем в какой ситуации находимся

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 22 из 35

Page 23: 2013 09 27_machine_learning_lecture_03

Понимаем в какой ситуации находимся

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 23 из 35

Page 24: 2013 09 27_machine_learning_lecture_03

Теоретическая оценка

Цели оценки:Можно ли понять какой метод круче длязаданного объема данныхПредсказать сложность на которой достигается fit

Будем рассматривать задачу классификации иопределять долю ошибок (T = −

∑i I (yi 6= F (xi))).

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 24 из 35

Page 25: 2013 09 27_machine_learning_lecture_03

Русские тоже что-то могут в ML :)

Владимир Наумович Вапник (NEC1),Алексей Яковлевич Червоненкис (University of London).Разработали первую теорию по оценке переобучения взависимости от класса решающих функций в 60-70егоды.

1Здесь и далее по данным ru.wikipedia.orgИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 25 из 35

Page 26: 2013 09 27_machine_learning_lecture_03

Оценка по методуВапника-Червоненкиса I

Хотим оценить T (T ) сверху по T (L) и свойствамсемейства решающих функций.

T (T ) ≥ T (L)−

√h(log(2n

h ) + 1)− log(η4)n

с вероятностью 1− η, где h – VC -оценка семейства,n = |L|.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 26 из 35

Page 27: 2013 09 27_machine_learning_lecture_03

Оценка по методуВапника-Червоненкиса II

картинка с www.svms.orgИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 27 из 35

Page 28: 2013 09 27_machine_learning_lecture_03

PAC-Bayes bounds I

Кажется, что не все определяет только VC -размерность. Дляодних данных работают одни решения, для других – другие.

Definition (Оценка McAllester’а (1998))Введем априорное распределение над семейством решающихфункций F . Тогда:

T (F0,T ) ≥ T (F0, L)−

√log 1

p(F0)+ log( 1

η)

2n

с вероятностью не меньше 1− η.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 28 из 35

Page 29: 2013 09 27_machine_learning_lecture_03

PAC-Bayes bounds II

Рассмотрим решение, как взвешивание между разнымифункциями семейства F .2 Тогда получится еще краше(современный вид):

|µρT (Fi ,T )− µρT (Fi , L)| ≥

√KL(ρ‖π) + log 4n

η

2n − 1

с вероятностью не меньше 1− η, где ρ — априорноераспределение в семействе F , π — апостериорное.

2Это такое байесовское решение, о котором мы поговорим в следующийраз

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 29 из 35

Page 30: 2013 09 27_machine_learning_lecture_03

Оценка в слабой аксиоматике Воронцова

Воронцов Константин Вячеславович (ШАД в Москве,machinelearning.ru) написал докторскую диссертациюна тему

“Комбинаторная теория надёжности обучения попрецедентам”

в которой предложил интересную альтернативуVC-оценкам и PAC-Bayes.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 30 из 35

Page 31: 2013 09 27_machine_learning_lecture_03

Соображения об точности решения

До этого мы говорили о точных решениях. Ноточность определения параметров обученияопределяет количество информации в решении.⇒ Не надо вычислять параметры решения до 100-гознака: sizeof(long double) » sizeof(float)

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

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 31 из 35

Page 32: 2013 09 27_machine_learning_lecture_03

Как еще можно переобучиться?

Будем долго и упорно подбирать метод обучения нафиксированном делении L,T :

maxi

(arg max

f ∈Fi

T (f , L)

)(T )

Это же максимизация на всем множестве L ∪ T = X !Называется такое overfit on validate. Что с этимделать? Исследовать

���max(arg max

i

(arg max

f ∈Fi

T (f , L)

)(V )

)(T )

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 32 из 35

Page 33: 2013 09 27_machine_learning_lecture_03

Где взять данные для экспериментов

Реальные данныеПоиск: РОМИП, TREC, Яндекс.ИМАТ, Yahoo LTRChPascal ChallengeInnoCentiveKaggle

Синтетические данные (многомерный XOR)“Загадки”: задумаем «хитрое» распределение ипопробуем его отгадать

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 33 из 35

Page 34: 2013 09 27_machine_learning_lecture_03

Задача

Дано:L = 1000 точек, полученных по правилу:

x ∼ U(0, 10]y = ln(x)

T = 10000 реализаций x для которых надонайти y

Задача: найти решение в классе полиномовоптимальной степени p, наилучшим образомприближающий y на T .

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 34 из 35

Page 35: 2013 09 27_machine_learning_lecture_03

Где брать домашние задания

svn checkouthttp://ml-lections.googlecode.com/svn/trunk/ml-lections-read-onlyКомитить не получится ;)Бонусом - лекции в tex.Лекции находятся в разных папках. В папкелекции есть папка homework.Помимо датасетов содержат файл howto.txtВопросы: [email protected]

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 35 из 35