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

Машинное обучение 1, осень 2014: Машинное обучение: начало

Embed Size (px)

DESCRIPTION

Постановка задачи. Виды обучения. “Дедуктивные” и “индуктивные” методы обучения.

Citation preview

Page 1: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

Яндекс

СПб, 2013

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

Page 2: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

Page 3: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 4: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 5: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 6: Машинное обучение 1, осень 2014: Машинное обучение: начало

Машинное обучение: определения (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

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

Page 7: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

Machine learning - The ability of a machine toimprove its performance based on previousresults.

Webster

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

Page 8: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

ru.wikipedia.org

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

Page 9: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

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

Page 10: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

Только сегодня (!):argmax

F (B)A(F )

A – то что хотим получить

B – на основании чего оптимизируем

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

Page 11: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 12: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 13: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

Page 14: Машинное обучение 1, осень 2014: Машинное обучение: начало

Transductive learning

1 Фиксируем множество примеров D2 Фиксируем примеры, на которых хотим работать

Γ03 Обучаемся на доступных примерах, используя

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

F0 = arg maxF (D)

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

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

Page 15: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

F0 = arg maxF (D)

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

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

Page 16: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

F0 = arg maxF (di∼Γ) µξ∼U(Γ)T (yξ,F (xξ))

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

Page 17: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

F0 = arg maxF (Di ) µξ∼U(Γ)T (yξ,F (xξ))Di = Di−1 ∪ (xi , yi), (xi , yi) ∼ ΨF (Di−1) (Γ \ Di−1)

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

Page 18: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

алгоритма A и переходим к п. 3

F0 = arg maxF (Di ) µξ∼U(Γ)T (yξ,F (xξ))Di = Di−1 ∪ (xi , yi), (xi , yi) ∼ ΨA(F (Di−1)) (Γ \ Di−1))

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

Page 19: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

F0 = arg maxF (Di ) µξ∼U(Γ)T (yξ,F (xξ))Di = Di−1 ∪ (xi , yi), (xi , yi) ∼ ΨA(F (Di−1),c) (Γ \ Di−1)

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

Page 20: Машинное обучение 1, осень 2014: Машинное обучение: начало

Многорукие бандиты

1 Фиксируем множество возможных действий M ,x ∈ M .

2 Каждое действие ведет к y ∼ ξx .3 Исходя из известных данных выбираем x ,

получаем ответ “природы” y .4 Обновляем модель ξi ,∀i ∈ M .5 Повторяем с п.3 пока не надоест.

F0 = arg minF (Di ) µξ∼F (M)yopt − yξDi = Di−1 ∪ (xi , yi)

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

Page 21: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

2 В терминах S сформирулируем целевую функциюT .

3 По опыту Y ∈ 2So научимся прогнозировать весьS , а значит и T , для точек куда можно перейти;.

4 Сделаем следующий ход исходя из оптимальностивосстановленного состояния.

5 Обновим Y тем, что нашли в новой точкеперейдем к п.3

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

Page 22: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 23: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

Page 24: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

Page 25: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

Page 26: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

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

Page 27: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

Ψ =

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

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

Page 28: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 29: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 30: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

Page 31: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

Page 32: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

Instance based learningkNNDANN

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

Page 33: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

Page 34: Машинное обучение 1, осень 2014: Машинное обучение: начало

Вопросы?

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

Page 35: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

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

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

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

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

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

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

Page 36: Машинное обучение 1, осень 2014: Машинное обучение: начало

Data Mining vs. Machine Learning

Data Mining Machine Learning

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

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

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

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

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

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

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

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

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

Page 37: Машинное обучение 1, осень 2014: Машинное обучение: начало

Artificial Intelligence vs. Machine Learning

Artificial Intelligence Machine Learning

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

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

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

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

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

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

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

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

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

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

Page 38: Машинное обучение 1, осень 2014: Машинное обучение: начало

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

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

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

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

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

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

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

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

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