
Машины опорных векторов - думайте как векторы!
Машины опорных векторов хорошо работают в многомерном пространстве с четкими границами или разделением, поэтому они думают, как векторы.
Машина опорных векторов (SVM) - это управляемый алгоритм нелинейного машинного обучения, который можно использовать как для задач классификации, так и для задач регрессии. SVM используется для создания нескольких разделяющих гиперплоскостей, так что он разделяет сегменты пространства данных, и каждый сегмент содержит только один вид данных.
Техника SVM полезна для данных, распределение которых неизвестно, т.е. которые имеют Нерегулярность, т.е. данные в классификации спама, распознавании рукописного ввода, категоризации текста, идентификации говорящего и т. Д. Я перечислил с ним приложения векторной машины поддержки. :)
Этот пост посвящен объяснению опорных векторных машин на примере, демонстрации опорных векторных машин на наборе данных и объяснению сгенерированных результатов демонстрации.
Что скрывается за SVM на примере?

В Support Vector Machines мы наносим на график каждые данные как точку в n-мерном пространстве (где «n» - количество функций), причем значение каждой функции является значением определенной координаты. Затем мы выполняем классификацию, находя гиперплоскость, которая различает классы.
Пример
Рассмотрим набор данных, содержащий яблоки и апельсины. Итак, чтобы классифицировать их, мы используем машинную рекламу Support Vector с пометкой тренировочных данных в самолете.

Машина опорных векторов (SVM) берет эти точки данных и выводит гиперплоскость (которая представляет собой двумерную линию уравнения y = ax + b), которая наилучшим образом разделяет теги. Линия называется границей решения, то есть все, что падает на одну сторону от нее, классифицируется как Apple, а все, что падает на другую, как Orange.
Гиперплоскость (двухмерная линия) лучше всего подходит, когда расстояние до ближайшего элемента каждой точки данных или тега является наибольшим, т.е. указано на максимальных полях.

Все точки на прямой ax + b = 0 будут удовлетворять уравнению, поэтому мы рисуем две параллельные линии ax + b = -1 для одной стороны и ax + b = 1 для другой стороны, чтобы эти линии проходили через точку данных или тег в сегменте, ближайшем к нашей линии, расстояние между этими двумя линиями будет нашим запасом.
Демонстрация с набором данных
Набор данных Iris состоит из 50 образцов каждого из 3 видов ирисов (Iris setosa, Iris virginica, Iris versicolor) и многомерного набора данных, представленного британским статистиком и биологом Рональдом Фишером в его статье 1936 года. Использование множественных измерений в таксономических задачах.
В каждом образце были измерены четыре характеристики, а именно длина и ширина чашелистиков и лепестков, и на основе комбинации этих четырех характеристик Фишер разработал линейную дискриминантную модель, чтобы различать виды друг от друга.
# Загрузка данных
data (iris)
# Структура
str (iris)
Использование алгоритма опорной векторной машины в наборе данных, который включает 11 человек и 6 переменных, с использованием пакета e1071. Обратитесь за описанием пакета.
# Установка пакетов
install.packages («e1071»)
install.packages («caTools»)
install.packages («caret»)
# Загрузка пакета
библиотеки (e1071)
библиотеки (caTools)
библиотеки (каретка)
# Разделение данных на поезд
# и тестовые данные
split ‹- sample.split (iris, SplitRatio = 0.7)
train_sv‹ - subset (iris, split == «TRUE»)
test_sv ‹- subset (iris, split ==« FALSE »)
# Масштабирование функций
train_scale ‹- масштаб (train_sv [, 1: 4])
test_scale‹ - масштаб (test_sv [, 1: 4])
# Подгонка модели KNN
# к набору обучающих данных
set.seed (120) # Установка семени
classifier_svm ‹- svm (Species ~., Data = train, method =« class »)
classifier_svm
# Сводка модели
сводка (classifier_svm)
# Прогноз
test_sv $ Species_Predic ‹- предсказать (classifier_svm, newdata = test_sv, type =« class »)
# Матрица неточностей
cm ‹- table (test_sv $ Species, test_sv $ Species_Predic)
cm
# Оценка модели
confusionMatrix (см)
Выходы - это все определяет
- Model classifier_svm:

Обученная модель представляет собой модель классификации с 40 опорными векторами и радиальным ядром.
2. Краткое описание модели:

Обученная модель представляет собой модель классификации с 40 опорными векторами или точками данных с 3 классами и 3 уровнями, то есть Setosa, Versicolor и Virginica.
3. Матрица неточностей:

Итак, 20 сетоса правильно классифицируются как сетоса. 20 Versicolor правильно классифицируется как Versicolor. 20 virginica правильно классифицируются как virginica.
4. Оценка модели:

Модель достигла 100% точности при P-значении менее 1. С чувствительностью, специфичностью и сбалансированной точностью построение модели хорошее. Для повышения точности настройка гиперпараметров выполняется с минимальными ошибками и включает параметры ядра, гаммы и стоимости.
Продолжайте учиться - никогда не прекращайте учиться
Это был учебник по машинам опорных векторов, которые являются важным алгоритмом.
Я буду писать больше постов в будущем. Предоставьте обратную связь или критику. Следуйте за мной в Medium. Со мной можно связаться в Twitter.