Ich benutze neuronale Netze für das meiste Problem. Der Punkt ist, dass es in den meisten Fällen mehr um die Erfahrung des Benutzers als um das Modell geht. Hier sind einige Gründe, warum ich NNs mag.
- Sie sind flexibel. Ich kann jeden Verlust, den ich will, auf sie werfen: Scharnierverlust, Quadrat, Kreuzentropie, wie Sie es nennen. Solange es differenzierbar ist, kann ich sogar einen Verlust entwerfen, der genau meinen Bedürfnissen entspricht.
- Sie können probabilistisch behandelt werden: Bayesianische Neuronale Netze, Variations-Bayes, MLE / MAP, alles ist da. (Aber in einigen Fällen schwieriger.)
- Sie sind schnell. Die meisten MLPs bestehen aus zwei Matrixmultiplikationen und einer dazwischen angewendeten Nichtlinearitätskomponente. Schlage das mit einer SVM.
Ich werde Ihre anderen Punkte Schritt für Schritt durchgehen.
Haben Sie eine starke Grundtheorie
Ich würde sagen, NNs sind in diesem Fall genauso stark: da Sie sie in einem probabilistischen Rahmen trainieren. Dies ermöglicht die Verwendung von Priors und einer Bayes'schen Behandlung (z. B. mit Variationstechniken oder Approximationen).
Erreichen Sie das globale Optimum durch quadratische Programmierung
Für einen Satz von Hyperparametern. Die Suche nach gutem hps ist jedoch nicht konvex, und Sie wissen nicht, ob Sie auch das globale Optimum gefunden haben.
Haben Sie keine Probleme bei der Auswahl einer geeigneten Anzahl von Parametern
Bei SVMs müssen Sie auch Hyperparameter auswählen.
Benötigt weniger Speicher zum Speichern des Vorhersagemodells
Sie müssen die Support-Vektoren speichern. Die Aufbewahrung von MLPs durch SVMs ist in der Regel nicht billiger, dies hängt vom Einzelfall ab.
Erzielen Sie besser lesbare Ergebnisse und eine geometrische Interpretation
Die oberste Ebene eines MLP ist eine logistische Regression bei der Klassifizierung. Somit gibt es auch eine geometrische Interpretation (Trennung der Hyperebene) und eine probabilistische Interpretation.