Изменения

Перейти к: навигация, поиск

Общие понятия

6297 байт добавлено, 15:52, 21 марта 2020
Нет описания правки
{{Определение
|definition=
Говорят, что компьютерная Компьютерная '''программа обучается''' на опыте основе опыта $E$ относительно некоторой задачи по отношению к некоторому классу задач $T$ и некоторой меры производительности качества $P$, если ее производительность на качество решения задач из $T$, измеренная измеренное на основе $P$, улучшается с опытом приобретением опыта $E$.
}}
$X$ {{---}} множество объектов (англ. '''object set''', or ''input set'') <br />
$Y$ {{---}} множество меток классов (англ. '''label set''', or ''output set'') <br />
$y ∶ \hat y∶ X → Y$ {{---}} неизвестная зависимость (англ. '''unknown target function''' ''(dependency)'') <br />
'''Дано''' <br />${x_1, . . . , x_l} ⊂ X$ {{---}} обучающая выборка (англ. ''training sample set'') <br />$y_i = \hat y(x_i), i = 1, . . . , l $ {{---}} известные метки классов <br />'''Найти''' <br />Найти $ a ∶ X → Y $ {{---}} алгоритм, решающую функцию (англ. '''decision function'''), приближающую $y$ на всём множестве $X$.=== Признаки ===Компьютер всегда имеет дело с признаковым описанием объектов. ''Например:,'' пациента можно описать признаками: имя, возраст, номер полиса, жалобы, давление, температура, результаты анализов. <br />
$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))$. Данные обычно представляются в виде матрицы объектов-признаков
т.е объект представляется как набор признаков $(f_1(x),... ,f_n(x))$. Данные обычно представляются в виде матрицы объектов-признаков <br />
<tex>
F = ||f_j(x_i)||_{[l \times n]} =
\end{pmatrix}
</tex> <br />
'''Дано''' <br />${x_1, . . . , x_l} ⊂ X$ {{---}} обучающая выбока (англ. ''training sample set'') <br />$y_i = y(x_i), i = 1, . . . , l $ {{---}} известные метки классов <br />'''Найти''' <br />Найти $ a ∶ X → Y $ {{---}} алгоритм, решающую функцию (англ. '''decision function'''), приближающую $y$ на всём множестве $X$.
----
 
=== Типы задач ===
'''Задачи классификацииКлассификация''' (англ. ''classification''):<br/>* $Y = \{−1, +1\}$ — классификация на 2 класса;* $Y = \{1, . . . , M\}$ — на $M$ непересекающихся классов;* $Y = \{0, 1\}^M$— на $M$ классов, которые могут пересекаться.<br/> ''Цель'': научиться определять, к какому классу принадлежит объект. <br/>''Примеры:'' : распознавание текста по рукописному вводу, ; определение того, находится на фотографии человек или кот; определение, является ли письмо спамом.<br/>''Методы'Задачи восстановления ': [[Метрический классификатор и метод ближайших соседей|метод ближайших соседей]], [[Дерево решений и случайный лес|дерево решений]], [[Логистическая регрессия|логистическая регрессия]], [[Метод опорных векторов (SVM)|метод опорных векторов]], [[Байесовская классификация|байесовский классификатор]], [[Сверточные нейронные сети|cверточные нейронные сети]]. '''Восстановление регрессии''' (англ. ''regression''):<br/>* $Y = \mathbb{R}$ или $Y = \mathbb{R}^m$. <br/> ''Цель'': получать прогноз на основе выборки объектов. <br/>''Примеры:'' : предсказание стоимости акции через полгода, ; предсказание прибыли магазина в следующем месяце, ; предсказание качества вина на слепом тестировании.<br/>''Методы'': [[Линейная регрессия|линейная регрессия]], [[Дерево решений и случайный лес|дерево решений]], [[Метод опорных векторов (SVM)|метод опорных векторов]]. '''Задачи ранжированияРанжирование''' (англ. ''ranking''):<br/>{{main|Ранжирование}}* $Y$ {{---}} конечное упорядоченное множество. <br/> ''ПримерЦель'':научиться по множеству объектов получать множество рейтингов, упорядоченное согласно заданному отношению порядка. <br/>''Примеры'' : выдача поискового запроса; подбор интересных новостей для пользователя.<br/>''Методы'': [[Ранжирование#Поточечный подход|поточечный подход]], [[Ранжирование#Попарный подход|попарный подход]], [[Ранжирование#Списочный подход|списочный подход]]. '''Кластеризация''' (англ. ''clustering'')<br/>{{main|Кластеризация}}''Цель'': разбить множество объектов на подмножества ('''кластеры''') таким образом, чтобы объекты из одного кластера были более похожи друг на друга, чем на объекты из других кластеров по какому-либо критерию. <br/>''Примеры'': разбиение клиентов сотового оператора по платёжеспособности; разбиение космических объектов на похожие (галактики, планеты, звезды). <br/>''Методы'': [[Иерархическая кластеризация|иерархическая кластеризация]], [[Эволюционные алгоритмы кластеризации|эволюционные алгоритмы кластеризации]], [[EM-алгоритм]]. ---- === Вспомогательные типы задач === '''Задачи уменьшения Уменьшение размерности''' (англ. ''dimensionality reduction'') <br/>
{{main|Уменьшение размерности}}
Научиться ''Цель'': научиться описывать данные не $N$ признаками, а меньшим числом для повышения точности модели или последующей визуализации. В качестве примера помимо необходимости для визуализации можно привести сжатие данных. <br/>''Примеры'Задачи кластеризации''' (англ: визуализация в двумерном или трехмерном пространстве; сжатие данных. ''cluster analysis'')<br/>{{main|Кластеризация}}Разбиение данных множества объектов на подмножества ('''кластеры'Методы'': [[Вариации регрессии#Гребневая регрессия (ридж-регрессия) таким образом|гребневая регрессия]], чтобы объекты из одного кластера были более похожи друг на друга, чем на объекты из других кластеров по какому[[Вариации регрессии#Лассо-регрессия|лассо-либо критерию. <br/>''Примеры:'' разбиение клиентов сотового оператора по платёжеспособностирегрессия]], разбиение космических объектов на похожие [[Метод главных компонент (галактикиPCA)|метод главных компонент]], планеты, звезды и так далее)[[Стохастическое вложение соседей с t-распределением|стохастическое вложение соседей с t-распределением]]. <br/> '''Задачи выявления Выявление аномалий''' (англ. ''anomaly detection'')<br/>На основании признаков {{main|Выброс}}''Цель'': научиться различать отличать выявлять аномалиив данных. Кажется, что Отличительная особенность задачи от задачи классификации эта задача ничем не отличается. Но особенность выявления аномалий состоит в том, что {{---}} примеров аномалий для тренировки модели у нас либо очень мало, либо нет совсем, ; поэтому мы не можем решать такую задачу как задачу классификациидля ее решения необходимы специальные методы. <br/>''Пример:Примеры'' : определение мошеннических транзакций по банковской карте; обнаружение событий, предвещающих землетрясение. <br/>''Методы'': [[Выброс#Методы обнаружения выбросов|экстремальный анализ данных, аппроксимирующий метод, проецирующие методы]].
== Классификация задач машинного обучения ==
==== Обучение с учителем (англ. ''Supervised learning'' <ref> [http://www.machinelearning.ru/wiki/index.php?title=%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81_%D1%83%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D0%B5%D0%BC Обучение с учителем]</ref>) ====
Тренировочные данные Метки классов $y_i$ доступны все сразу и размечены (известны ответы для поставленной задачи).<br/>''Задачи , которые могут решаться этим способом:'' классификация, регрессия.
==== Обучение без учителя (англ. ''Unsupervised learning'') ====
Изучает широкий класс задач обработки данных, в которых известны только описания множества объектов (обучающей выборки), и требуется обнаружить внутренние взаимосвязи, зависимости, закономерности, существующие между объектами.Т.е . тренировочные данные доступны все сразу, но ответы для поставленной задачи неизвестны. <br/> ''Задачи, которые могут решаться этим способом:'' кластеризация, нахождение ассоциативных правил, выдача рекомендаций (например , реклама), уменьшение размености размерности датасета, [[Обработка естественного языка|обработка естественного языка]].
==== Обучение с частичным привлечением учителя (англ. ''Semi-supervised learning''<ref>[http://www.machinelearning.ru/wiki/index.php?title=%D0%A7%D0%B0%D1%81%D1%82%D0%B8%D1%87%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5 Semi-supervised learning]</ref>) ====
{{main|Обучение с частичным привлечением учителя}}
Занимает промежуточное положение между обучением с учителем и без учителя. Каждый прецедент представляет собой пару «объект, ответ», но ответы известны только на части прецедентов (Размечено мало, либо малоинформативная часть).<br/>
''Примером частичного обучения может послужить сообучение:'' два или более обучаемых алгоритма используют один и тот же набор данных, но каждый при обучении использует различные — в идеале некоррелирующие — наборы признаков объектов.
Частный случай обучения с учителем, сигналы подкрепления (правильности ответа) выдаются не учителем, а некоторой средой, с которой взаимодействует программа. Размеченность данных зависит от среды.
Окружение обычно формулируется как [http://en.wikipedia.org/wiki/Markov_decision_process марковский процесс принятия решений ] (МППР) с конечным множеством состояний, и в этом смысле алгоритмы обучения с подкреплением тесно связаны с динамическим программированием. Вероятности выигрышей и перехода состояний в МППР обычно являются величинами случайными, но стационарными в рамках задачи.
При обучении с подкреплением, в отличии отличие от обучения с учителем,не предоставляются верные пары "входные данные-ответ", а принятие суб оптимальных субоптимальных решений (дающих локальный экстремум) не ограничивается явно. Обучение с подкреплением пытается найти компромисс между исследованием неизученных областей и применением имеющихся знаний(англ. ''exploration vs exploitation tradeoff'').
==== Активное обучение (англ. ''Active learning'') ====
{{main|Активное обучение}}
Отличается тем, что обучаемый имеет возможность самостоятельно назначать следующий прецедент, который станет известен. Используется Применяется когда получать ответ получение истиной метки для объекта, истинный ответ, очень дорого (очень тяжело)затруднительно. Поэтому алгоритм должен уметь определять, на каких объектах ему надо знать ответ,
чтобы лучше всего обучиться, построить наилучшую модель.
==== Обучение в реальном времени (англ. ''Online learning'') ====
{{main|Обучение в реальном времени}}
Может быть как обучением с учителем, так и без учителя. Специфика в том, что тренировочные данные поступают последовательно. Требуется немедленно принимать решение по каждому прецеденту и одновременно доучивать модель зависимости с учётом новых прецедентов. Здесь существенную роль играет фактор времени.
* '''Предсказание месторождений полезных ископаемых''' <br/>
''Признаками'' являются данные геологической разведки.
* ''Бинарные признаки:'' наличие/отсутствие тех или иных пород на территории района. ;* ''Количественные Числовые признаки:'' физико-химические свойства пород можно описать количественной характеристикой.
''Обучающая выборка'' состоит из двух классов:* районы известных месторождений ; * похожие районоврайоны, в которых интересующее ископаемое обнаружено не было.
При поиске редких полезных ископаемых количество объектов может оказаться намного меньше, чем количество признаков. В этой ситуации плохо работают классические статистические методы. Задача решается путём поиска закономерностей в имеющемся массиве данных. В процессе решения выделяются короткие наборы признаков, обладающие наибольшей ''информативностью'' — способностью наилучшим образом разделять классы (''"синдромы"'' месторождений).
Эта задача решается банками при выдаче кредитов. Объектами в данном случае являются физические или юридические лица, претендующие на получение кредита.
В случае физических лиц признаковое описание состоит из :* анкеты, которую заполняет сам заёмщик;* дополнительной информации, которую банк собирает о нём из собственных источников.
Можно выделить следующие ''признаки'':
* ''Бинарные признаки:'' пол, наличие телефона. ; * ''Номинальные признаки:'' место проживания, профессия, работодатель. ; * ''Порядковые признаки:'' образование, занимаемая должность. ; * ''Количественные Числовые признаки:''сумма кредита, возраст, стаж работы, доход семьи, размер задолженностей в других банках.
''Обучающая выборка'' составляется из заёмщиков с известной кредитной историей.
В роли ''объектов'' выступают пациенты. Признаки характеризуют результаты обследований, симптомы заболевания и применявшиеся методы лечения.
* ''Бинарных Бинарные признаки'': пол, наличие головной боли, слабости. ; * ''Порядковый признак'': тяжесть состояния (удовлетворительное, средней тяжести, тяжёлое, крайне тяжёлое).;* ''Количественные Числовые признаки:''возраст, пульс, артериальное давление, содержание гемоглобина в крови, доза препарата.
Признаковое описание пациента является, по сути дела, формализованной историей болезни.
* '''Задача классификации видов ириса (Фишер 1936)''' <ref>[https://ru.wikipedia.org/wiki/%D0%98%D1%80%D0%B8%D1%81%D1%8B_%D0%A4%D0%B8%D1%88%D0%B5%D1%80%D0%B0 Задача классификации видов ириса]</ref> <ref>[http://edu.mmcs.sfedu.ru/pluginfile.php/17198/mod_resource/content/1/01%20%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5%20%D0%BF%D0%BE%D0%BD%D1%8F%D1%82%D0%B8%D1%8F.pdf Презентация "Основные понятия машинного обучения"]</ref><br/>
[[Файл:Iris_classification.png|650px]]
 
== Открытые наборы данных для обучения ==
{{main|Известные наборы данных|l1=Известные наборы данных}}
==== Компьютерное зрение ====
* [https://pjreddie.com/projects/mnist-in-csv/ MNIST]: один из самых востребованных наборов для проверки работоспособности. Есть датасеты 25x25, отцентрованные, рукописные чёрно-былые цифры;
* [https://www.cs.toronto.edu/~kriz/cifar.html CIFAR10 & CIFAR100]: цветные изображения 32x32. Сегодня используется нечасто, но может быть хорошим вариантов для проверки работоспособности;
* [http://image-net.org/ ImageNet]: датасет изображений для проверки новых алгоритмов.
 
==== Естественные языки ====
* [https://blog.einstein.ai/the-wikitext-long-term-dependency-language-modeling-dataset/ WikiText]: большой свод данных для языкового моделирования из статей Википедии, собранный Salesforce MetaMind.
==== Речь ====
* [http://www.openslr.org/12/ LibriSpeech]: около 500 часов начитки аудиокниг, в исполнении разных людей. Данные организованы по главам книг, содержат текст и записи.
==== Системы рекомендаций и ранжирования ====
* [https://www.kaggle.com/c/msdchallenge Million Song Dataset]: большой open source-датасет [https://www.kaggle.com/ Kaggle], насыщенный метаданными. Хороший вариант для тех, кто экспериментирует с гибридными системами рекомендаций.
==== Сети и графы ====
* [http://snap.stanford.edu/data/#amazon Amazon Co-Purchasing] и [http://snap.stanford.edu/data/amazon-meta.html Amazon Reviews]: данные, собранные из раздела «Пользователи, купившие это, также выбирают…» на Amazon, а также обзоры сопутствующих товаров. Хорош для экспериментов рекомендательными системами в соцсетях.
==== Геопространственные данные ====
* [http://wiki.openstreetmap.org/wiki/Planet.osm OpenStreetMap]: векторные картографические данные для всей планеты, с бесплатной лицензией. Включает в себя старую версию данных TIGER Бюро переписи США.
== См. также ==
== Источники информации ==
#*[https://en.wikipedia.org/wiki/Machine_learning Машинное обучение] Wikipedia {{---}} WikiMachine learning]#*[http://www.machinelearning.ru/wiki/index.php?title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%28%D0%BA%D1%83%D1%80%D1%81_%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D0%B9%2C_%D0%9A.%D0%92.%D0%92%D0%BE%D1%80%D0%BE%D0%BD%D1%86%D0%BE%D0%B2%29 Курс лекций по машинному обучению] machinelearning.ru {{---}} Воронцов Машинное обучение (курс лекций, К.В.Воронцов)]#*[https://newtonew.com/tech/machine-learning-novice Статья "Машинное обучение для чайников"]*[https://golos.io/ru--programmirovanie/@randall/kak-ii-nauchit-vsemu-luchshie-otkrytye-nabory-dannykh-dlya-obucheniya Лучшие наборы данных для обучения]
[[Категория: Машинное обучение]]
Анонимный участник

Навигация