Здесь мы рассмотрим не столь известную, но очень интересную геометрическую интерпретацию алгоритма машины опорных векторов (SVM) с использованием концепции выпуклой оболочки

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

Мы достигнем нашей цели, ответив на следующие вопросы:

  1. Что такое SVM и для чего он предназначен?
  2. Что такое выпуклый многоугольник и выпуклая оболочка?
  3. Как использовать концепцию выпуклой оболочки для интерпретации SVM?

Примечание. Мы ответим на эти вопросы с помощью самых основных понятий и простых объяснений на английском языке…. Так что расслабьтесь и давайте начнем :)

1. Что такое SVM и для чего он предназначен?

Метод опорных векторов (SVM) — это алгоритм классификации, который относит заданную точку данных к одному из известных классов с помощью линейной поверхности/гиперплоскости, которая:

1. Best separates the datapoints of different classes.
2. Maximizes the Margin.

Позвольте мне разбить приведенное выше определение для вас…..

  • линейная поверхность. Линейная поверхность — это линия в 2D, плоскость в 3D и гиперплоскость в более высоких измерениях (nD).

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

  • Лучше всего разделяет точки данных разных классов:

Рассмотрим ниже изображение:

1. Имеются точки данных 2-х классов: пусть синие точки данных относятся к положительному классу, а красные точки данных относятся к критическому классу.

2. Пунктирная линия/гиперплоскость (π) (изображение 1) лучше всего разделяет точки данных положительного класса и критического класса.

  • Увеличивает прибыль:

Я провел 2 линии (π+) и (π-) параллельно разделительной линии π. Часть обозначений на изображении выше показывает, что:

π+ : line/Hyperplane parallel to π and touching the 1st closest positive datapoint closest to π.
π- : line/Hyperplane parallel to π and touching the 1st closest Critical datapoint closest to π.

Расстояние от края: расстояние между этими двумя параллельными линиями (π+) и (π-).

Согласно SVM, чем выше поле, тем лучше гиперплоскость/линия.

Теперь для того же набора данных выше может быть несколько других гиперплоскостей (π), которые разделяют точки данных обоих классов (см. Изображение 2 ниже). Но SVM выбирает тот, который имеет наибольшее расстояние Margin.

Из изображения 1 и изображения 2 мы видим, что предельное расстояние на изображении 1 больше, чем предельное расстояние на изображении 2. Таким образом, SVM выбирает линию/гиперплоскость(π), который имеет максимальное предельное расстояние (маржа). Следовательно, линия/гиперплоскость изображения 1 выбирается SVM.

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

Интересная информация:

Точки данных, через которые проходят линии/гиперплоскости (π+) и (π-), называются опорными векторами. Следовательно, алгоритм называется Машина опорных векторов.

2. Что такое выпуклый многоугольник и выпуклая оболочка?

Выпуклый многоугольник: фигура называется выпуклым многоугольником, если линия, нарисованная на этой фигуре, пересекается только в 2 точках.

Источник изображения: http://back2basic.phatcode.net/?Issue-%231/2D-Convex-Polygon-Collision-using-SAT

Выпуклая оболочка : наименьшая фигура/многоугольник, в котором все точки данных лежат внутри/на многоугольнике.

3.Как использовать концепцию выпуклой оболочки для интерпретации SVM?

Шаг 1. Создайте выпуклую оболочку для положительных и критических точек данных.

Рассмотрим ниже (Изображение 4):

Шаг 2. Нарисуйте кратчайшую линию, соединяющую 1 точку данных положительного класса и 1 точку данных критического класса (см. рис. 5).

Шаг 3. Нарисуйте линию/гиперплоскость, которая делит пополам самую короткую линию, нарисованную на шаге 2. Эта линия/гиперплоскость равна (π).

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

Последнее примечание:

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

Поздравляем …… Вы продвинулись в понимании алгоритма машинного обучения SVM.

Если у вас есть какие-либо вопросы/вопросы, обращайтесь к Ашутошу Упадхьяю. Я был бы рад ответить. Если вы видите какие-либо исправления, укажите на это, я был бы рад добавить/исправить, помните, что мы все учимся вместе…

Большое спасибо за чтение и продолжайте суетиться…… :)