Классическое машинное обучение

SVM

Метод опорных векторов

классикаСилён на малых выборках; на больших данных проиграл градиентному бустингу.

Ищет гиперплоскость с максимальным зазором между классами; ядровой трюк добавляет нелинейность без явного перехода в новое пространство.

Что означает каждый компонент
  • минимизация нормы весов равносильна максимизации ширины зазора (она равна 2/‖w‖)
  • штраф за нарушения зазора. Большое C — почти не прощаем ошибок, малое — широкий зазор ценой ошибок

Ключевые тезисы

  • Решение определяется только опорными векторами на границе зазора.
  • Ядра: линейное, полиномиальное, RBF; C и γ управляют компромиссом зазора и ошибок.
  • Отлично работает на малых выборках высокой размерности, плохо масштабируется по числу объектов.

Подробный разбор

3 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Отступ и максимальный зазор

Что значит «лучшая» разделяющая гиперплоскость.

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

Обозначения
  • истинное значение целевой переменной
  • объект: вектор признаков
  • веса модели — то, что подбирается при обучении
  • транспонирование: строка вместо столбца
Отступ объекта: положительный — классифицирован верно, отрицательный — ошибка, близкий к нулю — объект у самой границы
Обозначения
  • истинное значение целевой переменной
  • объект: вектор признаков
  • веса модели — то, что подбирается при обучении
  • норма — длина вектора
  • транспонирование: строка вместо столбца
Ширина зазора равна , поэтому максимизация зазора = минимизация нормы весов
ширина зазора0.184
опорных векторов1
ошибокнет
Крутите наклон и сдвиг: ширина зазора меняется, а опорными оказываются только объекты на его границе
2

Мягкий зазор и параметр C

Что делать, когда классы пересекаются.

Обозначения
  • параметр C: цена нарушения зазора. Большое C — почти не прощаем ошибок
  • переменная нарушения зазора: на сколько объект заходит внутрь полосы или за неё
  • истинное значение целевой переменной
  • объект: вектор признаков
  • веса модели — то, что подбирается при обучении
  • число объектов в выборке
  • суммирование по всем перечисленным элементам
  • Большое — почти не прощаем ошибок, узкий зазор, риск переобучения.
  • Малое — широкий зазор ценой ошибок, сильная регуляризация.
  • Эквивалентная запись через hinge loss: .
-3-1130246ошибка y − ŷпотериMSEMAEHuber
MSE4.00
MAE2.00
Huber1.50
Задача
Режим «Классификация»: hinge обнуляется, как только отступ больше 1 — объекты вдали от границы перестают влиять
3

Ядровой трюк

Нелинейная граница без явного перехода в новое пространство.

Если классы разделены окружностью, в исходных признаках линейной границы нет. Но в признаках та же выборка становится линейно разделимой — граница превращается в прямую.

Обозначения
  • параметр ядра RBF: радиус влияния объекта
  • норма — длина вектора
  • скалярное произведение: мера согласованности векторов
  • экспонента
Ядро считает скалярное произведение в новом пространстве, не вычисляя само преобразование
  • задаёт «радиус влияния» объекта: большое — узкие островки вокруг точек, переобучение.
  • и подбираются вместе, по логарифмической сетке.
  • Сложность обучения — от до : на сотнях тысяч объектов SVM уже неудобен.

Связанные темы

Метрические и ядровые методы