В общих чертах рассмотрим два подхода к анализу и обработке данных — обучение контролируемое (с учителем) и неконтролируемое (без учителя). Основная разница в том, что в первом случае используются размеченные данные для помощи в прогнозировании, а во втором — нет. Но у обоих подходов есть более тонкие различия и ключевые области, в которых они превосходят друг друга.
Что такое контролируемое обучение?
Контролируемое обучение — это подход к машинному обучению, основанный на использовании наборов размеченных данных. Такие наборы данных используются для создания алгоритмов, нацеленных на классификацию данных или точное прогнозирование результатов. Используя размеченные входы и выходы, модель может сопоставлять входные данные и полученные результаты на точность и постепенно обучаться.
Контролируемое обучение можно разделить на два типа (по задачам, связанным с интеллектуальным анализом данных): классификация и регрессия.
- В решении задач классификации, например, для отделения яблок от апельсинов, используется алгоритм точного распределения тестовых данных по категориям. В реальном мире алгоритмы машинного обучения можно использовать для сортировки спама в отдельную папку электронной почты. Линейные классификаторы, метод опорных векторов, деревья решений и случайный лес — все это распространенные алгоритмы классификации.
- Регрессия — другой тип метода контролируемого обучения, в котором используется алгоритм для выявления взаимосвязи между зависимыми и независимыми переменными. Регрессионные модели данных помогают прогнозировать цифровые значения на основе точечных данных, например, будущие доходы с продаж для определенной компании. К распространенным алгоритмам регрессионного анализа относятся линейная регрессия, логистическая регрессия и полиномиальная регрессия.
Что такое неконтролируемое обучение?
При неконтролируемом обучении алгоритмы машинного обучения используются для анализа и группирования наборов неразмеченных данных. Эти алгоритмы выявляют шаблоны в данных без вмешательства человека (поэтому они «неконтролируемые»).
Модели неконтролируемого обучения используются для выполнения трех основных задач — кластеризации, ассоциации и снижения размерности:
- Кластеризация — это метод интеллектуального анализа данных, применяемый для группирования неразмеченных данных исходя из их сходств и различий. Например, в рамках алгоритмов кластеризации по K-средним похожие точки данных объединяются в группы, где значение K представляет размер группы и степень структурированности. Этот метод подходит для сегментации рынка, сжатия изображений и т. д.
- Ассоциация — метод неконтролируемого обучения, в котором для выявления взаимосвязей между переменными и заданным набором данных используются определенные правила. Эти методы часто применяются для анализа покупательского поведения и создания рекомендательных сервисов и отбора товаров в категориях «Вместе с этим товаром покупают».
- Снижение размерности — это метод обучения, который используется в том случае, когда в определенном наборе данных слишком много признаков (или размерностей). Он сокращает количество входных данных до управляемого, сохраняя при этом их целостность. Этот метод часто используется на этапе обработки данных, например когда автокодировщики удаляют помехи из визуальных данных для повышения качества изображения.
Основная разница между контролируемым и неконтролируемым обучением: размеченные данные
Главное различие между двумя подходами заключается в использовании наборов размеченных данных. Проще говоря, при контролируемом обучении используются размеченные входные и выходные данные, а при неконтролируемом — нет.
При контролируемом обучении алгоритм «учится», делая прогнозы на основе учебного набора данных и корректируя их до получения правильного ответа. Хотя модели контролируемого обучения обычно более точны, чем модели неконтролируемого обучения, они требуют непосредственного вмешательства человека и точной разметки данных. Например, модель контролируемого обучения может прогнозировать, сколько времени будет занимать дорога на работу в зависимости от времени суток, погодных условий и т. д. Но сначала ее нужно научить, чтобы она понимала, что из-за дождя время в пути увеличивается.
Модели неконтролируемого обучения, напротив, самостоятельно изучают внутреннюю структуру неразмеченных данных. Однако они все равно требуют небольшого вмешательства человека для валидации выходных переменных. Например, модель неконтролируемого обучения может выявить, что онлайн-покупатели часто покупают группы товаров в одно и то же время. При этом специалисту по анализу данных потребуется проверить, целесообразно ли рекомендательному сервису объединять в одну группу детскую одежду, подгузники, яблочное пюре и поильники.
Другие ключевые различия между контролируемым и неконтролируемым обучением
- Цели. Цель контролируемого обучения — прогнозировать результаты по новым данным. Вы заранее знаете, какого рода результат ожидать. Цель неконтролируемого обучения — получить полезную информацию из огромного объема новых данных. В ходе обучения машина сама определяет, какая информация из набора необычна или представляет интерес.
- Области применения. Модели контролируемого обучения идеально подходят для обнаружения спама, анализа тональности высказываний, прогнозирования погоды, изменения цен и т. д. Модели неконтролируемого обучения созданы для выявления отклонений, повышения эффективности рекомендательных сервисов, прогнозирования поведения клиентов и медицинской визуализации.
- Сложность. Контролируемое обучение — это простой метод машинного обучения, который обычно рассчитывается с использованием таких программ как R или Python. Неконтролируемое обучение требует мощных инструментов для работы с большим количеством неклассифицированных данных. Модели неконтролируемого обучения отличаются высокой вычислительной сложностью, поскольку для получения необходимых результатов нужна большая обучающая выборка.
- Недостатки. Модели неконтролируемого обучения могут быть затратными по времени, а разметка входных и выходных данных требует опыта и знаний. Методы неконтролируемого обучения могут давать очень неточные результаты, если выходные переменные не будут валидироваться человеком.
Контролируемое и неконтролируемое обучение: что лучше?
Классификация больших данных в рамках контролируемого обучения — непростая задача. Однако получаемые на выходе результаты точны и надежны. И наоборот, неконтролируемое обучение позволяет обрабатывать большие объемы данных в режиме реального времени. Однако в этом случае не хватает прозрачности в отношении кластеризации данных и существует более высокий риск получения неточных результатов. Выходом из ситуации является частично контролируемое обучение.
Частично контролируемое обучение — золотая середина. Этот метод позволяет использовать набор, в который входят как размеченные, так и неразмеченные данные. Он особенно полезен, когда возникают сложности с извлечением релевантных признаков данных и вы работаете с большим количеством данных.
Частично контролируемое обучение идеально подходит для работы с медицинскими снимками: небольшое количество учебных данных может значительно повысить точность. Например, врач-рентгенолог может пометить небольшой набор КТ-снимков с опухолями или патологиями, чтобы машина более точно выявляла пациентов, которым потребуется уделить больше внимания.
Подробную информацию о разработке моделей машинного обучения см. в бесплатных обучающих материалах на портале для разработчиков IBM Developer Hub.
Джулианна Делуа (Julianna Delua)
Эксперт в области анализа и обработки данных/машинного обучения IBM Analytics
Исходный текст: https://www.ibm.com/cloud/blog/supervised-vs-unsupervised-learning