МАШИНЫ ОПОРНЫХ ВЕКТОРОВ (SVM)

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

Мы отображаем каждый элемент данных как точку в n-мерном пространстве (где n — количество имеющихся у вас объектов), где значение каждого объекта является значением конкретной координаты. Затем мы выполняем классификацию, находя гиперплоскость, которая очень хорошо различает два класса.

Например, алгоритм, обучающийся отделять Того от Нигерии на карте, может правильно определить границу в 150 милях от восточных границ Республики Бенин, но гораздо лучше будет граница, проходящая по центру Республики Бенин. Интуитивно это связано с тем, что последняя граница максимально увеличивает расстояние до Того и Нигерии, которое составляет около 500 миль.

Расстояние от границы классификации SVM до ближайшей точки данных называется полем. Точки данных каждого класса, расположенные ближе всего к границе классификации, называются векторами поддержки. Классификатор SVM — это граница, которая лучше всего разделяет два класса (гиперплоскость/линия).

Таким образом, SVM можно определить как линейные классификаторы при следующих двух допущениях:

· Поля должны быть как можно больше.

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

ПРЕИМУЩЕСТВА МАШИН ОПОРНЫХ ВЕКТОРОВ (SVM)

1. Хорошо работает с четкими границами разделения

2. Эффективен в пространствах большой размерности.

3. Он эффективен в случаях, когда количество измерений больше, чем количество выборок.

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

НЕДОСТАТКИ МАШИН ОПОРНЫХ ВЕКТОРОВ (SVM)

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

2. Он также не очень хорошо работает, когда в наборе данных больше шума, т. е. целевые классы перекрываются.

3. SVM не дает оценок вероятности напрямую, они рассчитываются с использованием дорогостоящей пятикратной перекрестной проверки. Он включен в соответствующий метод SVC библиотеки Python scikit-learn.

ПРИМЕНЕНИЕ МАШИН ОПОРНЫХ ВЕКТОРОВ (SVM)

  • Распознавание лиц — SVM классифицирует части изображения как лица и не лица и создает квадратную границу вокруг лица. Мы можем использовать его в различных системах жизнеобеспечения, а также в классификации нормального счастливого или грустного взгляда. Мы можем использовать его в фильтрах. Если мы сделаем определенные выражения лица, он добавит определенный фильтр в соответствии с выражением. Диапазон выражений лежит между счастливым и грустным.

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

  • Обнаружение стенографии в цифровых изображениях: мы можем определить, является ли изображение чистым или фальсифицированным. Это может быть использовано в организациях, ориентированных на безопасность, для раскрытия секретных сообщений. Мы можем шифровать сообщения в изображениях с высоким разрешением (пикселей больше), следовательно, сообщение труднее найти. Мы можем разделить пиксели и хранить данные в различных наборах данных и анализировать их с помощью SVM.
  • Диагностика и прогноз рака: путем запуска многочисленных моделей. Существует много данных в виде изображения, которое анализируется. У нас есть тысячи наборов данных. С помощью SVM обучаются сотни моделей, чтобы классифицировать рак как злокачественный или доброкачественный. Google использует методы классификации изображений для поиска рака.
  • Распознавание речи: используется для отделения отдельных слов от непрерывной речи. Извлекаются признаки для каждого отдельного слова, и модели успешно обучаются. Используя распознавание речи, мы могли бы сделать интерфейс для общения с глухими людьми. Здесь акустика будет данными. Существует множество функций, таких как LPC, LPCC и MFCC, которые собирают акустические данные. SVM использует акустические данные для обучения своих моделей. Мы используем данные для обучения многих моделей и используем их в системе. Результаты, полученные с помощью SVM, в целом точны.

Примечание. Применение машин опорных векторов не ограничивается этими категориями. Это классификация, а также алгоритм регрессии, и возможности его использования безграничны.

Для получения дополнительной информации о том, как работает модель SVM и как ее можно использовать в python, ознакомьтесь с этой статьей от analyticsvidhya.