Ich versuche, Nachrichten mithilfe einer SVM in verschiedene Kategorien zu klassifizieren. Ich habe eine Liste der gewünschten Wörter / Symbole aus dem Trainingsset zusammengestellt.
Für jeden Vektor, der eine Nachricht darstellt, setze ich die entsprechende Zeile auf, 1
wenn das Wort vorhanden ist:
"Corpus" ist: [Mary, Little, Lamm, Star, Twinkle]
erste Nachricht: "Mary hatte ein kleines Lamm" -> [1 1 1 0 0]
zweite Meldung: "Funkelnder kleiner Stern" -> [0 1 0 1 1]
Ich denke, dies ist eine bei SVM weit verbreitete Einrichtung, aber meine Frage ist, ob bei Tausenden von Wörtern im Satz nur 1-2 Wörter pro Nachricht tatsächlich angezeigt werden. Beeinträchtigt die lineare Abhängigkeit meines Satzes von Trainingsvektoren die Konvergenzfähigkeit des Algorithmus?
quelle
flexmix
- aber ich habe jetzt seit ein paar Jahren "Learn R" in meinem Kalender!Antworten:
Sparsamkeit und lineare Abhängigkeit sind zwei verschiedene Dinge. Die lineare Abhängigkeit impliziert, dass einige der Merkmalsvektoren einfache Vielfache anderer Merkmalsvektoren sind (oder dasselbe gilt für Beispiele). In der von Ihnen beschriebenen Konfiguration halte ich eine lineare Abhängigkeit für unwahrscheinlich (dies impliziert, dass zwei Begriffe in allen Dokumenten dieselbe Häufigkeit (oder ein Vielfaches davon) aufweisen). Nur spärliche Funktionen zu haben, ist für die SVM kein Problem. Eine Möglichkeit, dies zu erkennen, besteht darin, dass Sie eine zufällige Drehung der Koordinatenachsen durchführen können, wodurch das Problem unverändert bleibt und die gleiche Lösung erhalten wird, die Daten jedoch vollständig uneinheitlich werden (dies ist zum Teil so, wie zufällige Projektionen funktionieren) ).
Es scheint auch, dass Sie über die SVM im Urzustand sprechen . Beachten Sie, dass die Kernelmatrix bei Verwendung der Kernel-SVM nur dann nicht dünn ist, wenn Sie über ein dünn besetztes Dataset verfügen. Es kann jedoch ein niedriger Rang sein. In diesem Fall können Sie diese Tatsache tatsächlich für ein effizienteres Training nutzen (siehe zum Beispiel Effizientes SVM-Training unter Verwendung von Kernel-Repräsentationen mit niedrigem Rang ).
quelle