Глоссарий

Машина опорных векторов (SVM)

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

Support Vector Machine (SVM) - популярный и мощный алгоритм контролируемого машинного обучения (ML), используемый в основном для задач классификации, хотя он также эффективен для регрессии (Support Vector Regression - SVR) и обнаружения выбросов. Разработанные в 1990-х годах, SVM, подробно описанные в Википедии, работают путем нахождения оптимальной границы, называемой гиперплоскостью, которая наилучшим образом разделяет точки данных, принадлежащие к различным классам в высокомерном пространстве. Ключевая идея заключается в максимизации маржи - расстояния между гиперплоскостью и ближайшими точками данных (опорными векторами) из каждого класса, что часто приводит к хорошей эффективности обобщения на невидимых данных.

Как работает Svm

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

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

  • Линейный: Для линейно разделяемых данных.
  • Полином: Переводит данные в более высокие измерения с помощью полиномиальных функций.
  • Радиальная базисная функция (РБФ): Популярный выбор для сложных нелинейных зависимостей.
  • Сигмоид: Похожа на функцию активации, используемую в нейронных сетях (NN).

Выбор ядра и его параметров имеет решающее значение и часто требует тщательной настройки гиперпараметров.

Актуальность и применение

SVM остаются актуальными, несмотря на развитие глубокого обучения (Deep Learning, DL), особенно в сценариях с высокоразмерными данными (много признаков), но ограниченным количеством обучающих выборок. Они известны своими теоретическими гарантиями и устойчивостью, особенно когда существует четкая граница разделения. Исторически SVM в сочетании с экстракторами признаков, такими как Histogram of Oriented Gradients (HOG), были самыми современными для таких задач, как обнаружение объектов, как отмечается в эволюции обнаружения объектов.

К числу распространенных областей применения относятся:

  • Классификация изображений: Классификация изображений на основе их содержания (например, различение различных типов цветов или животных). SVM могут быть эффективны при использовании ручных признаков, извлеченных из изображений, особенно на наборах данных умеренного размера.
  • Категоризация текста: Классификация текстовых документов по заданным категориям, например, обнаружение спама в электронной почте или анализ настроений в отзывах покупателей. SVM хорошо справляются с высокоразмерными текстовыми данными (например, с TF-IDF-функциями).
  • Биоинформатика: Используется для таких задач, как классификация белков или диагностика рака на основе данных об экспрессии генов, где количество признаков может быть очень большим по сравнению с количеством образцов.
  • Распознавание лиц: Идентификация или проверка личности по чертам лица, часто как часть более крупной системы.

Преимущества и ограничения

Преимущества:

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

Ограничения:

  • Интенсивные вычисления: Обучение может быть медленным на очень больших массивах данных.
  • Чувствительность ядра и параметров: Производительность сильно зависит от выбора ядра и его параметров (например, C, гамма), что требует тщательной настройки.
  • Низкая производительность при перекрытии классов: Не идеальный вариант, если классы данных значительно перекрываются.
  • Отсутствие прямых оценок вероятности: Стандартные SVM выдают распределение по классам, но не прямые оценки вероятности. Для калибровки результатов SVM в вероятности необходимы такие методы, как шкалирование Платта.

Svm по сравнению с другими алгоритмами

По сравнению с более простыми алгоритмами, такими как логистическая регрессия, SVM нацелены на максимизацию маржи, а не просто на поиск разделяющей границы, что может привести к лучшему обобщению. В отличие от древовидных методов, таких как Decision Trees или Random Forests, SVM строят единственную оптимальную гиперплоскость (возможно, в высокоразмерном пространстве). В то время как современные модели глубокого обучения, такие как Ultralytics YOLO, отлично справляются с автоматическим извлечением признаков из необработанных данных (например, пикселей в компьютерном зрении (CV)), SVM часто требуют тщательной разработки признаков, но могут работать исключительно хорошо на небольших наборах данных или специфических типах структурированных данных, где признаки четко определены. Популярные реализации включают LibSVM и модуль SVM в scikit-learn. Обучение и управление такими моделями, а также различными другими, можно упростить с помощью таких платформ, как Ultralytics HUB, которая упрощает жизненный цикл MLOps.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему искусственного интеллекта. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединяйтесь сейчас
Ссылка копируется в буфер обмена