Понимание Обучения с учителем Теория и Обзор

Understanding Supervised Learning Theory and Overview

 

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

Как работает наблюдаемое обучение?

   

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

  • Сбор данных: Соберите набор данных с изображениями яблок и апельсинов, и каждое изображение помечено как “яблоко” или “апельсин”.
  • Выбор модели: Здесь нам нужно выбрать правильный классификатор, часто известный как правильный алгоритм машинного обучения с учителем для вашей задачи. Это похоже на выбор правильных очков, которые помогут вам лучше видеть.
  • Обучение модели: Теперь вы подаете алгоритму помеченные изображения яблок и апельсинов. Алгоритм смотрит на эти изображения и учится распознавать различия, такие как цвет, форма и размер яблок и апельсинов.
  • Оценка и тестирование: Чтобы проверить, правильно ли работает ваша модель, мы подадим ей некоторые невидимые изображения и сравним предсказания с реальными.

 

Типы наблюдаемого обучения

 

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

 

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

 

В задачах классификации основная цель – присвоить точкам данных определенные категории из набора дискретных классов. Когда есть только два возможных результата, например, “да” или “нет”, “спам” или “не спам”, “принято” или “отклонено”, это называется бинарной классификацией. Однако, когда вовлечено более двух категорий или классов, например, оценка студентов на основе их оценок (например, A, B, C, D, F), это становится примером мультиклассовой проблемы.

 

Регрессия

 

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

 

Обзор популярных алгоритмов наблюдаемого обучения

 

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

 

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

 

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

Где,

  • Y   Предсказанный результат.
  • X =  Входной параметр или матрица признаков в множественной линейной регрессии.
  • b0 = Перехват (где линия пересекает ось Y).
  • b1 =  Наклон или коэффициент, определяющий крутизну линии.

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

 

 

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

 

Хотя у него есть регрессия в названии, он фундаментально используется для задач бинарной классификации. Он предсказывает вероятность положительного результата (зависимой переменной), которая находится в диапазоне от 0 до 1. Установив порог (обычно 0,5), мы классифицируем точки данных: те, у которых вероятность больше порога, относятся к положительному классу, и наоборот. Логистическая регрессия вычисляет эту вероятность, используя сигмоидную функцию, примененную к линейной комбинации входных признаков, которая задается следующим образом:

Где,

  • P(Y=1) = Вероятность того, что точка данных относится к положительному классу
  • X1 ,… ,Xn = Входные признаки
  • b0,.…,bn = Веса входных признаков, которые алгоритм изучает во время обучения

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

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

 

3. Деревья решений

 

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

  • Корневой узел: Верхний узел, содержащий весь набор данных, называется корневым узлом. Затем мы выбираем лучший признак с использованием некоторого алгоритма для разделения набора данных на 2 или более поддеревьев.
  • Внутренние узлы: Каждый внутренний узел представляет определенный признак и правило принятия решения для определения следующего возможного направления для точки данных.
  • Листовые узлы: Конечные узлы, представляющие метку класса, называются листовыми узлами.

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

 

4. Случайный лес

 

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

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

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

5. Метод опорных векторов (SVM)

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

  • Выбор гиперплоскости: В бинарной классификации SVM находит лучшую гиперплоскость (2D линию), разделяющую классы и максимизирующую зазор. Зазор – это расстояние между гиперплоскостью и ближайшими точками данных к гиперплоскости.
  • Трюк с ядром: Для линейно неотделимых данных мы используем трюк с ядром, который отображает исходное пространство данных в пространство более высокой размерности, где они могут быть линейно разделены. Обычные ядра включают линейное, полиномиальное, радиально-базисную функцию (RBF) и сигмоидные ядра.
  • Максимизация зазора: SVM также старается улучшить обобщение модели, увеличивая максимизирующий зазор.
  • Классификация: После обучения модели можно делать прогнозы на основе их положения относительно гиперплоскости.

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

Изображение на Javatpoint

6. Метод k-ближайших соседей (k-NN)

k-NN – это самый простой алгоритм обучения с учителем, который в основном используется для задач классификации. Он не делает никаких предположений о данных и присваивает новой точке данных категорию на основе ее сходства с существующими точками данных. Во время этапа обучения он сохраняет весь набор данных в качестве точки отсчета. Затем он вычисляет расстояние между новой точкой данных и всеми существующими точками с использованием метрики расстояния (например, евклидово расстояние). Исходя из этих расстояний, он определяет K ближайших соседей для этих точек данных. Затем мы подсчитываем количество появления каждого класса среди K ближайших соседей и присваиваем наиболее часто встречающийся класс в качестве окончательного прогноза.

Изображение на GeeksforGeeks

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

Заключение

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

  • Овладение алгоритмами машинного обучения – второе издание
  • Курс машинного обучения – Javatpoint
  • Специализация машинного обучения – Coursera

Канвал Мехрин – начинающий разработчик программного обеспечения с большим интересом к науке о данных и применению искусственного интеллекта в медицине. Канвал была выбрана Google Generation Scholar 2022 для региона APAC. Канвал любит делиться техническими знаниями, пиша статьи на актуальные темы, и увлекается улучшением представления женщин в технологической индустрии.