Введение в методы машинного обучения

В следующей статье «Методы машинного обучения» дается краткое описание наиболее часто используемых методов машинного обучения. Машинное обучение - это техника, которая позволяет компьютеру самостоятельно «учить» вещи. Алгоритмы адаптивно улучшают свою производительность по мере увеличения объема данных, доступных для обучения. Чем больше данных, тем точнее будет наша модель.

Как машины учатся?

Есть разные способы сделать это. Какой метод следовать полностью зависит от постановки задачи. В зависимости от набора данных и нашей проблемы, есть два разных способа углубиться. Один - обучение под наблюдением, а другой - обучение без присмотра. Следующая таблица объясняет дальнейшую классификацию методов машинного обучения. Мы обсудим их один за другим.

Посмотрите на следующую таблицу!

Давайте разберемся, что означает контролируемое обучение.

Контролируемое обучение

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

Некоторые из самых крутых контролируемых обучающих приложений:

  • Анализ настроений (Twitter, Facebook, Netflix, YouTube и т. Д.)
  • Обработка естественного языка
  • Классификация изображений
  • Прогнозный анализ
  • Распознавание образов
  • Обнаружение спама
  • Обработка речи / последовательности

Теперь контролируемое обучение делится на классификацию и регрессию. Давайте поймем это.

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

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

Классификационные модели включают опорные векторные машины (SVM), K-ближайшего соседа (KNN), наивного байесовского алгоритма и т. Д.

а) Классификатор опорных векторов (SVM)

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

Примечание. Для мультиклассовой классификации SVM использует «один против остальных», что означает вычисление различных SVM для каждого класса.

б) К-ближайший сосед классификатор (КНН)

  • Если вы внимательно прочитаете, само название подсказывает, что делает алгоритм. KNN рассматривает точки данных, которые находятся ближе, намного более похожи по характеристикам и, следовательно, более вероятно, принадлежат к тому же классу, что и сосед. Для любой новой точки данных рассчитывается расстояние до всех остальных точек данных, и класс определяется на основе K ближайших соседей. Да, это может звучать неубедительно, но для некоторых классификаций это работает как угодно.
  • Точка данных классифицируется по количеству голосов ее соседей, затем точка данных присваивается классу, ближайшему среди его k-соседей.
  • В KNN изучение модели не требуется, и вся работа выполняется во время запроса прогноза. Вот почему KNN часто называют ленивым алгоритмом обучения.

в) наивный байесовский классификатор

  • Наивный Байес - это алгоритм машинного обучения, который настоятельно рекомендуется для задач классификации текста. Он основан на вероятностной теореме Байеса. Эти классификаторы называются наивными, потому что они предполагают, что переменные признаков не зависят друг от друга. Это означает, например, что у нас есть полное предложение для ввода, тогда Наивный Байес предполагает, что каждое слово в предложении не зависит от других. И затем классифицируйте их соответственно. Я знаю, это выглядит довольно наивно, но это отличный выбор для задач классификации текста, и это популярный выбор для классификации спам-писем.
  • Он предоставляет различные типы наивных байесовских алгоритмов, таких как BernoulliNB, GaussianNB, MultinomialNB.
  • Он считает, что все функции не связаны, поэтому он не может узнать отношения между функциями. Например, скажем, Варун любит есть гамбургеры, он также любит есть картофель фри с колой. Но он не любит есть гамбургер и картофель фри с колой вместе. Здесь Наивный Байес не может понять связь между двумя признаками, а узнает только важность отдельных признаков.

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

регрессия

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

Линейная регрессия

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

Обучение без учителя

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

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

  1. Обнаружение сходства
  2. Автоматическая маркировка
  3. Сегментация объектов (например, человек, животное, фильмы)

Кластеризация

  • Кластеризация - это метод обучения без контроля, который используется для анализа данных во многих областях. Алгоритм кластеризации пригодится, когда мы хотим получить подробное представление о наших данных.
  • Реальным примером кластеризации могут быть жанровые кластеры Netflix, которые разделены по разным целевым клиентам, включая интересы, демографию, образ жизни и т. Д. Теперь вы можете подумать о том, насколько полезна кластеризация, когда компании хотят понять свою клиентскую базу и нацелить новый потенциал. клиентов.

а) К означает кластеризацию

  • K означает, что алгоритм кластеризации пытается разделить заданные неизвестные данные на кластеры. Он случайным образом выбирает «k» центроид кластеров, вычисляет расстояние между точками данных и центроидом кластеров, а затем, наконец, назначает точку данных центроиду кластера, расстояние которого является минимальным из всех центроидов кластера.
  • В k-средних группы определяются ближайшим центроидом для каждой группы. Этот центроид действует как «мозг» алгоритма, он получает точки данных, которые находятся ближе всего к ним, а затем добавляет их в кластеры.

б) иерархическая кластеризация

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

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

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

PCA для визуализации данных

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

Рекомендуемые статьи

Это руководство по методам машинного обучения. Здесь мы обсуждаем введение: как машины учатся? классификации машинного обучения и блок-схема вместе с подробным объяснением. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Архитектура машинного обучения
  2. Механизм машинного обучения
  3. Инструменты машинного обучения
  4. Методы машинного обучения
  5. Гиперпараметр машинного обучения
  6. Иерархический кластерный алгоритм
  7. Иерархическая кластеризация | Агломерационная и разделительная кластеризация