SlideShare uma empresa Scribd logo
1 de 74
Baixar para ler offline
Введение в машинное
обучение
Александр Сенов
Synqera
1. Что такое машинное обучение
2. Обучение с учителем
3. Обучение без учителя
4. Заключение
1. Что такое машинное обучение
Определения машинное обучение
Машинное обучение — обширный подраздел искусственного интеллекта, изучающий
методы построения алгоритмов, способных обучаться.
www.machinelearning.ru/wiki/index.php?title=Машинное_обучение
Машинное обучение — процесс, в результате которого машина (компьютер) способна
показывать поведение, которое в нее не было явно заложено (запрограммировано).
A.L. Samuel Some Studies in Machine Learning Using the Game of Checkers
// IBM Journal. July 1959. P. 210–229.
Говорят, что компьютерная программа обучается на основе опыта E по отношению к
некоторому классу задач T и меры качества P, если качество решения задач из T,
измеренное на основе P, улучшается с приобретением опыта E.
T.M. Mitchell Machine Learning. McGraw-Hill, 1997.
Data science diagram
Области применения
● Искусственный интеллект
● Компьютерной зрение
● Обработка естественного языка
● Принятие решений
● Робототехника
● Алгоритмическая торговля
● Банковская сфера
Применение
Обработка естественного языка
Применение
Компьютерное зрение
Применение
Обработка речи
Применение
Алгоритмическая торговля акциями
Применение
Банковская сфера
Применение
Робототехника
Применение
Анализ данных
Машинное обучение
Что это
- область науки на стыке математики и информатики
- изучает алгоритмы, задачи и их свойства
- не имеет отношения к предметной области
Зачем это
- автоматизация рутинных процессов
- обработка больших объемов данных
- задачи, которые не могут быть решены явно
Говорят, что компьютерная программа обучается на основе опыта E
по отношению к некоторой задаче T и меры качества P, если
качество решения задачи T, измеренное на основе P, улучшается с
приобретением опыта E.
T.M. Mitchell Machine Learning. McGraw-Hill, 1997.
➔ Что такое опыт E?
➔ Какие бывают задачи T?
➔ Как выбрать критерий качества P?
Вернемся к определению
Пример к определению
Задача: диагностика опухоли головного мозга по мрт
➔ Опыт E:
набор пар <мрт головного мозга, наличие опухоли>
➔ Задача T:
построить алгоритм A идентифицирующий наличие или
отсутствие опухоли головного мозга по мрт:
A(мрт головного мозга) => наличие опухоли
➔ Критерий качества P:
доля правильно поставленных диагнозов
Говорят, что компьютерная программа обучается на основе опыта E по отношению к
некоторой задаче T и меры качества P, если качество решения задачи T, измеренное на
основе P, улучшается с приобретением опыта E.
T.M. Mitchell Machine Learning. McGraw-Hill, 1997.
Объект — вектор
➔ Машинное обучение понимает язык чисел, векторов и матриц
➔ Наш опыт E — множество объектов (не чисел, векторов, матриц)
➔ Объекты:
- изображения
- пользователи
- звуки
- документы
➔ Надо представить каждый объект в виде вектора :
Как отобразить объект в вектор?
— это все не совсем верно
Изображение => вектор
Дескрипторы
Документ => вектор
1. документ - множество слов
2. слов конечное число (n)
(согласно гипотезе Ильфа-Петрова-Щукиной достаточно тридцатислов)
3. пронумеруем слова от 1 до n
4. посчитаем частоту слова i=1..n в документе:
5. получим вектор документа
Разобрались с Е
1. Опыт Е — набор векторов (+ отклики )
2. Задача Т — ?
3. Мера качества Р — ?
Задачи машинного обучения
➔ Обучение с учителем
➔ Обучение без учителя
➔ Обучение с подкреплением
Обучение с учителем
➔ Дано: множество объектов и информация о некоторых из них
Задача: экстраполировать знание на остальные объекты
➔ Опыт E: набор пар
◆ — наш объект (вектор)
◆ — информация о нем (число)
➔ Примеры
◆ распознавание объектов на изображениях
x — вектор изображения, y — идентификатор объекта
◆ предсказание цены на акцию
x — история цен до момента T, y — цена в момент T +ᅟᅠᇫ
◆ фильтрация спама
x — вектор текста письма, y — спам/не спам
➔ Опыт E:
набор пар
➔ Задача T:
построить алгоритм предсказывающий y по x:
➔ Вместо критерия качества P, функция потерь :
— штраф за ошибку
Обучение с учителем
Обучение без учителя
➔ Опыт E: множество векторов x
y — отсутствует
➔ Задача T:
построить алгоритм , выделяющий скрытую структуру на Е
➔ Мера качества Р (или функция потерь )
— очень сильно зависит от алгоритма
Обучение без учителя
➔ Обучение с учителем — есть разметка, учитель
➔ Обучение без учителя — все остальное
Например:
◆ кластеризация
◆ снижение размерности
➔ Примеры
◆ уменьшение цветового разнообразия изображения (сжатие)
x — цвет пикселя изображения, y — группа цветов
◆ поиск основных шаблонов потребления
x — история покупок пользователя, y — шаблон потребления
◆ поиск ассоциативных правил
X — множество чеков, Y — множество закономерностей
2. Обучение с учителем
Алгоритмы машинного обучения с учителем
Алгоритм обучения с учителем задает модель зависимости x ~ y
Задача — минимизировать функцию штрафа (ошибку на опыте E)
Алгоритм обучения с учителем — это
1. Модель
2. Способ минимизации
Виды обучения с учителем
➔ Регрессия
— предсказание количественной характеристики:
● стоимость акции
● кредитный риск
● интерес пользователя к предмету
➔ Классификация
— предсказание качественной характеристик:
● спам / не спам
● тип объекта на изображении
● наличие / отсутствие опухоли
Регрессия
➔ Опыт E:
набор пар <x — вектор, y — число>
➔ Задача:
построить алгоритм :
➔ Доставлящий минимум функции потерь :
меньше — лучше
Метод К - ближайших соседей
- Как предсказывать по ?
-
- для предсказания возьмем ближайших соседей
Метод К - ближайших соседей
Модель
— индексы К ближайших соседей
Метод К - ближайших соседей
Обобщающая способность
Доверяй но проверяй
● Наш опыт Е = {xi
, yi
}i=1..N
— то что нам уже известно
● Хотим найти алгоритм А, показывающий хорошее качество на всех
парах xi
, yi
, даже не входящих в E:
E∞
= {xi
, yi
}i=1..∞
● Нужно, чтобы алгоритм А не просто запоминал, а обобщал
● Разобьем Е = Еtrain
+ Etest
● На Еtrain
обучаем алгоритм, а на Etest
— проверяем
Метод К - ближайших соседей
Линейная зависимость
- Как предсказывать по ?
- Можно приблизить их зависимость прямой
Пример линейной зависимости
- какой вариант лучше?
- как формализовать ?
C
B
A
Одномерная линейная регрессия
Уравнение прямой
Модель одномерной линейной регрессии
Задача — поиск наилучшего в смысле RSS :
Одномерная линейная регрессия
Геометрическая интерпретация
Одномерная линейная регрессия
+ если модель верна и удовлетворяет некоторым
условиям, то линейная регрессия дает наилучшую оценку
- одного признака не всегда достаточно
- нелинейные зависимости не учитываются
-
Одномерная линейная регрессия
Плюсы и минусы
Модель одномерной линейной регрессии
Задача — поиск наилучшего в смысле RSS :
Множественная линейная регрессия
...как линейное многообразие размерности n-1, аппроксимирующая множество
точек наилучшим образом в смысле RSS
Множественная линейная регрессия
Два основных недостатка одномерной регрессии
1. Одного признака не достаточно
— решено явно
2. Нелинейные зависимости не учитываются
— решается заменой переменных:
Например, для квадратичной регрессии:
Множественная линейная регрессия
При покупке множественности нелинейность — бесплатно
Классификация
➔ Опыт E:
набор пар
➔ Задача:
построить алгоритм :
➔ Доставлящий минимум функции потерь :
— число ошибок (меньше — лучше)
Классификация
Пример
Классификация
– переводит число из диапазона [-∞, ∞] в диапазон [0, 1]
разница между s(x) и y ограничена
Сигмоидальная функция
Модель логистической регрессии =
сигмоидальная функция ○ линейная регрессия
Логистическая регрессия
Модель
штраф за и
Логистическая регрессия
Функция потерь
Модель
Целевая функция
Логистическая регрессия
Многомерный случай
3. Обучение без учителя
Кластеризация — задача разбиения множества объектов на группы (кластера)
таким образом, что бы объекты из разных групп отличались друг от друга
значительнее чем объекты из одной группы
Основные цели
1. сжатие данных
2. описание данных
3. определение аномалий
Кластеризация
Кластеризация
Применения
Сжатие изображений
Кластеризация
Применения
Структурирование информации
Кластеризация
Применения
Анализ и визуализация
Кластеризация
Применения
Анализ и визуализация
Кластеризация — задача разбиения множества объектов на группы (кластера)
таким образом, что бы объекты из разных групп отличались друг от друга
значительнее чем объекты из одной группы
Объекты — опыт Е =
Мера отличия — расстояние
Цель — разбить Е на кластеры таким образом, что
● — велико для из разных кластеров
● — мало для из одного кластера
Кластеризация
Цель — минимизация штрафа
где
Итеративный алгоритм
1. каждый относится к кластеру с ближайшим
2. пересчитывается как среднее всех х, принадлежащим кластеру
Метод К-средних
Метод К-средних
Иллюстрация
— снижение размерности исходных данных с минимальной потерей
информации
Основные цели
- сжатие данных
- визуализация
Снижение размерности
Снижение размерности
- Поиск прямой, проекция на которую сохранит наибольшее
количество информации
- Мера информативности — разброс
Двумерный случай
Аппроксимация прямой
— первое главное направление, — второе главное направление
Метод главных компонент
- Оба метода линейно аппроксимируют данные
- Линейная регрессия
ищет наилучшую
аппроксимацию по y
- PCA ищет наилучшую
аппроксимацию по
всем измерениям
Метод главных компонент
Отличие от регрессии
Результат
1. Главные направления
2. Проекция на главные направления
Алгоритм
1.
2.
3.
Метод главных компонент
Метод главных компонент
Применение на фотографиях лиц
4. Заключение
1. Классификация и регрессия
нелинейные методы: нейронные сети, svm, методы основанные на деревьях решений
2. Кластеризация
кластеризация на графах, иерархическая кластеризация, спектральная кластеризация
3. Снижение размерности
тематическое моделирование, ядерные методы, методы основанные на графах
4. Техники
бустинг, бэггинг, регуляризация, валидация
5. “Прочее”
Рекомендательные системы, скрытые марковские модели
Что осталось за кадром
http://scikit-learn.org/stable/tutorial/machine_learning_map/
Что осталось за кадром
● Machine Learning // Andrew Ng // coursera
— отличный вариант для старта
● Statistical Learning // Trevor Hastie, Rob Tibshirani // Stanford Lagunita
— более строгий подход с “точки зрения” статистики
● Learning from data // Yaser Abu-Mostafa // Caltech
— с упором на теорию
● Машинное Обучение // Константин Воронцов // ШАД
— глубже в теорию на русском
● Курсы по supervised, unsupervised и reinforcement learning на udacity
Онлайн курсы
● ​machinelearning.ru
— русскоязычное вики по машшинному обучению
● deeplearning.net
— портал, посвященный глубокому обучению
● scikit-learn.org
— библиотека машинного обучения для python с множеством примеров
● kdnuggets.com​
— популярный портал по анализу данных и смежным областям
● datatau.com, reddit.com/r/MachineLearning/​
— чтобы быть "в тренде"
● kaggle.com​
— реальные задачи по машшинному обучению с реальными
вознаграждениями
Полезные ресурсы
Процесс анализа данных
● Подготовка и сбор данных
● Правильная постановка задачи
● Выбор правильной функции качества
● Выбор подходящего метода для задачи
● Не ошибиться
In Data Science, 80% of time spent prepare data, 20% of time spent complain about need for prepare data.
Что остается делать человеку
Спасибо!
Вопросы?

Mais conteúdo relacionado

Mais procurados

CV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionAnton Konushin
 
20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06Computer Science Club
 
CV2011 Lecture 7. Recognition
CV2011 Lecture 7. RecognitionCV2011 Lecture 7. Recognition
CV2011 Lecture 7. RecognitionAnton Konushin
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionAnton Konushin
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.Anton Konushin
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.Anton Konushin
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrievalAnton Konushin
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
 
L13: Заключительная
L13: ЗаключительнаяL13: Заключительная
L13: ЗаключительнаяTechnosphere1
 
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Levon Avakyan
 
Реляционные базы данных
Реляционные базы данныхРеляционные базы данных
Реляционные базы данныхLevon Avakyan
 
!Predictive analytics part_3
!Predictive analytics part_3!Predictive analytics part_3
!Predictive analytics part_3Vladimir Krylov
 
Data Mining - lecture 4 - 2014
Data Mining - lecture 4 - 2014Data Mining - lecture 4 - 2014
Data Mining - lecture 4 - 2014Andrii Gakhov
 
Data Mining - lecture 3 - 2014
Data Mining - lecture 3 - 2014Data Mining - lecture 3 - 2014
Data Mining - lecture 3 - 2014Andrii Gakhov
 
экспертные системы
экспертные системыэкспертные системы
экспертные системыsokol_klinik
 

Mais procurados (20)

CV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. Detection
 
20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06
 
4 azure 24 04
4 azure 24 044 azure 24 04
4 azure 24 04
 
CV2011 Lecture 7. Recognition
CV2011 Lecture 7. RecognitionCV2011 Lecture 7. Recognition
CV2011 Lecture 7. Recognition
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time vision
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrieval
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
 
L13: Заключительная
L13: ЗаключительнаяL13: Заключительная
L13: Заключительная
 
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей.
 
Реляционные базы данных
Реляционные базы данныхРеляционные базы данных
Реляционные базы данных
 
Машинное обучение
Машинное обучениеМашинное обучение
Машинное обучение
 
!Predictive analytics part_3
!Predictive analytics part_3!Predictive analytics part_3
!Predictive analytics part_3
 
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
 
Data Mining - lecture 4 - 2014
Data Mining - lecture 4 - 2014Data Mining - lecture 4 - 2014
Data Mining - lecture 4 - 2014
 
Data Mining - lecture 3 - 2014
Data Mining - lecture 3 - 2014Data Mining - lecture 3 - 2014
Data Mining - lecture 3 - 2014
 
экспертные системы
экспертные системыэкспертные системы
экспертные системы
 
Котиков Простые методы выделения ключевых слов и построения рефератов
Котиков Простые методы выделения ключевых слов и построения рефератовКотиков Простые методы выделения ключевых слов и построения рефератов
Котиков Простые методы выделения ключевых слов и построения рефератов
 
Разрешение лексической неоднозначности
Разрешение лексической неоднозначностиРазрешение лексической неоднозначности
Разрешение лексической неоднозначности
 

Semelhante a Введение в машинное обучение

программирование как средство развития мышления
программирование как средство развития мышленияпрограммирование как средство развития мышления
программирование как средство развития мышленияinna221290
 
Практический курс «Основы Data Mining»
Практический курс «Основы Data Mining»Практический курс «Основы Data Mining»
Практический курс «Основы Data Mining»ScienceHunter1
 
Введение в машинное обучение
Введение в машинное обучениеВведение в машинное обучение
Введение в машинное обучениеGrigory Sapunov
 
Михаил Александров, Индуктивное моделирование
Михаил Александров, Индуктивное моделированиеМихаил Александров, Индуктивное моделирование
Михаил Александров, Индуктивное моделированиеLidia Pivovarova
 
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)Ontico
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игрыGala Timofeeva
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игрыGala Timofeeva
 
!Predictive analytics part_2
!Predictive analytics part_2!Predictive analytics part_2
!Predictive analytics part_2Vladimir Krylov
 
Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Lidia Pivovarova
 
Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Lidia Pivovarova
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013AliyaAringazinova
 
аксиоматический подход в математике матрицы и определители
аксиоматический подход в математике матрицы и определителиаксиоматический подход в математике матрицы и определители
аксиоматический подход в математике матрицы и определителиAnna1978
 
практика 5
практика 5практика 5
практика 5student_kai
 
Обзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхОбзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхmaxkalachev
 
Обзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхОбзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхSoftline
 
Алгоритмы и структуры данных весна 2014 лекция 1
Алгоритмы и структуры данных весна 2014 лекция 1Алгоритмы и структуры данных весна 2014 лекция 1
Алгоритмы и структуры данных весна 2014 лекция 1Technopark
 

Semelhante a Введение в машинное обучение (20)

программирование как средство развития мышления
программирование как средство развития мышленияпрограммирование как средство развития мышления
программирование как средство развития мышления
 
Практический курс «Основы Data Mining»
Практический курс «Основы Data Mining»Практический курс «Основы Data Mining»
Практический курс «Основы Data Mining»
 
Введение в машинное обучение
Введение в машинное обучениеВведение в машинное обучение
Введение в машинное обучение
 
Михаил Александров, Индуктивное моделирование
Михаил Александров, Индуктивное моделированиеМихаил Александров, Индуктивное моделирование
Михаил Александров, Индуктивное моделирование
 
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)
Современные архитектуры диалоговых систем / Анатолий Востряков (Segmento)
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
 
!Predictive analytics part_2
!Predictive analytics part_2!Predictive analytics part_2
!Predictive analytics part_2
 
Machine
MachineMachine
Machine
 
л 2 7
л 2 7л 2 7
л 2 7
 
Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.
 
Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.Михаил Александров. Индуктивное моделирование.
Михаил Александров. Индуктивное моделирование.
 
87
8787
87
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013
 
Введение в алгоритмы и структуры данных
Введение в алгоритмы и структуры данныхВведение в алгоритмы и структуры данных
Введение в алгоритмы и структуры данных
 
аксиоматический подход в математике матрицы и определители
аксиоматический подход в математике матрицы и определителиаксиоматический подход в математике матрицы и определители
аксиоматический подход в математике матрицы и определители
 
практика 5
практика 5практика 5
практика 5
 
Обзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхОбзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данных
 
Обзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данныхОбзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данных
 
Алгоритмы и структуры данных весна 2014 лекция 1
Алгоритмы и структуры данных весна 2014 лекция 1Алгоритмы и структуры данных весна 2014 лекция 1
Алгоритмы и структуры данных весна 2014 лекция 1
 

Введение в машинное обучение

  • 2. 1. Что такое машинное обучение 2. Обучение с учителем 3. Обучение без учителя 4. Заключение
  • 3. 1. Что такое машинное обучение
  • 4. Определения машинное обучение Машинное обучение — обширный подраздел искусственного интеллекта, изучающий методы построения алгоритмов, способных обучаться. www.machinelearning.ru/wiki/index.php?title=Машинное_обучение Машинное обучение — процесс, в результате которого машина (компьютер) способна показывать поведение, которое в нее не было явно заложено (запрограммировано). A.L. Samuel Some Studies in Machine Learning Using the Game of Checkers // IBM Journal. July 1959. P. 210–229. Говорят, что компьютерная программа обучается на основе опыта E по отношению к некоторому классу задач T и меры качества P, если качество решения задач из T, измеренное на основе P, улучшается с приобретением опыта E. T.M. Mitchell Machine Learning. McGraw-Hill, 1997.
  • 6. Области применения ● Искусственный интеллект ● Компьютерной зрение ● Обработка естественного языка ● Принятие решений ● Робототехника ● Алгоритмическая торговля ● Банковская сфера
  • 14. Машинное обучение Что это - область науки на стыке математики и информатики - изучает алгоритмы, задачи и их свойства - не имеет отношения к предметной области Зачем это - автоматизация рутинных процессов - обработка больших объемов данных - задачи, которые не могут быть решены явно
  • 15. Говорят, что компьютерная программа обучается на основе опыта E по отношению к некоторой задаче T и меры качества P, если качество решения задачи T, измеренное на основе P, улучшается с приобретением опыта E. T.M. Mitchell Machine Learning. McGraw-Hill, 1997. ➔ Что такое опыт E? ➔ Какие бывают задачи T? ➔ Как выбрать критерий качества P? Вернемся к определению
  • 16. Пример к определению Задача: диагностика опухоли головного мозга по мрт ➔ Опыт E: набор пар <мрт головного мозга, наличие опухоли> ➔ Задача T: построить алгоритм A идентифицирующий наличие или отсутствие опухоли головного мозга по мрт: A(мрт головного мозга) => наличие опухоли ➔ Критерий качества P: доля правильно поставленных диагнозов Говорят, что компьютерная программа обучается на основе опыта E по отношению к некоторой задаче T и меры качества P, если качество решения задачи T, измеренное на основе P, улучшается с приобретением опыта E. T.M. Mitchell Machine Learning. McGraw-Hill, 1997.
  • 17. Объект — вектор ➔ Машинное обучение понимает язык чисел, векторов и матриц ➔ Наш опыт E — множество объектов (не чисел, векторов, матриц) ➔ Объекты: - изображения - пользователи - звуки - документы ➔ Надо представить каждый объект в виде вектора : Как отобразить объект в вектор? — это все не совсем верно
  • 19. Документ => вектор 1. документ - множество слов 2. слов конечное число (n) (согласно гипотезе Ильфа-Петрова-Щукиной достаточно тридцатислов) 3. пронумеруем слова от 1 до n 4. посчитаем частоту слова i=1..n в документе: 5. получим вектор документа
  • 20. Разобрались с Е 1. Опыт Е — набор векторов (+ отклики ) 2. Задача Т — ? 3. Мера качества Р — ?
  • 21. Задачи машинного обучения ➔ Обучение с учителем ➔ Обучение без учителя ➔ Обучение с подкреплением
  • 22. Обучение с учителем ➔ Дано: множество объектов и информация о некоторых из них Задача: экстраполировать знание на остальные объекты ➔ Опыт E: набор пар ◆ — наш объект (вектор) ◆ — информация о нем (число) ➔ Примеры ◆ распознавание объектов на изображениях x — вектор изображения, y — идентификатор объекта ◆ предсказание цены на акцию x — история цен до момента T, y — цена в момент T +ᅟᅠᇫ ◆ фильтрация спама x — вектор текста письма, y — спам/не спам
  • 23. ➔ Опыт E: набор пар ➔ Задача T: построить алгоритм предсказывающий y по x: ➔ Вместо критерия качества P, функция потерь : — штраф за ошибку Обучение с учителем
  • 24. Обучение без учителя ➔ Опыт E: множество векторов x y — отсутствует ➔ Задача T: построить алгоритм , выделяющий скрытую структуру на Е ➔ Мера качества Р (или функция потерь ) — очень сильно зависит от алгоритма
  • 25. Обучение без учителя ➔ Обучение с учителем — есть разметка, учитель ➔ Обучение без учителя — все остальное Например: ◆ кластеризация ◆ снижение размерности ➔ Примеры ◆ уменьшение цветового разнообразия изображения (сжатие) x — цвет пикселя изображения, y — группа цветов ◆ поиск основных шаблонов потребления x — история покупок пользователя, y — шаблон потребления ◆ поиск ассоциативных правил X — множество чеков, Y — множество закономерностей
  • 26. 2. Обучение с учителем
  • 27. Алгоритмы машинного обучения с учителем Алгоритм обучения с учителем задает модель зависимости x ~ y Задача — минимизировать функцию штрафа (ошибку на опыте E) Алгоритм обучения с учителем — это 1. Модель 2. Способ минимизации
  • 28. Виды обучения с учителем ➔ Регрессия — предсказание количественной характеристики: ● стоимость акции ● кредитный риск ● интерес пользователя к предмету ➔ Классификация — предсказание качественной характеристик: ● спам / не спам ● тип объекта на изображении ● наличие / отсутствие опухоли
  • 29. Регрессия ➔ Опыт E: набор пар <x — вектор, y — число> ➔ Задача: построить алгоритм : ➔ Доставлящий минимум функции потерь : меньше — лучше
  • 30. Метод К - ближайших соседей - Как предсказывать по ? - - для предсказания возьмем ближайших соседей
  • 31. Метод К - ближайших соседей Модель — индексы К ближайших соседей
  • 32. Метод К - ближайших соседей
  • 33. Обобщающая способность Доверяй но проверяй ● Наш опыт Е = {xi , yi }i=1..N — то что нам уже известно ● Хотим найти алгоритм А, показывающий хорошее качество на всех парах xi , yi , даже не входящих в E: E∞ = {xi , yi }i=1..∞ ● Нужно, чтобы алгоритм А не просто запоминал, а обобщал ● Разобьем Е = Еtrain + Etest ● На Еtrain обучаем алгоритм, а на Etest — проверяем
  • 34. Метод К - ближайших соседей
  • 35. Линейная зависимость - Как предсказывать по ? - Можно приблизить их зависимость прямой
  • 36. Пример линейной зависимости - какой вариант лучше? - как формализовать ? C B A
  • 37. Одномерная линейная регрессия Уравнение прямой Модель одномерной линейной регрессии Задача — поиск наилучшего в смысле RSS :
  • 40. + если модель верна и удовлетворяет некоторым условиям, то линейная регрессия дает наилучшую оценку - одного признака не всегда достаточно - нелинейные зависимости не учитываются - Одномерная линейная регрессия Плюсы и минусы
  • 41. Модель одномерной линейной регрессии Задача — поиск наилучшего в смысле RSS : Множественная линейная регрессия
  • 42. ...как линейное многообразие размерности n-1, аппроксимирующая множество точек наилучшим образом в смысле RSS Множественная линейная регрессия
  • 43. Два основных недостатка одномерной регрессии 1. Одного признака не достаточно — решено явно 2. Нелинейные зависимости не учитываются — решается заменой переменных: Например, для квадратичной регрессии: Множественная линейная регрессия При покупке множественности нелинейность — бесплатно
  • 44. Классификация ➔ Опыт E: набор пар ➔ Задача: построить алгоритм : ➔ Доставлящий минимум функции потерь : — число ошибок (меньше — лучше)
  • 47. – переводит число из диапазона [-∞, ∞] в диапазон [0, 1] разница между s(x) и y ограничена Сигмоидальная функция
  • 48. Модель логистической регрессии = сигмоидальная функция ○ линейная регрессия Логистическая регрессия Модель
  • 49. штраф за и Логистическая регрессия Функция потерь
  • 51. 3. Обучение без учителя
  • 52. Кластеризация — задача разбиения множества объектов на группы (кластера) таким образом, что бы объекты из разных групп отличались друг от друга значительнее чем объекты из одной группы Основные цели 1. сжатие данных 2. описание данных 3. определение аномалий Кластеризация
  • 57. Кластеризация — задача разбиения множества объектов на группы (кластера) таким образом, что бы объекты из разных групп отличались друг от друга значительнее чем объекты из одной группы Объекты — опыт Е = Мера отличия — расстояние Цель — разбить Е на кластеры таким образом, что ● — велико для из разных кластеров ● — мало для из одного кластера Кластеризация
  • 58. Цель — минимизация штрафа где Итеративный алгоритм 1. каждый относится к кластеру с ближайшим 2. пересчитывается как среднее всех х, принадлежащим кластеру Метод К-средних
  • 60. — снижение размерности исходных данных с минимальной потерей информации Основные цели - сжатие данных - визуализация Снижение размерности
  • 62. - Поиск прямой, проекция на которую сохранит наибольшее количество информации - Мера информативности — разброс Двумерный случай Аппроксимация прямой
  • 63. — первое главное направление, — второе главное направление Метод главных компонент
  • 64. - Оба метода линейно аппроксимируют данные - Линейная регрессия ищет наилучшую аппроксимацию по y - PCA ищет наилучшую аппроксимацию по всем измерениям Метод главных компонент Отличие от регрессии
  • 65. Результат 1. Главные направления 2. Проекция на главные направления Алгоритм 1. 2. 3. Метод главных компонент
  • 68. 1. Классификация и регрессия нелинейные методы: нейронные сети, svm, методы основанные на деревьях решений 2. Кластеризация кластеризация на графах, иерархическая кластеризация, спектральная кластеризация 3. Снижение размерности тематическое моделирование, ядерные методы, методы основанные на графах 4. Техники бустинг, бэггинг, регуляризация, валидация 5. “Прочее” Рекомендательные системы, скрытые марковские модели Что осталось за кадром
  • 70. ● Machine Learning // Andrew Ng // coursera — отличный вариант для старта ● Statistical Learning // Trevor Hastie, Rob Tibshirani // Stanford Lagunita — более строгий подход с “точки зрения” статистики ● Learning from data // Yaser Abu-Mostafa // Caltech — с упором на теорию ● Машинное Обучение // Константин Воронцов // ШАД — глубже в теорию на русском ● Курсы по supervised, unsupervised и reinforcement learning на udacity Онлайн курсы
  • 71. ● ​machinelearning.ru — русскоязычное вики по машшинному обучению ● deeplearning.net — портал, посвященный глубокому обучению ● scikit-learn.org — библиотека машинного обучения для python с множеством примеров ● kdnuggets.com​ — популярный портал по анализу данных и смежным областям ● datatau.com, reddit.com/r/MachineLearning/​ — чтобы быть "в тренде" ● kaggle.com​ — реальные задачи по машшинному обучению с реальными вознаграждениями Полезные ресурсы
  • 73. ● Подготовка и сбор данных ● Правильная постановка задачи ● Выбор правильной функции качества ● Выбор подходящего метода для задачи ● Не ошибиться In Data Science, 80% of time spent prepare data, 20% of time spent complain about need for prepare data. Что остается делать человеку