Машинное обучение 1, осень 2015: Машинное обучение: обзор

Preview:

Citation preview

Машинное обучение: начало

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

Яндекс

СПб, 2015

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

Что нужно, чтобы понять?

ТВ и МСЛинейная алгебраЯзык программирования

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

Как отчитываться?

К концу обучения сделать 15 минутнуюпрезентацию по применению ML в вашейлюбимой задаче.ЗадачкиОшибки к лекциях и в слайдам :)

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

Какие у нас цели?

Уметь сформулировать задачу в терминах MLНайти подходящий класс решающих алгоритмовпо формулировкеОриентироваться в области и знать “гдепосмотреть” существующие решенияПонимать границы применимости

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

Что почитать?

Википедия (лучше en)

T. Hastie, R. Tibshirani, J. Friedman “The elementsof Statistical Learning”T. Mitchell “Machine Learning”

Труды конференций: ICML, NIPS, CIKM, KDD, etc.Журналы: JML, JMLR, JIS, NC, etc.Видео курс: www.ml-class.org

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

Машинное обучение: определения (I)

A computer program is said to learn fromexperience E with respect to some class of tasksT and performance measure P, if its performanceat tasks in T, as measured by P, improves withexperience E.

Tom M. Mitchell

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

Машинное обучение: определения (II)

Machine learning — the ability of a machine toimprove its performance based on previousresults.

Webster

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

Машинное обучение: определения (III)

Машинное обучение —– обширный подразделискусственного интеллекта, изучающийметоды построения алгоритмов, способныхобучаться.

ru.wikipedia.org

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

Машинное обучение: немного истории

50-70гг базы знаний, полнотекстовый поиск, распознаваниеобразов, нейронные сети

70-80гг символьный вывод, Quinlan ID3 деревья, разумныепрактические результаты, VC-оценки

80-90гг первые конференции, много практическогоприменения, активное применение кластеризации ванализе

90-00гг повторное сэмплирование в ML, SVM, применение вIR, ML != DM, LASSO, bootstrap, bagging, boosting

00-10гг Compressed sensing и прочие восстановлениясигналов, царство деревьев, развитие ансамблей, . . .

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

Основные понятия

Область работы = Universe = Γ.Решающая функция = Decision Function = F0 ∈ F– класс решающих функций.Опыт = Data Set = D = X × Y .Целевая функция = Target = T (y ,F (x)).

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

Задача обучения

В ML оптимизация часто проводится в одних условиях,а эксплуатация в других.

arg maxF ,B:F0=B(F )

A(Γ,F0)

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

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

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

Как устроена эксплуатацияНа самом деле, как она _может_ быть устроена

Будем считать, что работа на разных элементах Γнезависима. Тогда эксплуатацию A можно представитьтак:

A = µx∼U(Γ)TA(F0(x))

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

Как устроена оптимизацияНа самом деле, как она _может_ быть устроена

Способ оптимизации B , в свою очередь, такая штука:

F0 = B(F ,D) = arg maxF

TB(D,F ) = arg maxF

TB(Y ,F (X ));

В рамках этой лекции, мы не будем рассматриватьразницу между TA и TB , поэтому будем считать, чтоони одинаковы T .

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

Классификация машинного обучения

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

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

Классификация машинного обучения

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

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

Классификация машинного обучения:опыт

Transductive learningОбычное обучениеСтохастическая оптимизация (stochasticoptimization)1

Активное обучение (active learning)Обучение с бюджетом (budget learning)Интерактивное обучение (online learning)Многорукие бандиты (multi-armed bandits)Обучение с подкреплением (reinforcement learning)

1По сути это не обучение, но очень похоже.И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2015 Стр. 16 из 41

Transductive learning

1 Все множество, на котором работаем заданоперечислением Γ0

2 Для части данных известен ответ, и ониформируют D

F0 = B(F ,D, Γ0)

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

Обычное обучение

1 Фиксируем множество примеров X2 Определяем генеральную совокупность Γ3 Обучаемся на доступных примерах, используя

информацию о всех

F0 = B(F ,D)

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

Стохастическая оптимизация2

1 Определяем генеральную совокупность Γ2 Обучаемся на следующем примере пока не

надоест (до момента t0)

D0 = ∅Dt+1 = Dt ∪ (xi ∼ U(Γ))F t0 = B(F ,Dt)

A(F0) = A(F t00 , Γ)

2Одна из возможных версий предмета :).И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2015 Стр. 19 из 41

Активное обучение

1 Определяем генеральную совокупность Γ2 Обучаемся на всех доступных примерах3 Пополняем множество примеров по просьбе

алгоритма A и переходим к п. 2, если A нетребует больше данных останавливаемся в t0

Dt+1 = Dt ∪ {A(Dt ,Ft)}F t0 = B(F ,Dt)

A(F0, Γ) = A(F t00 , Γ)

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

Обучение с бюджетом

1 Введем стоимость получения информации поточке c(d) и бюджет обучения B

2 Определяем генеральную совокупность Γ3 Обучаемся на всех доступных примерах4 Пополняем множество примеров по просьбе

алгоритма A, пока не закончился бюджет∑t c(xt , yt) < C и переходим к п. 3

Dt+1 = Dt ∪ {A(Dt ,Ft)}F t0 = B(F ,Dt)

A(F0, Γ) = A(F t00 , Γ)

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

Интерактивное обучение (online)

1 Определяем генеральную совокупность Γ2 Обучаемся на всех доступных примерах3 Получаем следующую точку, исходя из работы

решающей функции и переходим к п. 2

D0 = ∅Dt+1 = Dt ∪ {(xt+1, yt+1)}F t0 = B(F ,Dt)

A(F0, Γ) =∑

t TA(yt ,Ft0 (xt))

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

Многорукие бандиты1 Фиксируем множество возможных действий M ,

x ∈ M .2 Каждое действие ведет к y ∼ ξ∗.3 Обновляем модель ξti ,∀i ∈ M неизвестного ξ∗.4 Выбираем следующий элемент исходя из

оптимального exploitation(B)/exploration(E ).5 Повторяем с п.3 пока не надоест.

D0 = ∅Dt+1 = Dt ∪ {(xt+1 ∈ M , yt+1)}

F t0 =

[B(M ,Dt , ξt(Dt , ξ0))E (M ,Dt , ξt(Dt , ξ0))

A(F0, Γ) =∑

t TA(yt ,Ft0 (xt), ξ

∗)

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

Обучение с подкреплением3

1 Фиксируем множество возможных действий M, “поле” X , множествовозможных ответов среды S = So ∪ Sn.

2 Получим наблюдаемую часть ответа системы на текущее состояние.

3 Построим оценку TB на основе нашего прогноза sn, для возможныхходов.

4 Сделаем следующий ход исходя из оптимальностиexploitation(B)/exploration(E ).

5 Повторяем с п.2 пока не надоест или среда нас не убъет.

D0 = ∅Dt+1 = Dt ∪ ((mt , xt), yt), yt ∈ So

F t0 =

[B(M,X ,Dt ,S

nt )

E (M,X ,Dt ,Snt )

A(F0, Γ) =∑

t TA(sot , snt ,F

t0(xt))

3На самом деле, это уже AI.И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2015 Стр. 24 из 41

Классификация машинного обучения

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

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

Классификация машинного обучения:цель

С учителемклассификация (classification);аппроксимация (regression);отношение порядка (learning to rank);обучение метрики (metric learning).

Без учителя:кластеризация (cluster analysis);уменьшение размерности (dimensionality reduction);обучение отображению (representation learning).

Смешанные:условная кластеризация;transfer learning.

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

Обучение с учителем I

Классификация: в качестве метрики LL, KL, CE, etc.

y ∈ {−1, 1} ,F : Γ→ [0, 1]

y ∈ {1, . . . ,m} ,F : Γ→ [0, 1]m−1

y ∈ {0, 1, . . . ,m} ,F : Γ→ [0, 1]m

Аппроксимация: варианты MSE. y ∈ R, F : Γ→ R

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

Обучение с учителем II

Отношения порядка: цель зависит от модели, но почтивсегда хотим найти F : Γ→ R:

pointwise: x ∈ Γ, y ∈ R,T – MSE;pairwise: x ∈ Γ2, y ∈ {<,=, >} ,T – см.

классификацию;listwise: x ∈ Γn, y ∈?,T – специфичен для

конкретного применения.

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

Обучение с учителем III

Обучение метрики: хотим построить такую функциюот пары чтобы:

Она отражала заданную семантику

X = Γ2,Y = {(a, b, c , d) : m(a, b) < m(c , d), a, b, c , d ∈ Γ},F : Γ2 → R

По возможности была метрикой

Целевая функция обычно основывается наклассификации

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

Обучение без учителя I

Уменьшение размерности: надо отобразить исходноепространство в пространство меньшей размерности,максимально сохранив заданные свойства.

расстояние: x , y ∈ Γ, ||F (x)− F (y)|| − ||x − y ||;статистику: {xi}n1 ∈ Γn,Ψ({xi}n1)−Ψ({F (xi)}n1);

Кластеризация: это такое уменьшение размерности до“упора”, в качестве статистики, которую надо оставитьвыступает “чувство прекрасного”. Например:

Ψ =

{0, ||x − y || < ε1

Обучение представлению тоже уменьшениеразмерности, но ограничения накладываются уже на токак видимы результаты.И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2015 Стр. 30 из 41

Классификация машинного обучения

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

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

Основные классы решающих функций

Линейные решенияПараметрические семейства функцийГрафыНейронные сети (ANN)Instance based learning (kNN)ПредикатыАнсамбли

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

Деление по решающей функции (I)

Линейные решенияЛинейная регрессия, логистическая регрессияСкрытый дискриминантный анализ (LDA/QDA*)LASSOSVMLSI*

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

Деление по решающей функции (II)

ГрафыМарковские модели (цепи, HMM)Графические моделиConditional Random Fields

Нейронные сети (ANN)Персептронные сетиСети Хопфилда++Сети Кохоннена

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

Деление по решающей функции (III)

Параметрические семейства функцийСэмплированиеГенетические алгоритмыPLSI/LDA (Latent Dirichlet Allocation)/прочие моделис распределениями (несть им числа)

Instance based learningkNNDANN

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

Деление по решающей функции (IV)

ПредикатыЛогические выраженияДеревья решений

АнсамблиПросто ансамблиBaggingBoostingBagBoo/BooBag

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

Вопросы?

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

Дедуктивные/индуктивные методы

Индуктивные Дедуктивные

Полагаются на статистику Полагаются на prior knowledge

Используют классы элементарныхфункций

Решающая функция следует изпредполагаемой структуры

Работают в любой области Привязаны к области

Знание области отражается на со-ставление target

Понимание области меняет реша-ющую функцию

Логистическая регрессия LDA

Для вхождения в область, прибольших размерностях

Небольшие размерности, «дав-но тут сидим»

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

Data Mining vs. Machine Learning

Data Mining Machine Learning

Цель дисци-плины

Выявление “скрытых дан-ных”

Оптимизация целевойфункции

Исследования Больше про данные Больше про методы

Типичный ре-зультат

“Мы применили такой ме-тод и получили клевые ре-зультаты на таких стан-дартных данных”

“Предложили новый ме-тод, который работает кру-че чем другие на несколь-ких датасетах (возможнодаже синтетика)”

Где почитать SIGIR, WSDM, WWWC, . . . ICML, CIKM, . . .

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

Artificial Intelligence vs. Machine Learning

Artificial Intelligence Machine Learning

Цель дисци-плины

Рациональное поведениеумных машин

Оптимизация целевойфункции

Исследования Больше про мат. модели-рование

Больше про методы

Типичный ре-зультат

“Мы придумали как фор-мализовать задачу игры вшахматы, применили та-кие методы и обыграли че-ловека”

“Предложили новый ме-тод, который работает кру-че чем другие на несколь-ких датасетах (возможнодаже синтетика)”

Где почитать AAAI, IJCAI, . . . ICML, CIKM, . . .

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

Применение методов ML

Практически везде (дайте задачку, я попробуюпридумать применение)Есть два больших класса работ

Академические Практические

Цели Существуют ситуации, ко-гда работает хорошо

Обеспечивает измеряемоекачество на множествепримеров

Искать Красивые идеи, хорошуюматематику

Работающие вещи, многогрязных приемов

Смотреть Конференции Соревнования

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

Recommended