Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Data Mining #5 / Метод опорных векторов

Data Mining #5 / Метод опорных векторов

More Decks by Технострим Mail.ru Group

Transcript

  1. На прошлой лекции • Разобрали логистическую регрессию • Рассмотрели метрики

    оценки качества классификаторов • Научились подбирать порог для классификаторов
  2. Как предсказать класс? Если сработало несколько классификаторов, можно выбрать метку

    того, который дает максимальную вероятность w1 w2 w3 0.6 0.7 0.15 0.5 0.65 0.5 пороги
  3. Как предсказать класс? Если сработало несколько классификаторов, можно выбрать метку

    того, который дает максимальную вероятность w1 w2 w3 0.6 0.7 0.15 0.5 0.65 0.5 пороги
  4. Как предсказать класс? Если сработало несколько классификаторов, можно выбрать метку

    того, который дает максимальную вероятность w1 w2 w3 0.6 0.7 0.15 0.5 0.65 0.5 пороги
  5. Как предсказать класс? Если сработало несколько классификаторов, можно выбрать метку

    того, который дает максимальную вероятность w1 w2 w3 0.6 0.7 0.15 0.5 0.65 0.5 пороги
  6. Как предсказать класс? Если сработало несколько классификаторов, можно выбрать метку

    того, который дает максимальную вероятность w1 w2 w3 0.6 0.7 0.15 0.5 0.65 0.5 пороги
  7. One vs All • Число классификаторов = числу классов N

    • Итоговое число параметров для оптимизации N*{X} • Возможны варианты по окончательной классификации • Нельзя напрямую упорядочивать по скорам N классификаторов
  8. Многоклассовая классификация: softmax w1 w2 w3 w1Tx w2Tx w3Tx exp(w1Tx)

    exp(w1Tx) + exp(w2Tx) + exp(w3Tx) exp(w2Tx) exp(w1Tx) + exp(w2Tx) + exp(w3Tx) exp(w3Tx) exp(w1Tx) + exp(w2Tx) + exp(w3Tx)
  9. Многоклассовая классификация: softmax Y_true = 3 0 0 1 p1

    p2 p3 exp(w1Tx) exp(w1Tx) + exp(w2Tx) + exp(w3Tx) exp(w2Tx) exp(w1Tx) + exp(w2Tx) + exp(w3Tx) exp(w3Tx) exp(w1Tx) + exp(w2Tx) + exp(w3Tx)
  10. Многоклассовая классификация: softmax Кросс-энтропия: L – количество рекордов N –

    количество классов , , = − [ = ] log ( , , ) Бинарный log-loss: , , = − log ( , )
  11. Многоклассовая классификация: softmax Кросс-энтропия: L – количество рекордов N –

    количество классов Один объект зависит сразу от весов w всех классов ! , , = − [ = ] log ( , , ) Бинарный log-loss: , , = − log ( , )
  12. Softmax • Один классификатор – ’multinomial logistic regression’ • Примерно

    та же интуиция • Итоговое число параметров для оптимизации N*{X} • Напрямую упорядочиваем по N аутпутам, выбираем max
  13. Метрики многоклассовой оценки • Accuracy = 1 [ ′ =

    ] • Доля правильных ответов классификатора • ’Многоклассовый precision’ • Micro-averaging • Усреднение confusion matrix по классам One Vs All • Нужная метрика – по усредненной матрице • Macro-averaging • Нужная метрика – для каждого класса в отдельности • Усреднение метрики
  14. Построение разделяющей поверхности • Задача классификации на 2 класса Y={1,-1}

    • Обучающая выборка X=(xi ,yi ), i=1,L • Построить алгоритм классификации a(x,w)=sign f(x,w) f(x,w)=0 – разделяющая поверхность
  15. Отступ • f(x,w)=0 – разделяющая поверхность • Mi (w)=yi f(xi

    ,w) – отступ объекта I (Margin) • Mi (w) < 0 => ошибка алгоритма a на объекте I
  16. Функционал эмпирического риска • Mi (w) < 0 => ошибка

    алгоритма a на объекте I • Эмпирический риск • = [ < 0] • Гладкая аппроксимация ≤ ′ = ( ) • Q -> min
  17. Linear SVM на 1 слайде • L = max(0, 1-M)

    • ′ = max⁡ (0, 1 − ) + 1 2С ||w||2 -> minw • Оптимизация градиентным спуском (но решается иначе) • a(xi ,wi )=sign (xi ,wi )
  18. Мотивация • В исходной постановке – классическая задача минимизации эмпирического

    риска с регуляризацией • Но откуда такой Loss? • Почему нужен регуляризатор?
  19. Попробуем найти максимальный зазор X1 X2 2M 2 = 1

    + 2 || 1 = -1 2 ⁡= 1 2 − 1 = 2 2 − 1 = 2 , ≥ 1 ≥ 1
  20. SVM: постановка задачи 1 2 2 −> minw Mi (w)

    >= 1, i=1,L • Исключительно из соображений максимизации зазора
  21. Штрафы за ошибки • Вводим штрафы за неправильную сторону ′

    = 1 2 w 2 + С ε −> min Mi (w) >= 1 - ε, i=1,L ε ≥ 0, i=1,L 1 2 2 −> minw Mi (w) >= 1, i=1,L • Разделимая постановка
  22. Штрафы за ошибки • Вводим штрафы за неправильную сторону ′

    = 1 2 w 2 + С ε −> min Mi (w) >= 1 - ε, i=1,L ε ≥ 0, i=1,L ′ = 1 2 w 2 + С max(0, 1 − ) −> min
  23. SVM. Безусловная постановка • ′ = 1 2 w 2

    + С max(0, 1 − ) −> min • Классический функционал для SVM • С как копромисс между разделением классов и зазором
  24. SVM. Безусловная постановка • ′ = 1 2 w 2

    + С max(0, 1 − ) −> min • Классический функционал для SVM • Обосновали Лосс ! Обосновали регуляризацию ! • И да, его можно решать SGD • Но люди пошли дальше • И получили профит
  25. Профиты перехода = − + 1 2 ( , )

    → min = ⁡( ⁡ , −⁡0 ) • В обучении не участвуют сами объекты, только матрица Грамма на выборке • На инференсе сами объекты также не нужны • В переходе использовались свойства скалярного произведения, но без привязки к пространству • Подойдет ск.п. в любом пространстве • Путь в нелинейность
  26. Kernel Trick • Переходим к пространству более высоких размерностей –

    за счет ядер • Определение – функция k: × → – ядро, если существует : • : ⁡X → • , ′ = ( , ′ ) • Симметричная, неотрицательно определенная функция
  27. Примеры ядер • Линейное • , = , • Полиномиальное

    • , = , + 1 d • Radial Basis Function • , = exp⁡ (−| − |2) • Остальные – через конструктивные методы
  28. Примеры ядер • Линейное • , = , • Полиномиальное

    • , = , + 1 d • Radial Basis Function • , = exp⁡ (−| − |2) • Остальные – через конструктивные методы • Пространство для квадратичного ядра (x,z)?