Алгоритм машины опорных векторов фокусируется на поиске гиперплоскости в N-мерном пространстве (N-количество признаков), которая четко классифицирует точки данных.
Для классификации точек данных можно выбрать множество возможных гиперплоскостей. Наша цель — найти плоскость с максимальным запасом, то есть максимальным расстоянием между точками данных классов. Увеличение предельного расстояния дает некоторое усиление, чтобы будущие точки данных можно было классифицировать с большей уверенностью.
Опорные векторы — это точки данных, расположенные ближе к гиперплоскости и влияющие на положение и ориентацию гиперплоскости. Используя эти опорные векторы, мы максимизируем запас классификатора. Удаление опорных векторов изменит положение гиперплоскости. Это точки, которые помогают нам построить нашу SVM.
Преимущества метода опорных векторов:
- Алгоритм SVM имеет возможность игнорировать выбросы и находить гиперплоскость с максимальным запасом. Следовательно, мы можем сказать, что классификация SVM устойчива к выбросам.
- SVM работает относительно хорошо, когда между классами существует четкая граница разделения.
- SVM более эффективен в многомерных пространствах.
- SVM относительно эффективно использует память.
Недостатки метода опорных векторов:
- Алгоритм SVM не подходит для больших наборов данных.
- SVM не очень хорошо работает, когда в наборе данных больше шума, т. е. целевые классы перекрываются.
- Поскольку классификатор опорных векторов работает, помещая точки данных выше и ниже классифицирующей гиперплоскости, нет вероятностного объяснения классификации.
Реализация.Перейдите по следующей ссылке, чтобы узнать о реализации Python и R машины опорных векторов:
"Машина опорных векторов"
Ядро SVM
Когда классификация точек данных с помощью SVM невозможна, поскольку точки данных не являются линейно разделимыми в 2D или не существует гиперплоскости для их разделения в 3D, тогда мы используем Kernel SVM.
Работа ядра SVM:
- Сопоставьте набор точек данных более низкого измерения с помощью функции сопоставления с одним более высоким измерением, где они разделены.
- Установите линию или гиперплоскость в соответствии с требованием, чтобы разделить эти точки.
- Снова спроецируйте те же точки данных на более низкие измерения.
Преимущества машины опорных векторов ядра:
- Хитрость ядра — настоящая сила SVM. С соответствующей функцией ядра мы можем решить любую сложную проблему.
- Он относительно хорошо масштабируется для данных высокой размерности.
- Риск переобучения меньше.
Недостатки машины опорных векторов ядра:
- Выбрать хорошую функцию ядра непросто.
- Более длительное время обучения для больших наборов данных.
- Трудно понять и интерпретировать окончательную модель.
- Высокая вычислительная мощность.
Реализация.Перейдите по следующей ссылке, чтобы узнать о реализации Python и R машины опорных векторов ядра: