Diskussion:Support Vector Machine/Archiv

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 8 Jahren von MartinThoma in Abschnitt Bias
Zur Navigation springen Zur Suche springen

kleine Korrektur

Wäre es nicht sinnvoller den Bias nicht in Fettdruck sondern normal als zu schreiben? Dieser ist ja im Gegensatz zu kein Vektor. Außerdem wäre vielleicht ein Hinweise hilfreich, dass der Bias eine reelle Zahl ist und ein Skalarprodukt. Falls es keine Einwände gibt, würde ich demnächst die Anpassungen vornehmen. -- Danvil So 17. Okt 11:36 CET 2009 (nicht signierter Beitrag von 85.181.106.195 (Diskussion | Beiträge) 11:38, 17. Okt. 2009 (CEST))

Ja, diese Anpassungen sollten vorgenommen werden. Ich fange mal damit an ... --zeno 11:16, 26. Mai 2011 (CEST)

Das wurde anscheinend schon umgesetzt. --Martin Thoma 12:02, 25. Dez. 2015 (CET)

Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:02, 25. Dez. 2015 (CET)

logischer Fehler im Anfangsabschnitt?

In der Definition am Anfang wird y als "Vorzeichen" definiert:

.

Im darauffolgenden Abschnitt steht dann "so dass gleichzeitig

.

" ... gilt". Das ist widersprüchlich. Ich will doch das "Vorzeichen" des Testdatums mit der SVM herausfinden, was soll da größer 1 bedeuten ? --89.53.5.37 12:22, 17. Dez. 2006 (CET)

Ich sehe hier keinen Widerspruch. Die Nebenbedingung "" gewährleistet nur, daß die Hyperebene so platziert wird, daß das Vorzeichen der Projektion eines Beispiels auf den Normalenvektor dem Vorzeichen des Trainingsbeispiels entspricht. Da die Signumsfunktion schwer zu handhaben ist und nur das Vorzeichen von zählt (also der tatsächliche Wert egal ist), läßt man die Signumsfunktion weg. Die Eins in könnte auch durch eine beliebige positive Konstante ersetzt werden, allerdings nicht durch Null, weil sonst die Minimierung der Norm des Normalenvektors keinen Sinn mehr machen würde. Die Eins gewährleistet sozusagen den Margin.
Darüber hinaus wird überhaupt nicht benutzt, um das Vorzeichen eines Testdatums herauszufinden, sondern ist eine Nebenbedingung im Training der SVM. Das Label eines Testbeispiels erhält man durch: ".

-- fasi Mo 8. Jan 11:08:26 CET 2007

Ich muss mich der Kritik anschließen. Aus dem Text ist absolut nicht ersichtlich, wieso die Nebenbedingung Sinn macht. Ebenso erscheint es auf den ersten Blick widersprüchlich, nur ||w|| zu minimieren, da man bei Verkleinerung von w durch entsprechende Anpassung von b die Trennebene unverändert lassen kann, und dennoch das Ergebnis der Zielfunktion verbessert. Des Rätsels Lösung steckt in der (wie oben schon gesagt) ungewöhnlichen Darstellung der Nebenbedingung. Die englische Seite (Abschnitt "Linear SVM") beschreibt das Verfahren in nachvollziehbarer Weise.

Die Kritik ist nun über ein Jahr und viele Änderungen her. Das hat sich vermutlich erledigt. --Martin Thoma 12:49, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:49, 25. Dez. 2015 (CET)

Überarbeitung

Wir haben den Artikel einer sehr umfassenden Revision unterzogen, da sich durch zahlreiche Bearbeitungen doch zahlreiche Ungenauigkeiten eingeschlichen hatten. Ausserdem sind die wesentlichen Gleichungen jetzt ebenfalls vorhanden. Als Kategorien habe ich Klassifikation, Maschinelles Lernen und Statistik gewählt. Wir hoffen mit der Überarbeitung auch die meisten offenen Punkte berücksichtigt zu haben (Vapnik, Kernel, Nichtlinearität, Support-Vektor).

--phb 16:54, 11. Aug 2006 (CEST)

Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:50, 25. Dez. 2015 (CET)

Polynom-Ansatz

20.06.2006 by tnt Im Artikel wird in keiner Weise auf die Verwendung gekrümmter Hyperflächen statt Hyperebenen eingegangen. Die Abbildung zeigt dann aber einen Polynomialansatz im zweidimensionalen Raum. Die Verwendung von SVM ist doch aber gerade in hochdimensionalen Räumen in der Praxis relevant. Da sich der geneigte Leser im allgemeinen keinen 7-dimensionalen Raum vorstellen kann, wäre hier als Abbildung daher eine Trennung der Klassen durch eine Ebene im dreidimensionalen (ax+by+cz=d) Raum sinnvoller. (Alternativ könnte der Artikel auf die Polynomial-Ansätze erweitert werden, wenn das Bild passen soll.)

Aber die Verwendung von Kernel-Funktionen wird doch angesprochen? Ich verstehe nicht ganz was dir fehlt. Das Bild zeigt die Rückprojektion aus dem RKHS in den Eingaberaum (ist vermutlich ein Gausskern). --phb 18:18, 28. Jul 2006 (CEST)

Eine nicht-lineare Trennfläche wird gezeigt. Vermutlich hat sich das erledigt. --Martin Thoma 12:52, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:52, 25. Dez. 2015 (CET)

Verschiebung und Überarbeitung

Ich habe den Artikel mit Weiterleitung nach Support-Vector-Machine verschoben. Die dt. Übersetzung "Stützvektormaschine" ist (leider) bäh, und das Mischmasch aus Deutsch und Englisch überflüssig. Die Kategorie habe ich in Klassifikation umgeändert, denn genau da gehören die SVMs hin. Die oben erwähnten Kategorien (Neurodings und Statistikbums) machen nur Gebrauch von der Klassifikation, ebenso wie das Hauptgebiet des Verfahrens, die Mustererkennung. --Θ~ 17:33, 26. Jul 2006 (CEST)

Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:53, 25. Dez. 2015 (CET)

Vladimir Vapnik

Wie Informationen aus Artikeln der Wikipedia verloren gehen, oder: Wo ist der Vladimir Vapnik hin? Vielleicht kann jemand ihn passend in den Geschichtsteil einfügen. --chrislb 问题 17:17, 10. Aug 2006 (CEST)

Das ist anscheinend zwischenzeitlich geschehen. Allerdings ist die deutsche transkription nun "Wladimir Wapnik". --Martin Thoma 12:54, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:54, 25. Dez. 2015 (CET)

Bedingungen für die Anwendung

Hi. Ganz generell gesprochen ist doch ein Klassifikator etwas, dem man eine Menge Trainingsvektoren aus den verschiedenen Klassen gibt und der danach bei einem Testvektor sagt, in welche Klasse der zuzuordnen ist. Dafür gibt es normalerweise Bedingungen, zum Beispiel, dass die Merkmalsvektoren (also Trainings- und Testvektoren) aus dem sein müssen, dass die Merkmalsvektoren nur metrische, keine kategorialen Merkmale enthalten dürfen oder dass die Merkmale des Merkmalsvektors voneinander unabhängig sein müssen. In der Literatur gibts bestimmt auch ein Buch, wo drin steht, welche Bedingungen die SVM an den Merkmalsraum hat. Ich denke auch, dass das sehr wichtig ist, denn sonst wendet man möglicherweise einen Klassifikator (z.B. SVM) auf ein Szenario an, auf welches er nicht anwendbar ist.

Kennt jemand solche Einschränkungen Bedingungen für die Anwendbarkeit und kann einen entsprechenden Abschnitt hier einfügen?

--Bjoern.thalheim 10:45, 16. Nov. 2006 (CET)

Hallo. SVMs können grundsätzlich mit dem richtigen Kernel auf beliebige Mengen als Ausgangs"raum" angewendet werden, an die keine weiteren Vorraussetzungen gestellt werden, so gibt es z.B. Anwendungen auf Strings (für DNA-Klassifikation) oder Graphen. Man muss nur die richtige Kernelfunktion haben - und die muss eben positiv definit sein, d.h. die Kernelmatrix (die Skalarproduktmatrix im Feature Space) darf keine negativen Eigenwerte haben.

--phb 09:07, 15. Mai 2007 (CEST)

Klassifikation funktioniert folgendermaßen: Gegeben ist eine Menge beliebiger(!) Objekte, deren Klassenzugehörigkeit bekannt ist (Trainigsmenge), sowie eine Menge ebensolcher Objekte, die sortiert werden sollen (Testmenge). Zunächst bestimmt man eine Reihe von n Merkmalen, auf denen die Klassifikation basieren soll. Diese Merkmale werden für jedes Objekt gemessen, so dass man pro Merkmal einen Zahlenwert erhält (z. B. eine Länge in Zentimetern). Einige Merkmale muss man durch eine selbst erarbeitete Abbildungsvorschrift auf einen Zahlenwert abbilden (z. B. eine Codierung mit 1 für deutsch und 0 für ausländisch, das was du „kategoriale Merkmale“ nennst), Merkmale, deren Messergebnis sich aus mehreren Zahlen zusammensetzt, werden in ebenso viele Merkmale aufgespalten (z. B. werden Farben nach dem RGB-System in Rot-, Grün- und Blauanteil aufgespalten).
Durch dieses Verfahren wird nun jedes Objekt durch einen Punkt im Rn repräsentiert. Nun bastle ich mir einen beliebigen Klassifikator, trainiere ihn mit den Trainingsdaten und lasse ihn anschließend auf die Testmenge los. Prinzipiell passen alle Klassifikatoren der Mustererkennung, denn alle arbeiten im Rn auf beliebig vielen Merkmalen. Die Unterschiede der Klassifikatoren liegen hauptsächlich in der Qualität der Ergebnisse, der Geschwindigkeit und der Einfachheit der Bedienung. So waren beispielsweise Perzeptronen lange Zeit sehr langsam und sind noch heute aufwändig in der Bedienung, während Support Vector Machines gute Ergebnisse liefern, sehr schnell und einfach zu bedienen sind.
Es ist sinnvoll, sich vor der Anwendung des Klassifikators zu vergewissern, dass der Merkmalsraum vernünftig modelliert wurde. Dazu kann man beispielsweise mit der Hauptkomponentenanalyse untersuchen, ob Merkmale voneinander abhängig sind. Merkmale, die voneinander abhängig sind oder gar das selbe beschreiben, können unter Umständen zu einem künstlichen Kombinationsmesswert zusammengefasst werden; das erhöht Geschwindigkeit und Sicherheit des Klassifikators. Ebenso sollte man prüfen, ob es Merkmale gibt, die keinerlei Einfluss auf die Sortierung haben; solche Merkmale sollte man entfernen, da sie unnötigen Mehraufwand darstellen und unter Umständen zu Datenrauschen führen. Diese Dimensionsreduktion spart Messaufwand und Speicherplatz und erhöht die Geschwindigkeit des Klassifikators.
Du siehst also: Alle Klassifikatoren arbeiten im Rn. Jeder Merkmalsraum kann (mehr oder weniger sinnvoll) auf den Rn abgebildet werden. Jeder Klassifikator ist für jeden Merkmalsraum geeignet. --Bitbert -?- 09:57, 15. Mai 2007 (CEST)
Da keine Nachfragen gekommen sind, ist das wohl erledigt. --Martin Thoma 19:03, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 19:03, 25. Dez. 2015 (CET)

Bias

Der Link "Bias" hilft nicht wirklich weiter da er nur zu einer Übersicht führt die nichteinmal den hier gemeinten Zusammenhang enthält oder übersehe ich da was ?

Schon recht. Der Artikel verweist auf eine Begriffsklärung (WP:BKL). Was du wahrscheinlich suchst wird aber dort verlinkt: Erwartungstreue. Korrigiere mich, wenn ich falsch liege. --chrislb 问题 19:38, 3. Mai 2007 (CEST)
Anscheinend hat sich das erledigt, da seit 8 Jahren keine andere Aussage kommt. --Martin Thoma 19:09, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 19:09, 25. Dez. 2015 (CET)

Lineare Diskriminante/Geschichte

Im Abschnitt Geschichte wird behauptet, daß die Idee Hyperebenen zur Trennung von Klassen zu benutzen, auf Frank Rosenberg und das Jahr 1958 zurück geht. Dem ist keineswegs so, denn Fisher hat 1938 schon mit der sog. Fisherschen Linearen Diskriminante ein Verfahren zur statistischen Klassifikation angegeben, das auf der Verwendung einer Hyperebene basiert. In der Tat scheint mir anhand der Beschreibung auf Wikipedia zwischen beiden gar kein Unterschied zu bestehen! 87.160.206.148 19:09, 17. Sep. 2007 (CEST)

Das wurde anscheinend zwischenzeitlich angepasst. --Martin Thoma 12:55, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:55, 25. Dez. 2015 (CET)

Nicht-linear separierbare Daten

Im Abschnitt wird darüber gesprochen, dass bei Messfehlern und dergleichen mit Schlupfvariablen gearbeitet wird und deren Summe minimiert wird. Soweit richtig. Jedoch können doch auch lineare Daten verrauscht sein. Ist die Überschrift für diesen Teil so richtig? (nicht signierter Beitrag von 78.94.170.201 (Diskussion) 10:42, 28. Apr. 2011 (CEST))

Wenn die Daten so verrauscht sind, dass es keine Gerade gibt, die sie klar trennt, sind die Daten nicht mehr linear separierbar. Aber mit Schlupfvariablen wird auch dann versucht, eine Gerade zu finden. Erst der in Abschnitt 2.4 beschriebene Ansatz mit Kernelfunktionen erzeugt tatsächlich nicht-lineare Klassengrenzen. --Zahnradzacken 15:29, 29. Apr. 2011 (CEST)

Die Frage wurde anscheinend geklärt. --Martin Thoma 12:56, 25. Dez. 2015 (CET)

Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:56, 25. Dez. 2015 (CET)

Auf der SVM Seite ist der Weblink

offensichtlich nicht für die Öffentlichkeit zugänglich, somit wenig hilfreich. Sollten man dann den Link nicht besser entfernen? -- RoJoGra 21:47, 27. Jul. 2011 (CEST)

Der Link wurde anscheinend zwischenzeitlich entfernt. --Martin Thoma 12:57, 25. Dez. 2015 (CET)
Archivierung dieses Abschnittes wurde gewünscht von: --Martin Thoma 12:57, 25. Dez. 2015 (CET)