Wann schneidet Naive Bayes besser ab als SVM?


17

In einem kleinen Textklassifizierungsproblem, das ich mir angesehen habe, hat Naive Bayes eine Leistung gezeigt, die einer SVM ähnelt oder größer ist, und ich war sehr verwirrt.

Ich habe mich gefragt, welche Faktoren den Triumph eines Algorithmus über den anderen entscheiden. Gibt es Situationen, in denen es keinen Sinn macht, Naive Bayes gegenüber SVMs zu verwenden? Kann jemand Licht ins Dunkel bringen?


1
Folgen Sie diesem Link für ein nettes und relevantes Tutorial
q12

Antworten:


27

Es gibt keine einheitliche Antwort darauf, welche Methode für einen bestimmten Datensatz am besten geeignet ist . Für eine Vergleichsstudie über einen bestimmten Datensatz sollten immer verschiedene Arten von Klassifikatoren in Betracht gezogen werden. In Anbetracht der Eigenschaften des Datasets haben Sie möglicherweise einige Hinweise, die einigen Methoden den Vorzug geben. Es wäre jedoch immer noch ratsam, mit allen zu experimentieren, wenn dies möglich ist.

Naive Bayes Classifier (NBC) und Support Vector Machine (SVM) haben unterschiedliche Optionen, einschließlich der Auswahl der Kernelfunktion für jede. Beide reagieren empfindlich auf Parameteroptimierung (dh unterschiedliche Parameterauswahl kann ihre Ausgabe erheblich verändern) . Wenn Sie also ein Ergebnis haben, das zeigt, dass NBC eine bessere Leistung als SVM erbringt. Dies gilt nur für die ausgewählten Parameter. Bei einer anderen Parameterauswahl kann es jedoch vorkommen, dass SVM eine bessere Leistung erbringt.

Wenn die Annahme der Unabhängigkeit in NBC durch die Variablen Ihres Datensatzes erfüllt wird und der Grad der Klassenüberlappung gering ist (dh die potenzielle lineare Entscheidungsgrenze), wird erwartet, dass NBC eine gute Leistung erbringt. Bei einigen Datasets kann NBC bei der Optimierung mithilfe der Auswahl von Wrapper-Features beispielsweise andere Klassifikatoren außer Kraft setzen. Selbst wenn eine vergleichbare Leistung erzielt wird, ist NBC aufgrund seiner hohen Geschwindigkeit wünschenswerter.

Zusammenfassend sollten wir keine Klassifizierungsmethode bevorzugen, wenn sie in einem Kontext die anderen übertrifft, da sie in einem anderen möglicherweise schwerwiegend versagt. ( DAS IST NORMAL BEI DATA-MINING-PROBLEMEN ).


7
(+1) Auch kein Satz von freiem Mittagessen genannt . Ich bin zwar nicht ganz einverstanden mit dem Parameter Sensitivitätsvergleich (Single Decision Tree ist meiner Meinung nach einer der sensitivsten Ansätze), aber darüber sollten wir hier nicht diskutieren :).
steffen

@steffen, danke für deinen wertvollen Kommentar. Es gibt viele verschiedene Möglichkeiten, die Modelle zu optimieren, und ich stimme zu, dass wir nicht verallgemeinern können, welches Modell in allen Fällen empfindlicher ist. Bei der Funktionsauswahl sind DT wahrscheinlich weniger empfindlich als NBC, dies ist jedoch möglicherweise nicht der Fall. Ich werde die Antwort bearbeiten, um Ihren Kommentar zu berücksichtigen, und wenn Sie möchten, können Sie ihn auch bearbeiten. Vielen Dank :).
Soufanom

3
+1 für den Kommentar zur Parameterempfindlichkeit. Es ist auch erwähnenswert, dass viel von der Theorie SVM gilt für Modelle mit einem festen Kern, so sobald Sie versuchen , zu optimieren , um die Hyper-Parameter (die Untermauerung muss getan werden und sorgfältig durchgeführt) viel von der theoretischen Basis nicht mehr gilt.
Dikran Marsupial
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.