ich habe das Problem, dass sich durch die Anwendung der sklearn-Bibliotheksfunktionen inkorrekte Trenngeraden ergeben. Hier eine kurze Einführung:
Das Nutzen des OneVsRest-Classifiers führt dazu, dass sich teilweise absurde Trennebenen ergeben, wie ich den Bildern zu sehen ist. X besteht aus 80 Zeilen und 371 Spalten. Wo könnte der Fehler liegen?
Code: Alles auswählen
#X wird zuvor aus einer csv-Datei ausgelesen
#Y sind die zu den einzelnen Zeilen (Datensatz) gehörenden Klassen
X = StandardScaler().fit_transform(X)
clf = OneVsRestClassifier(sklearn.svm.SVC(kernel = "linear")).fit(X[:, [283, 370]], Y)
for i in clf.estimators_:
y = []
for val in X[:, 283]:
y = y + [(-1) * (val * i.coef_[0][0] + i.intercept_) / i.coef_[0][1]]
plt.plot(X[:, 283], y)
for i in range(0, 80):
if (Y[i] not in colors_table.keys()): #Festlegen einer Farbe für die erstmalig erfasste Klasse
colors_table[Y[i]] = color
color = color + 1
color_ = plot_colors[color_table[Y[i]]]
plt.plot(X[i, 283], X[i, 370], "." + color_)
plt.show()
Vielen Dank für eure Hilfe im Voraus!