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

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

Типы алгоритмов машинного обучения

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

  1. Алгоритмы обучения с учителем
  2. Алгоритмы обучения без учителя
  3. Алгоритм обучения с подкреплением

1) Алгоритм контролируемого обучения

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

Обучение под учителем можно разделить на две категории проблем:

  • Классификация
  • Регрессия

Что такое алгоритм классификации?

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

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

Что такое алгоритм регрессии?

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

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

Основными типами алгоритмов регрессии в ML являются линейные, полиномиальные, логистические, пошаговые и т. д.

2) Алгоритм обучения без учителя

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

Следовательно, его можно разделить на два типа:

  • Кластеризация
  • Ассоциация

Что такое алгоритм кластеризации?

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

Примечание:

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

Обучение без учителя работает с немаркированными и неклассифицированными данными, что делает обучение без учителя более важным.

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

Список популярных алгоритмов машинного обучения

  1. Алгоритм линейной регрессии
  2. Алгоритм логистической регрессии
  3. Дерево решений
  4. SVM
  5. Наивный Байес
  6. КНН
  7. Кластеризация по K-средним
  8. Случайный лес
  9. Априори
  10. PCA

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

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

Уравнение линии регрессии:

y= a0+ a*x+ b

На диаграмме ниже показана линейная регрессия для прогнозирования веса в зависимости от роста:

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

  • Логистическая регрессия – это алгоритм обучения с учителем, который используется для прогнозирования категориальных переменных или дискретных значений. Его можно использовать для задач классификации в машинном обучении, а результат алгоритма логистической регрессии может быть Да или Нет, 0 или 1, Красный или Синий и т. д.
  • Логистическая регрессия во многом похожа на линейную регрессию, за исключением того, как они используются. Линейная регрессия используется для решения задач регрессии, тогда как логистическая регрессия используется для решения задач классификации.
  • В логистической регрессии вместо подгонки линии регрессии мы подгоняем логистическую функцию в форме буквы «S», которая предсказывает два максимальных значения (0 или 1).
  • Кривая логистической функции указывает на вероятность чего-либо, например, являются ли клетки раковыми или нет, страдает ли мышь ожирением или нет, в зависимости от ее веса и т. д.

На изображении ниже показана логистическая функция:

Примечание. Логистическая регрессия использует концепцию прогнозного моделирования как регрессии; поэтому она называется логистической регрессией, но используется для классификации выборок; Следовательно, он подпадает под алгоритм классификации.

3- Алгоритм дерева решений

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

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

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

  • В дереве решений есть два узла: Узел решения и Листовой узел. Узлы решения используются для принятия любого решения и имеют несколько ветвей, тогда как Листовые узлы выходные данные этих решений и не содержат дальнейших ветвей.
  • Решения или тест выполняются на основе особенностей данного набора данных.
  • Это графическое представление всех возможных решений проблемы/решения на основе заданных условий.
  • Оно называется деревом решений, потому что, как и дерево, оно начинается с корневого узла, который расширяется на дальнейших ветвях и создает древовидную структуру.
  • Для построения дерева мы используем алгоритм CART, что означает алгоритм дерева классификации и регрессии.
  • Дерево решений просто задает вопрос и на основе ответа (Да/Нет) разбивает дерево на поддеревья.

Примечание. Дерево решений может содержать категориальные данные (ДА/НЕТ), а также числовые данные.

  • На диаграмме ниже поясняется общая структура дерева решений:

Примечание:

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

Логику дерева решений легко понять, поскольку оно имеет древовидную структуру.

4. Алгоритм машины опорных векторов

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

Рассмотрим приведенную ниже диаграмму:

Как мы видим на диаграмме выше, гиперплоскость классифицирует наборы данных на два разных класса.

5. Наивный алгоритм Байеса:

  • Наивный алгоритм Байеса — это алгоритм классификации, который используется для прогнозирования классов данных на основе вероятности.
  • Этот алгоритм предполагает, что свойства, влияющие на класс данных, независимы друг от друга.
  • Наивный алгоритм Байеса можно использовать в таких областях, как классификация текста, фильтрация спама, анализ настроений.
  • Теорема Байеса основана на условной вероятности; это означает вероятность того, что событие (А) произойдет, когда известно, что событие (В) уже произошло.

Уравнение для теоремы Байеса имеет вид:

Примечание:

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

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

6. K-ближайший сосед (KNN):

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

Зачем нам нужен алгоритм KNN?

Предположим, что есть две категории, то есть категория A и категория B, и у нас есть новая точка данных x1, поэтому эта точка данных будет относиться к какой из этих категорий. Для решения такого типа задач нам нужен алгоритм K-NN. С помощью K-NN мы можем легко определить категорию или класс определенного набора данных. Рассмотрим приведенную ниже диаграмму:

Как работает К-НН?

Работу K-NN можно объяснить на основе следующего алгоритма:

  • Шаг 1. Выберите количество K соседей.
  • Шаг 2. Вычислите евклидово расстояние для K соседей
  • Шаг 3. Возьмите K ближайших соседей в соответствии с рассчитанным евклидовым расстоянием.
  • Шаг 4: Среди этих k соседей подсчитайте количество точек данных в каждой категории.
  • Шаг 5. Назначьте новые точки данных той категории, для которой число соседей максимально.
  • Шаг 6: Наша модель готова.

7. Кластеризация K-средних

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

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

В K-средних K-представляет количество кластеров и означает усреднение набора данных для поиска центра тяжести.

Примечание. Алгоритм кластеризации k-средних в основном выполняет две задачи:

Определяет наилучшее значение для K центральных точек или центроидов с помощью итерационного процесса.

Назначает каждую точку данных ближайшему k-центру. Те точки данных, которые находятся рядом с конкретным k-центром, создают кластер.

Следовательно, каждый кластер имеет точки данных с некоторыми общими чертами и находится вдали от других кластеров.

На диаграмме ниже объясняется работа алгоритма кластеризации K-средних:

8. Алгоритм случайного леса

  • Случайный лес — это алгоритм обучения с учителем, который можно использовать как в задачах классификации, так и в задачах регрессии в машинном обучении.
  • Это метод обучения, который обеспечивает прогнозирование и повышает производительность модели за счет объединения нескольких классификаторов.
  • Он содержит несколько деревьев решений для подмножеств данного набора данных и находит средства для повышения точности прогнозирования модели. Случайный лес должен содержать 64–128 деревьев. Увеличение количества деревьев приводит к увеличению точности алгоритма.
  • Чтобы классифицировать новый набор данных, каждое дерево дает результат классификации, и на основе большинства голосов алгоритм прогнозирует окончательный результат.
  • Случайный лес — это быстрый алгоритм, который может эффективно справляться с отсутствующими и неверными данными.

Примечание. Чем больше деревьев в лесу, тем выше точность и предотвращается проблема переобучения.

На диаграмме ниже объясняется работа алгоритма случайного леса:

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

9. Априорный алгоритм.

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

10. Анализ основных компонентов,

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