Когда линейная регрессия не решает вашу проблему, пришло время для более продвинутого алгоритма, представляющего машину опорных векторов!

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

Мы можем нарисовать его на гиперплоскости (график ниже) следующим образом:

Представьте, что X1 — это вкус, X2 — цвет, зеленая линия (H1) не может правильно разделить напитки на два отличительных класса (где все напитки на одной стороне состоят только из одного вида напитка), синяя линия (H2) — это способны разделить напитки, но только узко способны различать каждый класс, в то время как красная линия (H3) способна разделить оба напитка с максимальной маржой.

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

Хотя это звучит хорошо, что произойдет, если данные будут выглядеть так?

Есть как минимум 2 ошибочно классифицированных данных (синий квадрат между красными кружками и красный кружок между синими квадратами), где мы должны провести линию, которая разделяет оба класса?

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

Надеюсь, это дало вам хотя бы краткое представление о том, что делает SVM, есть и другие вещи, которые вам следует изучить, такие как «Kernel Trick», поэтому я призываю вас продолжать читать.

Дальнейшее чтение

Объяснение алгоритма опорных векторов (SVM) (monkeylearn.com)

Машины опорных векторов — формулировка мягкой маржи и трюк с ядром | Ришаб Мишра | На пути к науке о данных

Рекомендации

Машина опорных векторов — Википедия