SVM против логистической регрессии
Вопрос
Сравните линейный SVM и логистическую регрессию. Когда что выбрать?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Обе линейные, разница в функции потерь: hinge против log loss
Логрегрессия даёт вероятности, SVM только отступ (нужна калибровка)
SVM зависит только от опорных векторов, логрегрессия от всех объектов
Ядровой SVM даёт нелинейность, но плохо масштабируется
На практике сейчас чаще логрегрессия или бустинг
Что могут спросить следом
- Как получить вероятности из SVM?
- Почему ядровой SVM редко используют на больших данных?
Разбор
Обе модели строят линейную границу и обычно дают похожее качество. Разница в функции потерь: логистическая регрессия минимизирует log loss и поэтому выдаёт откалиброванные вероятности, а SVM минимизирует hinge loss, которому всё равно, насколько уверенно правильно классифицирован объект за пределами зазора. Поэтому решение SVM определяется только опорными векторами, а вероятности приходится получать отдельной калибровкой (Platt scaling). Ядровой SVM даёт нелинейные границы и хорошо работал на небольших данных, но матрица ядра n×n не масштабируется на миллионы объектов. Сейчас в табличных задачах обычно выбирают логистическую регрессию как интерпретируемую модель с вероятностями или градиентный бустинг для качества, а SVM остаётся на собесах как классика про зазор и ядра.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.