Connect with us

ИИ 101

Надзорное обучение vs ненадзорное обучение

mm

В машинном обучении большинство задач можно легко отнести к одной из двух разных категорий: задачам надзорного обучения или задачам ненадзорного обучения. В надзорном обучении данные имеют метки или классы, добавленные к ним, тогда как в случае ненадзорного обучения данные не имеют меток. Давайте仔ательно рассмотрим, почему это различие важно, и рассмотрим некоторые алгоритмы, связанные с каждым типом обучения.

Надзорное обучение vs ненадзорное обучение

Большинство задач машинного обучения находятся в области надзорного обучения. В алгоритмах надзорного обучения отдельные экземпляры/точки данных в наборе данных имеют класс или метку, присвоенную им. Это означает, что модель машинного обучения может научиться различать, какие признаки связаны с данным классом, и что инженер машинного обучения может проверить производительность модели, увидев, сколько экземпляров было правильно классифицировано. Алгоритмы классификации можно использовать для выявления многих сложных закономерностей, пока данные имеют правильные классы. Например, алгоритм машинного обучения может научиться различать разных животных на основе характеристик, таких как “усы”, “хвост”, “когти” и т. д.

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

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

Между тем, некоторые примеры алгоритмов ненадзорного обучения – это анализ главных компонентов и кластеризация К-средних.

Алгоритм надзорного обучения

Линейная регрессия – это алгоритм, который принимает два признака и строит график их взаимосвязи. Линейная регрессия используется для прогнозирования числовых значений в отношении других числовых переменных. Линейная регрессия имеет уравнение Y = a + bX, где b – наклон линии, а a – точка, где y пересекает ось X.

Логистическая регрессия – это бинарный алгоритм классификации. Алгоритм анализирует взаимосвязь между числовыми признаками и находит вероятность того, что экземпляр можно классифицировать в один из двух разных классов. Значения вероятности “сжимаются” к 0 или 1. Другими словами, сильные вероятности будут приближаться к 0,99, а слабые вероятности – к 0.

Ближайшие соседи присваивают класс новым точкам данных на основе присвоенных классов некоторого количества соседей в обучающем наборе. Количество соседей, рассматриваемых алгоритмом, важно, и слишком мало или слишком много соседей может неправильно классифицировать точки.

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

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

Алгоритмы ненадзорного обучения

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

Кластеризация К-средних – это алгоритм, который автоматически группирует точки данных в кластеры на основе подобных признаков. Закономерности в наборе данных анализируются, и точки данных разделяются на группы на основе этих закономерностей. По сути, К-средние создают свои собственные классы из неотмеченных данных. Алгоритм К-средних работает путем присвоения центров кластерам или центроидам и перемещения центроидов до тех пор, пока не будет найдено оптимальное положение центроидов. Оптимальное положение будет тем, где расстояние между центроидами и окружающими точками данных внутри класса минимизируется. “К” в кластеризации К-средних относится к количеству выбранных центроидов.

Резюме

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

Как мы ранее обсуждали, в задачах надзорного обучения входные данные имеют метки, и количество классов известно. Между тем, входные данные в задачах ненадзорного обучения не имеют меток, и количество классов не известно. Ненадзорное обучение, как правило, менее вычислительно сложно, тогда как надзорное обучение, как правило, более вычислительно сложно. Хотя результаты надзорного обучения, как правило, очень точны, результаты ненадзорного обучения, как правило, менее точны/умеренно точны.

Блогер и программист с специализацией в Machine Learning и Deep Learning темах. Daniel надеется помочь другим использовать силу ИИ для социального блага.