Общие понятия
Понятие машинного обучения в искусственном интеллекте
Определение: |
Машинное обучение (англ. Machine learning) — процесс, который даёт возможность компьютерам обучаться выполнять что-то без явного написания кода. |
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)
Задача обучения
$X$ — множество объектов (англ. object set, or input set)
$Y$ — множество ответов (англ. label set, or output set)
$y ∶ X → Y$ — неизвестная зависимость (англ. unknown target function (dependency))
Компьютер всегда имеет дело с признаковым описанием объектов. Например: пациента можно описать признаками: имя, возраст, номер полиса, жалобы, давление, температура, результаты анализов.
$f_j∶ X → D_j,j = 1, ... , n$ — признаки (англ. features, or attributes).
Типы признаков:
- бинарный (binary): $D_j = \{0, 1\}$
- номинальный (categorical): $D_j$ конечно
- упорядоченный (ordinal): $D_j$ конечно и упорядоченно
- количественный (numerical): $D_j = \mathbb{R}$
Объект представляется как набор признаков $(f_1(x),... ,f_n(x))$. Данные обычно представляются в виде матрицы объектов-признаков
Дано
${x_1, . . . , x_l} ⊂ X$ — обучающая выбока (англ. training sample set)
$y_i = y(x_i), i = 1, . . . , l $ — известные ответы
Найти
Найти $ a ∶ X → Y $ — алгоритм, решающую функцию (англ. decision function), приближающую $y$ на всём множестве $X$.
Типы задач
Задачи классификации (англ. classification):
- $Y = \{−1, +1\}$ — классификация на 2 класса
- $Y = \{1, . . . , M\}$ — на $M$ непересекающихся классов
- $Y = \{0, 1\}^M$— на $M$ классов, которые могут пересекаться.
Примеры: распознавание текста по рукописному вводу, определение того, находится на фотографии человек или кот.
Задачи восстановления регрессии (англ. regression):
- $Y = \mathbb{R}$ или $Y = \mathbb{R}^m$
Примеры: предсказание стоимости акции через полгода, предсказание прибыли магазина в следующем месяце, предсказание качества вина на слепом тестировании.
Задачи ранжирования (англ. ranking):
- $Y$ — конечное упорядоченное множество
Пример: выдача поискового запроса.
Задачи уменьшения размерности
Научиться описывать данные не $N$ признаками, а меньшим числом (как правило, 2-3 для последующей визуализации). В качестве примера помимо необходимости для визуализации можно привести сжатие данных.
Задачи кластеризации
Разбиение данных на похожие категории.
Примеры: разбиение клиентов сотового оператора по платёжеспособности, разбиение космических объектов на похожие (галактики, планеты, звезды и так далее).
Задачи выявления аномалий
На основании признаков научиться различать отличать аномалии от «не-аномалий». Кажется, что от задачи классификации эта задача ничем не отличается. Но особенность выявления аномалий состоит в том, что примеров аномалий для тренировки модели у нас либо очень мало, либо нет совсем, поэтому мы не можем решать такую задачу как задачу классификации.
Пример: определение мошеннических транзакций по банковской карте.
Классификация задач машинного обучения
- Обучение с учителем (англ. Supervised learning)
- Обучение без учителя (англ. Unsupervised learning)
- Обучение с частичным привлечением учителя (англ. Semi-supervised learning)
- Обучение с подкреплением (англ. Reinforcement learning)
- Активное обучение (англ. Active learning)
- Обучение в реальном времени (англ. Online learning)
- Структурное предсказание (англ. Structured prediction)
- Выбор модели и валидация (англ. Model selection and validation)
Обучение с учителем (англ. Supervised learning)
Тренировочные данные доступны все сразу и размечены (известны ответы для поставленной задачи).
Задачи которые могут решаться этим способом: классификация, регрессия, предсказание.
Обучение без учителя (англ. Unsupervised learning)
Тренировочные данные доступны все сразу, но ответы для поставленной задачи неизвестны.
Задачи, которые могут решаться этим способом: кластеризация, нахождение ассоциативных правил, выдача рекомендаций (например реклама), уменьшение размености датасета.
Обучение с частичным привлечением учителя (англ. Semi-supervised learning)
Тренировочные данные доступны все сразу, но размечено мало, либо малоинформативная часть.
Обучение с подкреплением (англ. Reinforcement learning)
Частный случай обучения с учителем, сигналы подкрепления (правильности ответа) выдаются не учителем, а некоторой средой, с которой взаимодействует программа. Размеченность данных зависит от среды.
Активное обучение (англ. Active learning)
Отличается тем, что обучаемый имеет возможность самостоятельно назначать следующий прецедент, который станет известен.
Обучение в реальном времени (англ. Online learning)
Тренировочные данные поступают последовательно.
Структурное предсказание (англ. Structured prediction)
Выбор модели и валидация (англ. Model selection and validation)
Примеры задач
- Задача классификации видов ириса (Фишер 1936)
См. также
Примечания
Источники информации
- Wiki $-$ Машинное обучение
- Курс К.В.Воронцова
- [1]