98
Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач Машинное обучение (Machine Learning) Введение. Основные понятия Уткин Л.В.

Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Машинное обучение (Machine Learning)Введение. Основные понятия

Уткин Л.В.

Page 2: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Содержание

1 Что такое машинное обучение?2 Постановки задач:

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

3 Примеры практических задач4 О курсе

Page 3: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

К.В. Воронцова, А.Г. Дьяконова, Н.Ю. Золотых,С.И. Николенко, Andrew Moore, Lior Rokach, RongJin, Jessica Lin, Luis F. Teixeira, Alexander Statnikovи других.

Page 4: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Page 5: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Что такое машинное обучение (machinelearning)?

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

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

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

Page 6: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Что такое машинное обучение (machinelearning)?

Говорят, что компьютерная программа обучаетсяна основе опыта E по отношению к некоторомуклассу задач T и меры качества P, если качестворешения задач из T, измеренное на основе P,улучшается с приобретением опыта E. - T.M.MitchellMachine Learning. McGraw-Hill, 1997.

Page 7: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Дедуктивное и индуктивное методы обучения

Способы обучения и в компьютерных системах:

1 Дедуктивное, или аналитическое, обучение(экспертные системы). Имеются знания,сформулированные экспертом и как-то формализованные.Программа выводит из этих правил конкретные факты иновые правила.

2 Индуктивное обучение (статистическое обучение).На основе эмпирических данных программа строит общееправило. Эмпирические данные могут быть полученысамой программой в предыдущие сеансы ее работы илипросто предъявлены ей.

3 Комбинированное обучение.

Page 8: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

“It is a capital mistake to theorize before one has data.”- Arthur Conan Doyle

Page 9: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

От данных к знаниям

Page 10: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Сферы приложения

1 Компьютерное зрение (computer vision)2 Распознавание речи (speech recognition)3 Компьютерная лингвистика и обработка естественных

языков (natural language processing)4 Медицинская диагностика5 Биоинформатика6 Техническая диагностика7 Финансовые приложения8 Рубрикация, аннотирование и упрощение текстов9 Информационный поиск10 . . .

Page 11: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Смежные и близкие области

Pattern Recognition (распознавание образов)Data Mining (интеллектуальный анализ данных,включая Big Data)Artificial Intelligence (искусственный интеллект)

Page 12: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Разделы математики, используемые вмашинном обучении

Линейная алгебраТеория вероятностей и математическая статистикаМетоды оптимизацииЧисленные методыМатематический анализДискретная математикаи др.

Page 13: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Нужно ли посвящать время машинномуобучению

По оценке McKinsey Global Institute, в 2018 году в однихтолько Соединенных Штатах спрос на экспертов помашинному обучению будет превышать предложение на140–190 тысяч человек. Кроме того, потребуетсядополнительно полтора миллиона разбирающихся вданных управленцев.

(Домингос П. Верховный алгоритм: как машинное обучениеизменит наш мир. М. : Манн, Иванов и Фербер, 2016.)

Page 14: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Классификация задач индуктивного обучения

Обучение с учителем, или обучение по прецедентам(supervised learning): классификация;восстановление регрессии; структурное обучениеОбучение без учителя (unsupervised learning):кластеризация; визуализация данных; понижениеразмерности;Активное обучение (active learning).Обучение с подкреплением (reinforcement learning).

Page 15: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Схема всего процесса машинного обучения

Page 16: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Обучение по прецедентам или с учителем

Множество X — объекты, примеры, образцы (samples)Множество Y — ответы, отклики, «метки», классы(responses)Имеется некоторая зависимость g : X → Y , позволяющаяпо x ∈ X предсказать (или оценить вероятностьпоявления) y ∈ Y .Зависимость известна только на объектах из обучающейвыборки:

T = (x1, y1), (x2, y2), ..., (xn, yn)

Пара (xi , yi) ∈ X × Y - прецедент.Задача обучения по прецедентам: научиться поновым объектам x ∈ X предсказывать ответы y ∈ Y .

Page 17: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример обучающей выборки (классификация)

пульс гемоглобин диагнозx1 70 140 здоров (y = −1)x2 60 160 здоров (y = −1)x3 94 120 миокардит (y = 1)· · · · · · · · · · · ·x114 86 98 миокардит (y = 1)

Обучающая выборка:

((70, 140),−1), (60, 160),−1), (94, 120), 1)..., (86, 98), 1))

Задача обучения: новый пациент x = (75, 128), y =?

Page 18: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Графическое представление обучающейвыборки

Page 19: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Другой пример обучающей выборки(классификация)

вес рост возраст ср.дл.волос полx1 96 170 42 0 м (y = −1)x2 60 180 25 8 м (y = −1)x3 54 165 30 21 ж (y = 1)x4 83 178 47 18 ж (y = 1)· · · · · · · · · · · · · · · · · ·x100 108 193 32 40 ж (y = 1)Задача обучения: x = (75, 184, 28, 10), y =?

Page 20: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

вес рост возраст ср.дл.волос полx1 96 170 42 короткие м (y = −1)x2 60 180 25 короткие м (y = −1)x3 54 165 30 длинные ж (y = 1)x4 83 178 47 короткие ж (y = 1)· · · · · · · · · · · · · · · · · ·x100 108 193 32 длинные ж (y = 1)Задача обучения: x = (75, 184, 28,“короткие”), y =?

Page 21: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример пропущенных данных (missing data)

вес рост возраст ср.дл.волос полx1 96 170 42 короткие м (y = −1)x2 60 180 25 короткие -x3 54 165 - длинные ж (y = 1)x4 - 178 47 короткие ж (y = 1)· · · · · · · · · · · · · · · · · ·x100 108 193 32 длинные ж (y = 1)Задача обучения: x = (75, 184, 28,“короткие”), y =?

Page 22: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример ненужного признака

вес рост возраст ср.дл. оценка по полволос маш.обуч.

x1 96 170 42 короткие 5 мx2 60 180 25 короткие 3 -x3 54 165 - длинные 5 жx4 - 178 47 короткие 4 ж· · · · · · · · · · · · · · · · · · · · ·x100 108 193 32 длинные 3 жЗадача обучения: x = (75, 184, 28,“короткие”,5), y =?

Page 23: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример регрессионных данных

вес рост ср.дл. пол возраст (y)волос

x1 96 170 короткие м 42x2 60 180 короткие м 25x3 54 165 длинные ж 30x4 83 178 короткие ж 47· · · · · · · · · · · · · · · · · ·x100 108 193 длинные ж 32Задача обучения: определить возрастx = (75, 184,“короткие”,“м”), y =?

Page 24: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Графическое представление данных длярегрессии

Page 25: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

В этом случае нет “учителя” и “обучающая выборка”состоит только из объектов, т.е. Y отсутствует.Задача кластеризации: разбить объекты на группы(кластеры), так, чтобы в одном кластере оказалисьблизкие друг к другу объекты, а в разных кластерахобъекты были существенно различные.Кластер можно охарактеризовать как группуобъектов, имеющих общие свойства.

Page 26: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Графическое представление данных длякластеризации

Page 27: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример задачи без учителя

вес рост возраст ср.дл.волосx1 96 170 42 короткиеx2 60 180 25 короткиеx3 54 165 30 длинныеx4 83 178 47 короткие· · · · · · · · · · · · · · ·x100 108 193 32 длинныеЗадача обучения: “отгадать” пол всех людей изобучающей выборки

Page 28: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Признаковые описания

Каждый объект характеризуется набором признаков(свойств, атрибутов, features) fj : X → Dj , j = 1, ..., nТипы признаков:

Dj = {0, 1} бинарный признак;Dj = {1, 2, 3, ..., s} номинальный (категориальный)признак (красный, зеленый, синий);Dj упорядочено - порядковый признак, например,вес:(малый, средний, большой).Dj = R количественный признак

Вектор (f1(x), f2(x), ..., fn(x)) - признаковое описаниеобъекта x .

Page 29: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Признаки в примерах определения пола

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

Page 30: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Описание меток классов

В зависимости от множества Y выделяют разные типызадачи обучения:

1 Задачи классификации (classification):Y = {−1,+1} классификация на 2 класса.Y = {1, ...,M} на M непересекающихся классов.Y = {0, 1}M на M классов, которые могутпересекаться.

2 Задачи восстановления регрессии (regression):Y = R.

3 Задачи ранжирования (ranking, learning to rank): Y -конечное упорядоченное множество.

Page 31: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Модель алгоритма

Решить задачу машинного обучения означаетразработать алгоритм или модель алгоритма, зависящегоот параметров и позволяющих определить значение меткикласса (Y ) для нового объекта (x).

Page 32: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Модель алгоритма

Моделью алгоритма a называется параметрическоесемейство функций g : X → Y или g(x , θ), где θ ∈ Θпараметры в пространстве параметров.Пример: В задачах с m признаками fj(x), j = 1, ...,mиспользуются линейные модели с θ = (θ1, ..., θm):g(x , θ) =

∑mj=1 θj fj(x)

Процесс подбора оптимальной функции g иоптимального параметра θ по обучающей выборкеназывают настройкой (fitting, tuning) илиобучением (training) алгоритма a.

Page 33: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Модели алгоритмов классификации

Page 34: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Модели алгоритмов регрессии

Page 35: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

“Essentially, all models are wrong, but some are useful”- George E. P. Box

Page 36: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Функционал качества может определяться каксредняя ошибка ответов.Функционал риска или качества алгоритма aобучения есть

Q(a,X ) =

∫(L(a, x) · P(X , y)) dXdy

Функция потерь (loss function) - этонеотрицательная функция L(a, x), характеризующаявеличину ошибки алгоритма a на объекте x . ЕслиL(a, x) = 0, то ответ a(x) называется корректным.P(X , y) - совместная плотность вероятностей

Page 37: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Функции потерь

Функции потерь для классификации:

L(a, x) = [a(x) 6= y(x)] - индикатор ошибкиL(a, x) = max (0, 1− yia(x)) - петлевая функция(hinge-loss function)

Функции потерь для регрессии:

L(a, x) = |a(x)− y(x)| - абсолютное значение ошибкиL(a, x) = (a(x)− y(x))2 - квадратичная ошибка

L(a, x) ={

(y − a)2/2, если |y − a| ≤ δδ (|y − a|)− δ/2, если y − a > δ

-

функция потерь Хьюбера

Функции потерь для кластеризации:L(a, x) =

∑ni=1 minc ‖xi − ac‖2

Page 38: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Эмпирический функционал качества

Q(a,X ) =

∫(L(a, x) · P(X , y)) dXdy

Эмпирический функционал риска или качестваалгоритма a на выборке X есть

Q(a,X ) =1

n

∑ni=1L(a, xi)

Плотность P(X , y) в функционале риска заменена наэмпирическое распределение (равномерноераспределение) на элементах обучающей выборки.Задача выбора “наилучшего” метода обучения- это минимизация функционала риска по множествуA или по множеству параметров Θ.

Page 39: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Эмпирический функционал качества

Q(a,X ) = 1n

∑ni=1 [a(xi) 6= yi ] = 1

114(5 + 15) = 0.175

Page 40: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Эмпирический функционал качества

Q(a,X ) = 1n

∑ni=1 [a(xi) 6= yi ] = 1

114(3 + 14) = 0.149

Page 41: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Оценка качества обучения

Page 42: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Переобучение и недообучение в классификации

Page 43: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Проблема переобучения и недообучения

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

Page 44: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Переобучение и недообучение в регрессии

Page 45: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Переобучение и недообучение в регрессии

Page 46: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Этапы решения задачи обучения

В задачах обучения по прецедентам всегда есть два этапа:

1 Этап обучения (training): по выборке X строитсяалгоритм a и определяется функция g(x , θ) с учетомфункционала риска алгоритма a

2 Этап применения или тестирования (testing):насколько правильные или неправильные ответы a(x)выдает алгоритм a для новых объектов x .

Page 47: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Тестовые данные

“A model for data, no matter how elegant or correctly derived,must be discarded or revised if it does not fit the data or

when new or better data are found and it fails to fit them.”- Paul Velleman

Page 48: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Обучающая и тестовая выборки

Случайно разделим все имеющиеся данные на:

обучающую (train) выборку, которая используетсядля построения моделейтестовую (test) выборку, которая используется дляоценки как модель ведет себя на новых данных

Page 49: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Метод перекрестного (скользящего) контроля

Модель обучим на обучающей (train) выборке, аоценку ошибки R произведем на тестовой (test)выборке. Получим оценку R1.Поменяем выборки ролями. Получим оценку R2.Итоговая оценка качества - среднее взвешенноеоценок R1 и R2.

Page 50: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Метод перекрестного (скользящего) контроля

Обобщение этой процедуры называется методомперекрестного (скользящего) контроля(cross-validation).

Page 51: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Метод перекрестного (скользящего) контроля

Page 52: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Метод перекрестного контроля в общем виде

1 Случайным образом разобьем исходную выборку на Mнепересекающихся примерно равных по размеручастей.

2 Последовательно каждую из этих частей рассмотримв качестве тестовой выборки, а объединениеостальных частей — в качестве обучающей выборки.

3 Таким образом построим M моделей и соответственноM оценок для ошибки предсказания.

4 В качестве окончательной оценки ошибки возьмем ихсреднее взвешенное.

Page 53: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Метод перекрестного (скользящего) контроля

Page 54: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Частный случай - один отделяемый элемент

M = N - метод перекрестного контроля с однимотделяемым элементом или число частей равночислу элементов выборки(leave-one-out cross-validation, LOO)LOO — самый точный, но требует много времени

Page 55: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Этапы задачи обучения

Page 56: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Схема всего процесса машинного обучения

Page 57: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Препроцессинг

1 Задача фильтрации выбросов (outliers detection) —обнаружение в обучающей выборке небольшого числанетипичных объектов.

В некоторых приложениях их поиск являетсясамоцелью (например, обнаружение мошенничества).Следствие ошибок в данных или неточности модели,то есть шум.Используются робастные методы и одноклассоваяклассификация.

2 Задача заполнения пропущенных значений(missing values) — замена недостающих значенийпризнаков их прогнозными значениями.

Page 58: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Фильтрации выбросов в классификации

Page 59: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Фильтрация выбросов в регрессии

Page 60: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача фильтрации выбросов

Пусть (x1, y1), (x2, y2), ..., (xn, yn) - обучающая выборка,Y = {1, 2, ..., c} - множество классовОтступ: M(xi , yi) = gyi (xi)−maxy∈Y\{yi} gy (xi)

отступ отрицательный означает, что объект xi былнеправильно классифицированвеличина отступа показывает, насколькоклассификатор уверен, что объект xi может бытьотнесен к истинному классу yi

Page 61: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Удаление шумов

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

{xi : M(xi , yi) < −δ}

для достаточно большого δ > 0.Алгоритм фильтрации шумов

1 для каждого (xi , yi) в обучающей выборке T вычислитьM(xi , yi)

2 вернуть отфильтрованную обучающую выборкуT ∗ = {(xi , yi) : M(xi , yi) ≥ −δ}

Page 62: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача заполнения пропущенных значений

вес рост возраст ср.дл.волос полx1 96 170 42 короткие м (y = −1)x2 60 180 25 короткие -x3 54 165 - длинные ж (y = 1)x4 - 178 47 короткие ж (y = 1)· · · · · · · · · · · · · · · · · ·x100 108 193 32 длинные ж (y = 1)

Page 63: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Схема всего процесса машинного обучения

Page 64: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Отбор признаков и сокращение размерности (1)

Задача сокращения размерности (dimensionalityreduction) заключается в том, чтобы по исходнымпризнакам с помощью некоторых функцийпреобразования перейти к наименьшему числу новыхпризнаков, не потеряв при этом никакой существеннойинформации об объектах выборки.В классе линейных преобразований наиболееизвестным примером является метод главныхкомпонент.

Page 65: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Пример ненужного признака

вес рост возраст ср.дл. оценка по полволос маш.обуч.

x1 96 170 42 короткие 5 мx2 60 180 25 короткие 3 -x3 54 165 - длинные 5 жx4 - 178 47 короткие 4 ж· · · · · · · · · · · · · · · · · · · · ·x100 108 193 32 длинные 3 ж

Page 66: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Отбор признаков и сокращение размерности (2)

Page 67: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Отбор признаков и сокращение размерности (3)

Page 68: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Отбор признаков и сокращение размерности (4)

Page 69: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Отбор признаков и сокращение размерности (5)

Page 70: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Примеры прикладных задач

Page 71: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача о сортировке рыбы

Объект - морская рыба.Классы: лосось и морской окунь.Примеры признаков:

количественные: длина (чаще окунь длинее, чемлосось), осветленность (чаще лосось светлее, чемокунь)

Page 72: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача о сортировке рыбы

Page 73: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача о сортировке рыбы

Page 74: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача о сортировке рыбы (переобучение)

Page 75: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача о сортировке рыбы (веса классов)

Page 76: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задачи медицинской диагностики

Объект - пациент в определeнный момент времени.Классы: диагноз или способ лечения или исходзаболевания.Примеры признаков:

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

Особенности задачи:

обычно много “пропусков” в данных;нужен интерпретируемый алгоритм классификации;нужна оценка вероятности (риска | успеха | исхода).

Page 77: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Имеются данные о 114 лицах с заболеванием сердца: у 61— проблемы, у 53 — нет проблем.Для каждого пациента известны показатели:

pulse — пульс,H — содержание гемоглобина в крови.

Можно ли научиться предсказывать (допуская небольшиеошибки) наличие проблем по pulse и H у новых пациентов?

Page 78: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Page 79: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Объект - квартира в Санкт-Петербурге.Примеры признаков:

бинарные: наличие балкона, лифта, мусоропровода,охраны, и т. д.номинальные: район города, тип дома(кирпичный/панельный/блочный/монолит), и т. д.количественные: число комнат, жилая площадь,расстояние до центра, до метро, возраст дома, и т. д.

Особенности задачи: выборка неоднородна, стоимостьменяется со временем; разнотипные признаки; длялинейной модели нужны преобразования признаков.

Page 80: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача категоризации текстовых документов

Объект - текстовый документ.Классы: рубрики иерархического тематического каталога.Примеры признаков:

номинальные: автор, издание, год, и т. д.количественные: для каждого термина частота втексте, в заголовках, в аннотации, и т. д.

Особенности задачи: лишь небольшая частьдокументов имеют метки yi ; документ может относиться кнескольким рубрикам.

Page 81: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Задача ранжирования поисковой выдачи

Объект - пара <запрос, документ>.Классы: релевантен или не релевантен (разметкаделается людьми асессорами).Примеры признаков:

количественные: частота слов запроса в документе,число ссылок на документ, число кликов на документ:всего, по данному запросу, и т. д.

Особенности задачи:

оптимизируется не число ошибок, а качестворанжирования;сверхбольшие выборки;проблема конструирования признаков по сырымданным.

Page 82: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Анализ данных по экспрессии генов

ДНК-микрочипы - двумерный массив ДНК-зондов длятысяч нуклеотидных последовательностей, позволяющийизмерять экспрессию генов при разных условиях

Page 83: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Анализ данных по экспрессии генов

Page 84: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Анализ данных по экспрессии генов

Кластеризация: Группы генов выполняющие схожиефункции имеют схожие профили экспрессии.

Задача: Поиск функциональных групп генов.

Классификация: Клетка может находится в разныхсостояних (здоровая/раковая), различающихсяуровнями экспрессии генов.

Задача: Определение состояния клетки на основеданных о профилях экспрессии генов.

Page 85: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Полногеномный поиск ассоциаций

Page 86: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Полногеномный поиск ассоциаций

Page 87: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Объект - рукописный символ (цифра).Классы: 0,1,...,9Примеры признаков:

бинарные: код (признаковое описание) - битоваяматрица размера 32× 32.

1 — пиксел черный, 0 — пиксел белый.

Page 88: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Page 89: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

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

Page 90: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Страховая компания (кластеризация)

Информация об автомобилях и их владельцах:марка автомобиля; стоимость автомобиля; возрастводителя; стаж водителя; возраст автомобиляЦель - разбиение автомобилей и их владельцев наклассы, каждый из которых соответствуетопределенной рисковой группе.Наблюдения, попавшие в одну группу,характеризуются одинаковой вероятностьюнаступления страхового случая, которая впоследствииоценивается страховщиком.

Page 91: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Резюме

Основные понятия машинного обучения:объект, ответ, метка признак, алгоритм, модельалгоритмов, метод обучения, эмпирический риск,переобучение.

Этапы решения задач машинного обучения:понимание задачи и данных;предобработка данных и изобретение признаков;построение модели;сведение обучения к оптимизации;решение проблем оптимизации и переобучения;оценивание качества;внедрение и эксплуатация.

Прикладные задачи машинного обучения:очень много, очень разных,во всех областях бизнеса, науки, производства.

Page 92: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Резюме - О курсе

Различные алгоритмы и подходы к решению задачмашинного обучения:

Линейная регрессияМетод ближайших соседейБайесовский подходМашина опорных векторовНейронные сетиДеревья решенийБустинг (AdaBoost, Random Forest) и бэггингОбучение без учителя, кластеризация

Page 93: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Ресурсы

Wiki-портал http://www.machinelearning.ruВоронцов К.В. Машинное обучение (курс лекций)

см. http://www.machinelearning.ru,видео-лекцииhttp://shad.yandex.ru/lectures/machine_learning.xml

Ng A. Machine Learning Course (video, lecture notes,presentations, labs) http://ml-class.orgHastie T., Tibshirani R., Friedman J. The elements ofstatistical learning: Data Mining, Inference, andPrediction. Springer, 2009Загоруйко Н.Г. Прикладные методы анализа данных изнаний. Новосибирск: Изд-во Ин-та математики, 1999.

Page 94: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Ресурсы

Вапник В.Н., Червоненкис А.Я. Теория распознаванияобразов. М.: Наука, 1974.Мерков А.Б. Распознавание образов. Введение вметоды статистического обучения. М.: ЕдиториалУРСС, 2011.Барский А. Б. Нейронные сети: распознавание,управление, принятие решений. М.: Финансы истатистика, 2004.Флах П. Машинное обучение. Наука и искусствопостроения алгоритмов, которые извлекают знания изданных. М.: ДМК Пресс, 2015Домингос П. Верховный алгоритм: как машинноеобучение изменит наш мир. М. : Манн, Иванов иФербер, 2016.

Page 95: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Software

Система для статистических вычислений Rhttp://www.r-project.org/Библиотека алгоритмов для анализа данных Weka(Java) http://www.cs.waikato.ac.nz/~ml/weka/Пакет для решения задач машинного обучения ианализа данных Orange http://orange.biolab.si/Microsoft Azure Stack - a new hybrid cloud platformproduct (https://azure.microsoft.com/ru-ru)DL4J (Deeplearning4j) Deep Learning for Java(http://deeplearning4j.org)

Page 96: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Software еще

MLlib − Apache’s own machine learning library for Sparkand Hadoop (https://spark.apache.org/mllib/)0xdata’s H2O’s algorithms (http://www.h2o.ai/)Cloudera Oryx(https://code.google.com/archive/p/cuda-convnet2/)ConvNetJS - deep learning(http://cs.stanford.edu/people/karpathy/convnetjs/)WSO2 Machine Learner (http://wso2.com/)Данные для экспериментов: UCI Machine LearningRepository http://archive.ics.uci.edu/ml/

Page 97: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Литература по R

Мастицкий С. Э., Шитиков В. К. (2014) Статистическийанализ и визуализация данных с помощью R. -Электронная книга, 400 с.

Савельев А. А. и др. (2007) Основные понятия языка R.Уч.-мет. пособие. Казань: КГУ, 29 с.

Буховец А. Г. и др. (2010) Статистический анализ данныхв системе R. Уч. пос. Воронеж: ВГАУ, 124 с.

Зарядов И. С. (2010) Введение в статистический пакет R:типы переменных, структуры данных, чтение и записьинформации, графика. М.: Изд-во РУДН, 207 с.

Шипунов А. Б. и др. (2012) Наглядная статистика.Используем R! - М.: ДМК Пресс, 298 с.

Page 98: Машинное обучение (Machine Learning) · Основные понятияОценка качества обученияЭтапы задачи обученияПримеры

Основные понятия Оценка качества обучения Этапы задачи обучения Примеры прикладных задач

Вопросы

?