Написано Аруной Паттам, руководителем направления AI Analytics & Data Science, Insights & Data, Азиатско-Тихоокеанский регион, Capgemini.

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

В этом сообщении блога мы рассмотрим различные типы машинного обучения и их значение.

Алгоритмы машинного обучения можно разделить на 4 категории: обучение с учителем, обучение без учителя, обучение с полуучителем и обучение с подкреплением.

Каждая из этих категорий охватывает множество различных методов и алгоритмов.

Итак, что они все означают? Давай выясним!

№ 1: контролируемое обучение:

Алгоритмы контролируемого обучения — это тип алгоритма машинного обучения, который использует помеченные данные для прогнозирования и оценки точности этих прогнозов.

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

Обучение с учителем делится на 2 подвида:

Классификация:

В задачах классификации алгоритм пытается ответить на такие вопросы, как «Это точка данных A или B?» или «Какой наиболее вероятный класс для этого наблюдения?»

Регрессия

Алгоритмы регрессии используются для прогнозирования непрерывного целевого значения на основе характеристик набора данных. В отличие от задач классификации, которые сосредоточены на дискретных выходных данных, алгоритмы регрессии выводят непрерывное значение или диапазон значений.

В задачах регрессии алгоритм пытается предсказать непрерывное значение, например «Какова будет цена этой акции завтра?» или «Сколько продаж мы совершим в следующем месяце?»

Некоторые из типичных алгоритмов обучения с учителем включают в себя:

№1: Линейная регрессия:

Модель линейной регрессии пытается зафиксировать взаимосвязь между непрерывной целевой (зависимой) переменной и одной или несколькими независимыми переменными. Например, линейную регрессию можно использовать для прогнозирования цены дома с учетом его размера и других характеристик.

# 2: Логистическая регрессия:

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

№ 3: Машины опорных векторов (SVM):

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

# 4: Наивный Байес:

Наивный Байес — это тип алгоритма обучения с учителем, который использует «теорему Байеса» для прогнозирования. Он используется как для задач классификации, так и для регрессии. Например, его можно использовать для классификации электронной почты как спама или не спама.

# 5: Деревья решений

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

# 2: Обучение без учителя:

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

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

Существует множество различных типов алгоритмов обучения без учителя, но некоторые из наиболее популярных включают в себя:

#1: Алгоритмы кластеризации

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

# 2: Изучение правил ассоциации

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

#3: Уменьшение размерности

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

#4: Обнаружение аномалий

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

# 5: Автоэнкодеры

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

№ 3: Полууправляемое обучение:

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

В полуконтролируемом обучении используется несколько методов, в том числе:

#1: Самостоятельное обучение:

Самообучение — это тип полууправляемого алгоритма обучения, который использует небольшой помеченный набор данных для обучения исходной модели, которая затем используется для маркировки оставшихся неразмеченных данных. Затем вновь помеченные данные добавляются обратно в обучающий набор для дальнейшего уточнения модели. Например, предприятия могут использовать самообучение для создания модели сегментации клиентов с ограниченным количеством размеченных данных.

# 2: Методы на основе графиков:

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

№3: Генеративные модели:

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

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

# 4: Обучение с подкреплением:

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

Методы, используемые в этом типе обучения, можно разделить на две категории:

#1: Обучение, основанное на ценностях:

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

# 2: Обучение на основе политики:

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

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

Заключение:

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

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