SVM может использоваться для классификации (различения нескольких групп или классов) и регрессии (получения математической модели для прогнозирования чего-либо). Они могут применяться как к линейным, так и к нелинейным задачам.
До 2006 года они были лучшим алгоритмом общего назначения для машинного обучения. Я пытался найти статью, в которой сравнивались бы многие реализации самых известных алгоритмов: svm, нейронные сети, деревья и т. Д. Я не мог найти это извините (вы должны поверить мне, плохая вещь). В работе алгоритм, который получил наилучшую производительность, был svm с библиотекой libsvm.
В 2006 году Хинтон придумал глубокое обучение и нейронные сети. Он улучшил текущее состояние техники по крайней мере на 30%, что является огромным прогрессом. Однако глубокое обучение дает хорошие результаты только для огромных тренировочных наборов. Если у вас есть небольшой тренировочный набор, я бы предложил использовать SVM.
Кроме того, вы можете найти здесь полезную инфографику о том, когда использовать различные алгоритмы машинного обучения от scikit-learn. Однако, насколько мне известно, среди научного сообщества нет единого мнения о том, что если у проблемы есть функции X, Y и Z, то лучше использовать svm. Я бы предложил попробовать разные методы. Также, пожалуйста, не забывайте, что svm или нейронные сети - это просто метод для вычисления модели. Это очень важно, а также функции, которые вы используете.
supervised learning
тэг, так как SVM также можно использовать в неконтролируемых задачах обучения .