Präsentiert von Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 01.07.2002
CXT verwendet „Support Vector Machines“... Machine Learning Verfahren X Neuronale Netzwerke Genetische Algorithmen SUPPORT VECTOR MACHINES
Erstmals Thema 1992 auf der COLT-92 Praxisrelevante Forschung seit 1995 Findet Verwendung in folgenden Gebieten... Biometrie (z.B. Gesichtserkennung) Computerlinguistik (z.B. Textkategorisierung) Allgemein gesprochen ... „Mustererkennung“ Ermöglicht das Lernen von Klassifizierungen Kombination von mehreren bekannten Konzepten
Eine Einführung in „Support Vector Machines“ SVMs & Chunking Praxis-Demonstration: „Proof of Concept“
Fand erste Anwendung im „Perceptron“ (1956) b x-b x Fand erste Anwendung im „Perceptron“ (1956)
Es existieren relativ einfache Algorithmen Algorithmen sind schnell und massendatentauglich Nur linear separable Klassen können gelernt werden Lösung ist nicht immer ideal
x y R Hyperebene (Punkt) R Gesucht ist also
SVM hängen ausschließlich von den Skalarprodukten der Trainingsdaten ab Kernel-Funktion
Ein Beispiel für einen Kernel: Der Polynomial-Kernel
Polynomialer Kernel Radial Basis Function Kernel (RBF) Sigmoider Kernel
Nur linear separable Klassen können gelernt werden Lösung ist nicht immer ideal
w -1 +1 < 0 > 0
Berechnung der „wirklichen Breite“
Formalisierung der Trainingsdaten Nun ist folgendes zu erreichen: Minimiere: Unter der Bedingung, dass:
…diese Funktion Maximiere unter diesen Bedingungen
Für die Lösung gilt…
vi yi Die Trainingsdaten sind folgendermaßen aufgebaut Wort: wi-2 wi-1 wi wi+1 wi+2 POS: ti-2 ti-2 ti-2 ti-2 ti-2 yi z.B.: +1, wenn „wi ist Anfang einer NP“ Und -1, wenn „wi ist nicht Anf. einer NP“ Für die Trainingsdaten wurde der Negr@-Korpus (V2) verwendet. (ca. 10000 Sätze ca. 170000 Wörter)
Was verursacht die Probleme beim Chunken? Es muss der „passende“ Kernel gefunden werden Es gilt, alle Parameter ideal zu wählen Der Algorithmus ist vergleichsweise langsam Komplexität: O(n2) bis O(n3)
IRChunker Output CSVM IRTagger CPoCDemo Die CSVM-Klasse ist aufgabenunabhängig. Möglichst allgemeine und effiziente Implementierung