Я использую нейронные сети для большинства проблем. Дело в том, что в большинстве случаев речь идет больше об опыте пользователя, чем о модели. Вот несколько причин, почему мне нравятся NNs.
- Они гибкие. Я могу бросить в них любую потерю, какую захочу: потеря в петле, квадрат, перекрестная энтропия, назовите это. Пока это различимо, я могу даже рассчитать убыток, который точно соответствует моим потребностям.
- К ним можно относиться вероятностно: байесовские нейронные сети, вариационные байесовские алгоритмы, MLE / MAP, все есть. (Но в некоторых случаях сложнее.)
- Они быстрые. Большинство MLP будут двумя матричными умножениями и одним нелинейным компонентом, применяемым между ними. Удар это с SVM.
Я расскажу другие ваши пункты шаг за шагом.
Иметь сильную теорию основания
Я бы сказал, что NN одинаково сильны в этом случае: поскольку вы обучаете их в вероятностных рамках. Это делает возможным использование априорных значений и байесовское лечение (например, с помощью вариационных методов или приближений).
Достигнуть глобального оптимума благодаря квадратичному программированию
Для одного набора гиперпараметров. Тем не менее, поиск хорошего hps не является выпуклым, и вы не будете знать, нашли ли вы также глобальный оптимум.
Нет проблем для выбора правильного количества параметров
С SVM вы также должны выбирать гиперпараметры.
Требуется меньше памяти для хранения прогнозирующей модели
Вам нужно хранить векторы поддержки. Как правило, SVM не будет дешевле хранить MLP, это зависит от ситуации.
Дайте более читаемые результаты и геометрическую интерпретацию
Верхний слой MLP является логистической регрессией в случае классификации. Таким образом, существует геометрическая интерпретация (разделяющая гиперплоскость) и вероятностная интерпретация.