Hier ist mein Beispielcode für SVM-Klassifizierung.So zeichnen Sie SVM-Klassifizierung Hyperebene
train <- read.csv("traindata.csv")
test <- read.csv("testdata.csv")
svm.fit=svm(as.factor(value)~ ., data=train, kernel="linear", method="class")
svm.pred = predict(svm.fit,test,type="class")
Die Funktion Wert in meinem Beispiel ist ein Faktor, der zwei Ebenen (entweder wahr oder falsch) gibt. Ich wollte eine Grafik meines SVM-Klassifikators plotten und sie in zwei Gruppen gruppieren. Eine Gruppe diejenigen mit einer "wahren" und eine andere Gruppe als falsch. Wie produzieren wir ein 3D
oder 2D
SVM-Diagramm? Ich habe versucht mit plot(svm.fit, train)
, aber es scheint nicht für mich zu arbeiten. Es gibt diese Antwort, die ich auf SO fand, aber ich bin nicht klar, mit was t
, x, y, z
, w
und cl
in der Antwort sind.
Plotting data from an svm fit - hyperplane
ich habe etwa 50 Funktionen in meinem Dataset, die die letzte Spalte ist ein Faktor. Jede einfache Art, es zu tun oder wenn jemand mir helfen könnte, seine Antwort zu erklären.
kann ich "train" anstelle von "svm_breast_cancer_dataset" nicht verwenden? – Mahsolid
Genau. Sie werden nicht in der Lage sein, die Entscheidungsgrenze ** in einem realen Daten-Datensatz ** darzustellen. Dies ist nur für Spielzeugdatensätze möglich, die bis zu 3 Funktionen haben. Für echte Daten - Sie können immer noch etwas visualisieren (wie in der Antwort beschrieben) - aber nicht die eigentliche Hyperebene – lejlot
Gehen Sie durch die Grundlagen des Aufrufs von SVM auf Ihre Daten, alles ist in dem angegebenen Link beschrieben. – lejlot