Машинное обучение 1, осень 2014: Оценка методов обучения...

Post on 13-Dec-2014

156 views 1 download

description

Отличия от стохастической оптимизации. Переобучение. Оценка качества обучения. Overfitting on validation. Кроссвалидация.

Transcript of Машинное обучение 1, осень 2014: Оценка методов обучения...

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

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

Яндекс

СПб, 2014

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

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

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

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

—– Lord Kelvin

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

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

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

Вспомним задачу МО

arg maxF ,B:F0=B(F )

A(Γ, F0)

A — цели эксплуатации (например деньги) на всейобласти работы Γ

B — способ оптимизации, который реализуем

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

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

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

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

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

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

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

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

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

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

Есть ли альтернативыМожно ли как-то обойтись без членовредительства?

Не всегда “боевые условия” доступны:Люди не любят быть объектомэкспериментированияКачество эксперимента может быть сильно хужепродакшенаКоличество одновременных экспериментовограничено

⇒ Как бы нам эмулировать эксплуатацию?

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

Cross-fold validation IОпределение

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

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

Cross-fold validation IIСвойства

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

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

Cross-fold validation IIIСпособы реализации

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

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

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

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

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

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

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

Как принять решение по результатамCV/ПВ

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

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

2 проверить

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

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

3 исследовать средний знак разницы T (F0A ,T )− T (F0B ,T ).

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

Ввели понятия “хорошо” и “плохо”⇒ Попробуем понять почемуодин метод работает лучшечем другой.

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

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

F0 = arg maxF (D)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

— Ваш К.О.

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

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

про выборку;

про random seed.

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

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

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

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

F (x , β1) = β11Tx

F (x , β2) = β21Tx + xTβ2

2xF (x , β3) = β3

1Tx + xTβ3

2x +∑

i

∑j

∑k β

33 ijkxixjxk

etc .

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

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

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

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

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

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

Overfit vs. underfit

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

T (T ) ≥ T (L)−

√h(log(2n

h ) + 1)− log(η4)

n

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

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

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

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

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

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

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

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

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

PAC-Bayes bounds I

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

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

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

√log 1

p(F0)+ log( 1

η)

2n

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

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

PAC-Bayes bounds II

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

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

√KL(ρ‖π) + log 4n

η

2n − 1

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

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

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

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

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

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

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

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

Будем долго и упорно подбирать метод обучения нафиксированном делении 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 )

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

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

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

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

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

Задача

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

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

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

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

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

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

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

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