Неконтролируемое обучение: как машины учатся сами по себе
Опубликовано: 2021-03-19Неконтролируемое обучение позволяет машинам учиться самостоятельно.
Этот тип машинного обучения (ML) предоставляет приложениям ИИ возможность изучать и находить скрытые закономерности в больших наборах данных без присмотра человека. Неконтролируемое обучение также имеет решающее значение для достижения искусственный общий интеллект.
Маркировка данных требует больших затрат труда и времени, а во многих случаях непрактична. Вот где неконтролируемое обучение имеет большое значение, предоставляя приложениям ИИ возможность учиться без ярлыков и контроля.
Что такое неконтролируемое обучение?
Неконтролируемое обучение (UL) — это метод машинного обучения, используемый для выявления закономерностей в наборах данных, содержащих неклассифицированные и немаркированные точки данных. В этом методе обучения системе ИИ предоставляются только входные данные, а не соответствующие выходные данные.
В отличие от обучения с учителем, машинное обучение без учителя не требует, чтобы человек контролировал модель. Специалист по данным позволяет машине учиться, наблюдая за данными и самостоятельно находя закономерности. Другими словами, эта подкатегория машинного обучения позволяет системе действовать на основе данной информации без какого-либо внешнего руководства.
Методы обучения без учителя имеют решающее значение для создания систем искусственного интеллекта с человеческим интеллектом. Это потому, что интеллектуальные машины должны быть способны принимать (независимые) решения, анализируя большие объемы непомеченных данных.
По сравнению с алгоритмами обучения с учителем, алгоритмы UL лучше подходят для выполнения сложных задач. Однако модели обучения с учителем дают более точные результаты, поскольку наставник явно указывает системе, что искать в данных. Но в случае обучения без учителя все может быть совершенно непредсказуемо.
Искусственные нейронные сети, которые делают глубокое обучение реальность, может показаться, что она подкреплена неконтролируемым обучением. Хотя это правда, алгоритмы обучения нейронных сетей также можно контролировать, если желаемый результат уже известен.
Неконтролируемое обучение может быть самоцелью. Например, модели UL можно использовать для поиска скрытых шаблонов в огромных объемах данных и даже для классификации и маркировки точек данных. Группировка несортированных точек данных выполняется путем выявления их сходств и различий.
Некоторые причины, почему неконтролируемое обучение имеет важное значение.
- Неразмеченных данных в изобилии.
- Разметка данных — утомительная задача, требующая человеческого труда. Однако сам процесс может быть основан на машинном обучении, что упрощает маркировку для вовлеченных людей.
- Это полезно для изучения неизвестных и необработанных данных.
- Это полезно для распознавания образов в больших наборах данных.
Как работает неконтролируемое обучение
Проще говоря, неконтролируемое обучение работает путем анализа неклассифицированных, неразмеченных данных и поиска в них скрытых структур.
При обучении с учителем ученый данных передает системе помеченные данные, например, изображения кошек, помеченных как кошки, что позволяет ей учиться на примерах. При неконтролируемом обучении специалист по данным предоставляет только фотографии, а система отвечает за анализ данных и вывод о том, являются ли они изображениями кошек.
Неконтролируемое машинное обучение требует огромных объемов данных. В большинстве случаев то же самое верно и для контролируемого обучения, поскольку модель становится более точной с большим количеством примеров.
Процесс неконтролируемого обучения начинается с того, что ученые данных обучают алгоритмы с использованием обучающих наборов данных. Точки данных в этих наборах данных не помечены и не классифицированы.
Целью обучения алгоритма является выявление шаблонов в наборе данных и категоризация точек данных на основе тех же выявленных шаблонов. В примере с изображениями кошек алгоритм обучения без учителя может научиться определять отличительные черты кошек, такие как их усы, длинные хвосты и втягивающиеся когти.
Если подумать, обучение без учителя — это то, как мы учимся идентифицировать и классифицировать вещи. Предположим, вы никогда не пробовали кетчуп или соус чили. Если вам дадут две «немаркированные» бутылки кетчупа и соуса чили и попросят попробовать их, вы сможете различить их вкусы.
Вы также сможете определить особенности обоих соусов (один кислый, а другой острый), даже если вы не знаете их названий. Попробовав каждый еще несколько раз, вы лучше познакомитесь со вкусом. Вскоре вы сможете группировать блюда на основе добавленного соуса, просто попробовав их.
Анализируя вкус, можно найти специфические черты, отличающие два соуса и группы блюд. Вам не нужно знать названия соусов или блюд, чтобы классифицировать их. Возможно, вы даже назовете один соус сладким, а другой острым .
Это похоже на то, как машины выявляют закономерности и классифицируют точки данных с помощью неконтролируемого обучения. В том же примере обучение под наблюдением может состоять в том, что кто-то заранее сообщает вам названия обоих соусов и их вкус.
Виды неконтролируемого обучения
Проблемы обучения без учителя можно разделить на проблемы кластеризации и ассоциации .
Кластеризация
Кластеризация или кластерный анализ — это процесс группировки объектов в кластеры. Элементы с наибольшим сходством группируются вместе, а остальные попадают в другие кластеры. Примером кластеризации может быть группировка пользователей YouTube на основе их истории просмотров.
В зависимости от того, как они работают, кластеризацию можно разделить на четыре группы следующим образом:
- Исключительная кластеризация. Как следует из названия, исключительная кластеризация указывает, что точка данных или объект могут существовать только в одном кластере.
- Иерархическая кластеризация: Иерархический пытается создать иерархию кластеров. Различают два типа иерархической кластеризации: агломеративную и разделительную . Агломеративный метод следует восходящему подходу, изначально рассматривая каждую точку данных как отдельный кластер, а пары кластеров объединяются по мере их продвижения вверх по иерархии. Дивизион — это полная противоположность агломеративности. Каждая точка данных начинается в одном кластере и разделяется по мере продвижения вниз по иерархии.
- Перекрывающаяся кластеризация: Перекрытие позволяет сгруппировать точку данных в два или более кластера.
- Вероятностная кластеризация: вероятностная использует распределения вероятностей для создания кластеров. Например, «зеленые носки», «синие носки», «зеленая футболка» и «синяя футболка» можно разделить на две категории: «зеленые» и «синие» или «носки» и «футболки». ".
Ассоциация
Изучение правил ассоциации (ARL) — это метод обучения без учителя, используемый для поиска отношений между переменными в больших базах данных. В отличие от некоторых алгоритмов машинного обучения, ARL может обрабатывать нечисловые точки данных.
Проще говоря, ARL заключается в том, чтобы найти, как определенные переменные связаны друг с другом. Например, люди, которые покупают мотоцикл, чаще всего покупают шлем.
Обнаружение таких отношений может быть прибыльным. Например, если клиенты, которые покупают продукт X, как правило, покупают продукт Y, интернет-магазин может рекомендовать продукт Y всем, кто покупает продукт X.
Изучение правила ассоциации использует операторы if/then в своей основе. Эти утверждения могут выявить связи между независимыми данными. Кроме того, модели или отношения «если/то» наблюдаются с помощью поддержки и уверенности .
Поддержка указывает, как часто отношение «если/то» появляется в базе данных. Достоверность определяет количество раз, когда отношение «если/то» было признано действительным.
Анализ потребительской корзины а также майнинг веб-использования становятся возможными благодаря правилу ассоциации.
Алгоритмы обучения без учителя
И кластеризация, и изучение правил ассоциации реализуются с помощью алгоритмов.
Алгоритм Apriori, алгоритм ECLAT и алгоритм роста Frequent Pattern (FP) — вот некоторые из известных алгоритмов, используемых для реализации правила ассоциации. Кластеризация стала возможной благодаря таким алгоритмам, как кластеризация k-средних и анализ основных компонентов (PCA).

Априорный алгоритм
Алгоритм Apriori создан для интеллектуального анализа данных. Это полезно для анализа баз данных, содержащих большое количество транзакций, например, базы данных, содержащей список товаров, купленных покупателями в супермаркете. Он используется для выявления вредного воздействия наркотиков и при анализе потребительской корзины, чтобы найти набор товаров, которые покупатели с большей вероятностью купят вместе.
Алгоритм ЭКЛАТ
Кластеризация класса эквивалентности и обход решетки снизу вверх , или сокращенно ECLAT , — это алгоритм интеллектуального анализа данных, используемый для достижения интеллектуального анализа наборов элементов и поиска часто встречающихся элементов.
Алгоритм Apriori использует горизонтальный формат данных, поэтому ему необходимо многократно сканировать базу данных для выявления часто встречающихся элементов. С другой стороны, ECLAT использует вертикальный подход и, как правило, работает быстрее, поскольку ему нужно сканировать базу данных только один раз.
Алгоритм роста частого паттерна (FP)
Алгоритм роста частых паттернов (FP) является улучшенной версией алгоритма Apriori. Этот алгоритм представляет базу данных в виде древовидной структуры, известной как частое дерево или шаблон .
Такое частое дерево используется для извлечения наиболее часто встречающихся паттернов. В то время как априорный алгоритм должен сканировать базу данных n+1 раз (где n — длина самой длинной модели), алгоритм роста FP требует всего два сканирования.
Кластеризация K-средних
Многие итерации алгоритма k-средних широко используются в области науки о данных. Проще говоря, алгоритм кластеризации k-средних группирует похожие элементы в кластеры. Количество кластеров представлено k . Таким образом, если значение k равно 3, всего будет три кластера.
Этот метод кластеризации делит немаркированный набор данных таким образом, чтобы каждая точка данных принадлежала только одной группе со схожими свойствами. Ключ в том, чтобы найти K центров, называемых центроидами кластера .
Каждый кластер будет иметь один центроид кластера, и, увидев новую точку данных, алгоритм определит ближайший кластер, к которому принадлежит точка данных, на основе таких показателей, как евклидово расстояние.
Анализ главных компонентов (PCA)
Анализ основных компонентов (PCA) — это метод уменьшения размерности, обычно используемый для уменьшения размерности больших наборов данных. Он делает это путем преобразования большого количества переменных в меньшее, которое содержит почти всю информацию в большом наборе данных.
Уменьшение количества переменных может немного повлиять на точность, но это может быть приемлемым компромиссом для простоты. Это связано с тем, что небольшие наборы данных легче анализировать, а алгоритмам машинного обучения не нужно сильно потеть, чтобы получить ценную информацию.
Контролируемое и неконтролируемое обучение
Обучение под наблюдением похоже на то, когда учитель контролирует весь процесс обучения. Существует также помеченный набор обучающих данных, похожий на правильные ответы на каждую проблему, которую вы пытаетесь решить.
Так легче понять, правильный ваш ответ или нет, а также учитель поправит вас, если вы сделаете ошибку. В случае неконтролируемого обучения нет ни учителя, ни правильных ответов.
С вычислительной точки зрения обучение без учителя является более сложным и трудоемким, чем обучение с учителем. Однако это полезно для интеллектуального анализа данных и получения представления о структуре данных перед назначением какого-либо классификатора (алгоритма машинного обучения, который автоматически классифицирует данные).
Несмотря на то, что это полезно, когда немаркированные данные огромны, неконтролируемое обучение может вызвать небольшие неудобства для ученых, занимающихся данными. Поскольку набор данных проверки, используемый в обучении с учителем, также помечен, специалистам по данным легче измерить точность моделей. Но это не относится к моделям обучения без учителя.
Во многих случаях обучение без учителя применяется до обучения с учителем. Это помогает идентифицировать функции и создавать классы.
Процесс неконтролируемого обучения происходит онлайн, тогда как обучение с учителем происходит в автономном режиме. Это позволяет алгоритмам UL обрабатывать данные в режиме реального времени.
В то время как проблемы обучения без учителя делятся на проблемы ассоциации и кластеризации, обучение с учителем можно далее разделить на регрессию и классификацию.
Помимо контролируемого и неконтролируемого обучения, существует полуконтролируемое обучение и обучение с подкреплением .
Полуконтролируемое обучение представляет собой смесь контролируемого и неконтролируемого обучения. В этом методе машинного обучения система немного обучается, чтобы получить общий обзор. Часть обучающих данных будет помечена, а остальные не будут помечены.
При обучении с подкреплением (RL) система искусственного интеллекта столкнется с игровой средой, в которой она должна максимизировать вознаграждение. Система должна учиться, следуя методу проб и ошибок, и увеличивать свои шансы на получение вознаграждения с каждым шагом.
Вот краткий обзор основных различий между контролируемым и неконтролируемым обучением.
Неконтролируемое обучение | контролируемое обучение |
Это сложный процесс, требующий больше вычислительных ресурсов и отнимающий много времени. | Это относительно просто и требует меньше вычислительных ресурсов. |
Набор обучающих данных не помечен. | Набор обучающих данных помечен. |
Менее точно, но не обязательно | Высокая точность |
Делится на ассоциацию и кластеризацию. | Делится на регрессию и классификацию |
Сложно измерять точность модели вместе с неопределенностью. | Легче измерить точность модели. |
Количество классов неизвестно. | Количество классов известно. |
Обучение происходит в режиме реального времени. | Обучение происходит офлайн. |
Априори, ECLAT, кластеризация k-средних и алгоритм роста частых паттернов (FP) — вот некоторые из используемых алгоритмов. | Линейная регрессия, логистическая регрессия, Наивный Байес и метод опорных векторов (SVM) — вот некоторые из используемых алгоритмов. |
Примеры неконтролируемого машинного обучения
Как упоминалось ранее, неконтролируемое обучение может быть самоцелью и может использоваться для поиска скрытых закономерностей в огромных объемах данных — нереальная задача для человека.
Некоторые реальные приложения неконтролируемого машинного обучения.
- Обнаружение аномалий: это процесс поиска нетипичных точек данных в наборах данных, поэтому он полезен для обнаружения мошеннических действий.
- Компьютерное зрение: также известное как распознавание изображений, это умение идентифицировать объекты на изображениях имеет важное значение для беспилотных автомобилей и даже ценно для отрасли здравоохранения для сегментации изображений.
- Системы рекомендаций. Анализируя исторические данные, алгоритмы неконтролируемого обучения рекомендуют продукты, которые клиент, скорее всего, купит.
- Личность клиента: неконтролируемое обучение может помочь компаниям создать точную личность клиента, анализируя данные о покупательских привычках.
Предоставление алгоритмов самим себе
Способность учиться самостоятельно делает обучение без учителя самым быстрым способом анализа огромных объемов данных. Конечно, выбор между контролируемым и неконтролируемым (или даже частично контролируемым) обучением зависит от проблемы, которую вы пытаетесь решить, а также от времени и обширности доступных данных. Тем не менее, неконтролируемое обучение может сделать все ваши усилия более масштабируемыми.
ИИ, который у нас есть сегодня, не способен к мировому господству, не говоря уже о том, чтобы не подчиняться приказам своих создателей. Но это делает возможными невероятные подвиги, такие как беспилотные автомобили и чат-боты. Это называется узким ИИ , но он не так слаб, как кажется.