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

Что такое машинное обучение?

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

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

Разницу между классическим программированием и машинным обучением можно увидеть на изображении выше.

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

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

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

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

В машинном обучении чем больше данных, тем лучше программа.

Системы машинного обучения

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

  1. контролируемое обучение
  2. Неконтролируемое обучение
  3. Полуконтролируемое обучение
  4. Обучение с подкреплением

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

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

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

  1. Классификация. Проблема классификации возникает, когда результатом переменной является категория, например «красный» или «синий», или «заболевание» и «отсутствие заболевания».
  2. Регрессия. Проблема регрессии возникает, когда выходная переменная представляет собой реальное значение, например «рост» или «вес».

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

  • Линейная регрессия
  • Логистическая регрессия
  • Деревья решений и случайные леса
  • k-ближайшие соседи (KNN)
  • Методы опорных векторов (SVM)

Неконтролируемое обучение

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

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

  1. Кластеризация. Проблема кластеризации заключается в обнаружении
    внутренних группировок в данных, таких как группировка клиентов
    по покупательскому поведению.
  2. Уменьшение размерности. Снижение размерности — это процесс уменьшения количества рассматриваемых случайных переменных путем получения набора основных переменных. Его можно разделить на выбор признаков и извлечение признаков.
  3. Ассоциация: проблема изучения правил ассоциации возникает, когда вы
    хотите обнаружить правила, описывающие большие части ваших данных,
    например, люди, которые покупают X, также склонны покупать Y.

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

  • k-значит
  • Иерархический кластерный анализ (HCA)
  • Анализ основных компонентов (PCA)
  • Априори
  • Эклат

Полуконтролируемое обучение

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

Эти проблемы находятся между контролируемым и неконтролируемым обучением.

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

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

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

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

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

  • Q-обучение
  • SARSA (состояние-действие-вознаграждение-состояние-действие)
  • DQN
  • A3c (Актер-критик асинхронного преимущества)
  • Генетический алгоритм

Краткое содержание

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