Понятие машинного обучения
Задачи машинного обучения
Когда используется машинное обучение?
Задачи машинного обучения
Примеры задач машинного обучения
Определение учебной задачи
Классы задач
Классы задач
Задача ранжирования
Обучающая выборка
Постановка задачи машинного обучения
Процесс обучения
Методики машинного обучения
Модели машинного обучения
Линейная регрессия
Логистическая регрессия
Алгоритмы Байеса
Метод опорных векторов
Деревья принятия решений
Случайный лес
К-ближайших соседей
К-ближайших соседей
Кластеризация К-средних
Данные в машинном обучении
Данные в машинном обучении
10.78M

Л1. Введение в машинное обучение (1)

1.

2. Понятие машинного обучения

Машинное обучение – это алгоритмы, которые можно
обучать, то есть, настраивать под решение конкретных
задач
Машинное обучение — это наука, изучающая
алгоритмы, автоматически улучшающиеся благодаря
опыту.
(х)=x2 - 4x - 2
x= 4/2 = 2
Математические задачи
относительно просто (с математической и вычислительной точки зрения)
получить требуемый результат
Прикладные задачи
Установить или обнаружить закономерности, с помощью которых пользователи
могут создавать прогнозы либо классифицировать информацию.
2

3. Задачи машинного обучения

• перевести текст с одного языка на другой;
1)
• диагностировать болезнь по симптомам;
• сравнить, какой из двух документов в интернете
лучше подходит под данный поисковый запрос;
• сказать, что изображено на картинке;
• оценить, по какой цене удастся продать квартиру.
решение – функция
(отображение объектов или примеров (sampl
es) в предсказания (targets))
ли у этих задач есть единственно верное,
2) вряд
идеальное решение
много примеров правильных ответов, а
3) есть
примеры неправильных ответов не
составляет труда сконструировать
Функция, отображающую объекты в предсказания — модель
Набор примеров — обучающая выборка или датасет.
• объекты (скачанные из интернета картинки, истории больных, активность пользователей сервиса
и так далее);
• ответы (подписи к картинкам, диагнозы, информация об уходе пользователей с сервиса) таргеты.
3

4. Когда используется машинное обучение?

МО используется, когда:
• Человеческого опыта не существует (навигация на Марсе)
• Люди не могут объяснить свой опыт (распознавание речи)
• Модели должны быть настроены (персонализированная медицина)
• Модели основаны на огромных объемах данных (геномика)
Обучение не всегда полезно. Например, нет необходимости «учиться» рассчитывать заработную
плату.
3

5. Задачи машинного обучения

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

6. Примеры задач машинного обучения

Еще несколько примеров задач, которые лучше всего решаются с помощью обучающего алгоритма
• Распознавание шаблонов:
• Идентификация лиц или выражения лица
• Рукописные или устные слова
• Медицинские изображения
• Создание шаблонов:
• Создание изображений или последовательностей движений
• Распознавание аномалий:
• Необычные транзакции по кредитным картам
• Необычные шаблоны показаний датчиков на атомной электростанции
• Прогнозирование:
• Будущие цены акций или курсы валют
3

7. Определение учебной задачи

Улучшение задачи T в отношении показателя производительности P на основе опыта E
T: Игра в шашки
P: Процент выигранных игр против произвольного противника
E: Игра в тренировочные игры против самого себя
T: Распознавание рукописных слов
P: Процент правильно классифицированных слов
E: База данных изображений рукописных слов, помеченных человеком
T: Вождение по четырехполосным шоссе с использованием датчиков зрения
P: Среднее расстояние, пройденное до ошибки, оцененной человеком
E: Последовательность изображений и команд рулевого управления, записанных при наблюдении за водителемчеловеком.
T: Категоризация сообщений электронной почты как спам или легитимных.
P: Процент правильно классифицированных сообщений электронной почты.
E: База данных писем, некоторые с метками, присвоенными человеком
3

8. Классы задач

1. Предсказание температуры окружающей среды на следующей день.
2. Стилизация текста. Например, перевод на бюрократический язык: «Пиппина и Мерри
похитили!» ↦ «Граждане Тук, Перегрин Паладинович, 2990 года рождения, и Брендибак, Мериадок
Сарадокович, 2982 года рождения, были похищены неустановленными лицами».
3. Детектирование котиков на изображении.
4. Обучение робота запрыгивать на стол.
5. Поиск наборов товаров, которые посетители супермаркета часто покупают вместе.
задача регрессии
задача классификации
задача генерации новых объектов
задача обучения с учителем
задача обучения без учителя
задача обучения с подкреплением
6

9. Классы задач

Данные представляются набором некоторых чисел или
векторов
Множество наборов можно представить в виде матрицы
Выходные данные (целевые (target) или таргеты)
Задачи обучения делятся на следующие виды:
1. Y = R или Y = RM — регрессия.
2. Y = {0, 1} — бинарная классификация.
3. Y = {1,…, K} — многоклассовая (multiclass) классификация.
4. Y = {0, 1}K — многоклассовая классификация с пересекающимися классами (multilabel classification).
5. Y — конечное упорядоченное множество — ранжирование.
5

10. Задача ранжирования

Ранжирование — это задача с таргетом из конечного упорядоченного множества (1,…,K).
Казалось бы, её запросто можно было бы рассматривать как задачу классификации на K классов или
задачу регрессии.
В чём же проблема? Почему так не делают?
7

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

Обучающая выборка
Размеченные данные
Входной вектор (наблюдение)
Значение (или вектор)
Извлечение признаков из сырых исходных данных - функциональное
преобразование:
x – это вектор результатов исходных измерений, который затем, переводится в набор признаков
w - любое число, не обязательно равное n.
Матрица F, содержащая эти выделенные признаки:
Получаем новое признаковое пространство F, упрощающее работу алгоритмов машинного
обучения.
8

12. Постановка задачи машинного обучения

входы
выходы
Функциональная зависимость
Отображение
Поиск решающей функции (decision function)
в виде некоторой параметрической
функции
Приближение
ответов
​настраиваемый набор параметров
9

13. Процесс обучения

Машинное обучение (ML) — основано на использовании математических моделей данных, которые
помогают компьютеру обучаться без непосредственных инструкций. Оно считается одной из форм
искусственного интеллекта (ИИ).
Глубокое
обучение
(DL)

это
специализированная
форма
машинного
обучения, использующая нейронные сети (NN)
для предоставления ответов.
Алгоритмы глубокого обучения могут самостоятельно определять точность. Они позволяют
классифицировать информацию так же, как человеческий мозг.
Такие алгоритмы лежат в основе некоторых систем ИИ, наиболее близких к мышлению человека.
10

14. Методики машинного обучения

Контролируемое обучение (обучение с учителем)
Алгоритмы обеспечивают прогнозирование на основе набора
помеченных примеров. Эта методика полезна, если мы знаем, как
должен выглядеть результат.
Неконтролируемое обучение (обучение без учителя)
Точки данных помечать не нужно. Алгоритм помечает их
автоматически, упорядочивая данные или описывая их структуру.
Этот метод полезен, если неизвестно, каким должен быть
результат.
Обучение с подкреплением — это метод машинного обучения,
при котором компьютерный агент учится выполнять задачу
посредством повторяющихся проб и ошибок при
взаимодействии с динамической средой. Этот подход к обучению
позволяет агенту принимать ряд решений, которые
максимизируют показатель вознаграждения за задачу без
вмешательства человека и без явного программирования для
выполнения задачи.
11

15. Модели машинного обучения

• Линейная регрессия
• Одномерная линейная регрессия
• Многомерная линейная регрессия
Прогнозирование значений
Полезно при определении причины и следствия
использования различных переменных.
• Логистическая регрессия
• Одноклассовая (бинарная) классификация
• Многоклассовая классификация
Выявление отклонений
Часто используется для определения потенциальных
рисков.
Определение структуры
Процесс машинного обучения часто начинается с
алгоритмов кластеризации, которые раскрывают
базовую структуру в наборе данных.
Древо решений
Случайный лес
Метод опорных векторов
Метод K-ближайших соседей
K-кратная перекрестная проверка
Кластеризация K-средних
Наивный Байес
Прогнозирование категорий
Алгоритмы классификации помогают определить
правильную категорию информации.
12

16. Линейная регрессия

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

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

Алгоритмы логистической регрессии позволяют вписывать в представление данных непрерывную
S-образную кривую.
Линейная
регрессия
используется
для
прогнозирования
непрерывной
зависимой
переменной, тогда как логистическая регрессия
применяется для моделирования вероятности
отнесения объекта к определенному классу.
логистическая регрессия использует логистическую
функцию (сигмоиду) для оценки вероятности
14

18. Алгоритмы Байеса

Алгоритмы наивного Байеса — это группа простых вероятностных классификационных алгоритмов,
основанных на принципе байесовской классификации с предположением о "наивности" (независимости)
признаков.
все признаки входных данных независимы друг от друга
при условии заданного класса.
вычисления вероятностей принадлежности объекта к
определенному классу на основе вероятностей признаков.
15

19. Метод опорных векторов

Алгоритм опорных векторов (SVM) — это метод обучения с учителем, который используется как для задач
классификации, так и для регрессии.
Основная идея SVM заключается в поиске оптимальной
разделяющей гиперплоскости, которая максимизирует
зазор между классами. Это позволяет улучшить
обобщающую способность модели.
SVM может использовать ядровую технику для
преобразования данных в пространство более высокой
размерности, где линейная разделяющая гиперплоскость
может быть построена.
SVM включает в себя параметр регуляризации, который
помогает предотвратить переобучение модели путем
штрафования за сложность модели.
16

20. Деревья принятия решений

Алгоритм дерева принятия решений — это метод обучения с учителем, который используется для задач
классификации и регрессии.
Дерево принятия решений строится путем
разделения признаков на каждом узле в дереве
на основе некоторого критерия, который
обычно
направлен
на
уменьшение
неопределенности (например, критерий Джини
или энтропия).
Каждый узел в дереве представляет собой условие
на одном из признаков, а каждое ребро
представляет возможный результат этого условия.
Цель состоит в том, чтобы дойти до листьев дерева,
где принимается окончательное решение.
17

21. Случайный лес

Алгоритм случайного леса — это ансамблевый метод машинного обучения, который основан на
комбинации нескольких деревьев принятия решений.
Для построения каждого дерева в случайном лесу
используется бутстрэп выборка (выборка с возвращением)
из исходного набора данных. Это позволяет создавать
разнообразные деревья на основе различных подвыборок
данных.
Случайный лес состоит из большого количества деревьев
принятия решений, которые работают параллельно. При
классификации или регрессии результаты всех деревьев
усредняются для получения окончательного прогноза.
18

22. К-ближайших соседей

Алгоритм k-ближайших соседей (k-NN) — это метод обучения без учителя, который используется для задач
классификации и регрессии.
Для классификации или регрессии алгоритм k-NN ищет k
ближайших соседей к новому объекту в обучающем
наборе данных.
Для задачи классификации, класс объекта определяется
путем голосования среди ближайших соседей (например,
большинство голосов).
Для задачи регрессии, значение объекта может быть
определено, например, как среднее значение значений
ближайших соседей.
Для определения ближайших соседей используется метрика расстояния, такая как
евклидово расстояние или манхэттенское расстояние.
19

23. К-ближайших соседей

K-кратная перекрестная проверка (K-fold cross-validation) — это метод оценки производительности модели
машинного обучения, который помогает оценить обобщающую способность модели на основе доступных
данных.
Исходный набор данных разделяется на K подмножеств
(фолдов) примерно одинакового размера.
Алгоритм выполняет K итераций, где каждая итерация
использует одно из подмножеств в качестве тестового
набора данных, а все остальные подмножества
используются в качестве обучающего набора данных.
K-кратная
перекрестная
проверка
обеспечивает более надежную оценку
производительности модели, чем простое
разделение на обучающий и тестовый
наборы данных
K-кратная перекрестная проверка широко используется в машинном обучении для выбора
гиперпараметров модели, сравнения различных моделей и оценки их производительности.
20

24. Кластеризация К-средних

Алгоритм кластеризации K-средних (K-means) — это метод машинного обучения, который используется для
разделения набора данных на заранее неизвестное количество кластеров.
Начальные центроиды для кластеров выбираются
случайным
образом
или
иным
способом.
Центроиды
представляют
собой
точки
в
пространстве, которые представляют центры
кластеров.
Для каждого объекта в наборе данных
определяется ближайший центроид, и объекты
присваиваются к соответствующим кластерам.
После присвоения объектов кластерам центроиды
пересчитываются путем вычисления среднего
значения всех объектов в каждом кластере. Это
обновление положения центроидов.
Алгоритм K-средних широко используется в различных областях, таких как сегментация рынка,
анализ изображений, геномика и т.д.
21

25. Данные в машинном обучении

Достаточное количество данных и их качество
задача аннотирования изображений (image
captioning)
пары (изображение, описание)
использование краудсорсинга, то есть привлечение
1) людей, готовых разметить много данных.
2) использовании неразмеченных данных.
Подходы, связанные с использованием неразмеченных данных для решения задач обучения с
учителем, объединяются термином self-supervised learning и очень активно используются
сейчас. Важной составляющей является обучение представлений (representation learning) —
задача построения компактных векторов небольшой размерности из сложных по структуре
данных, например, изображений, звука, текстов, графов, так, чтобы близкие по структуре или
семантике данные получали метрически близкие представления.
22

26. Данные в машинном обучении

Для работы с объектом модель должна опираться на какие-то его свойства, например, доход
человека, цвет левого верхнего пикселя на изображении или частоту встречаемости слова
«интеграл» в тексте.
Эти свойства обычно называются признаками, а совокупность свойств, которые мы выделили
Усилия
по
у объекта – его признаковым описанием.
извлечению
из
Распространённых разновидностей признаков:
данных
• Численные – например, рост или доход. Иногда отдельно выделяют
вещественные и целочисленные признаки.
• Категориальные признаки принимают значения из некоторого
дискретного множества. Например, профессия человека или день
недели.
• Бинарные признаки принимают два значения: 0 и 1 или «да» и «нет».
С ними можно работать и как с численными, и как с
категориальными.
• Среди категориальных признаков иногда выделяют ординальные.
Они принимают значения из некоторого упорядоченного дискретного
множества. Например, класс опасности химического вещества
признаков
называют feature
engineering.
Если все
признаки
являются
численными.
Тогда с таблицей
можно работать
как с объектом
линейной
алгебры –
матрицей
объекты23
признаки.
English     Русский Rules