Das Prinzip und der Python-Code der SVM-Klassifizierung (Support Vector Machine) sind leicht zu verstehen


Fügen Sie hier eine Bildbeschreibung ein

1. Was ist SVM?

SVM (Support Vector Machine) ist ein sehr beliebter Algorithmus für maschinelles Lernen, der für binäre und Mehrfachklassifizierungsprobleme verwendet werden kann. Die Grundidee besteht darin, eine Klassifizierung durch die Konstruktion einer linearen oder nichtlinearen Hyperebene zu erreichen, die das Klassifizierungsintervall zwischen Stichproben verschiedener Kategorien maximiert.

2. Nutzungsschritte

Die grundlegenden Schritte der SVM-Klassifizierung sind wie folgt:

  1. Gemäß den Daten des Trainingssatzes wird die optimale Hyperebene (normalerweise linear oder nichtlinear) so ausgewählt, dass der maximale Trennungsabstand zwischen den beiden Kategorien dividiert durch die Ebene besteht.
  2. Wenn Sie neue Daten vorhersagen, projizieren Sie diese auf die optimale Hyperebene und bestimmen Sie anhand ihres Standorts, zu welcher Kategorie sie gehören.

3. Python-Codebeispiel des SVM-Klassifizierungsalgorithmus

Der Code lautet wie folgt (Beispiel):

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC

# 加载鸢尾花数据集
iris = datasets.load_iris()

# 获取特征和标签
X = iris.data
y = iris.target

# 数据集切分
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)

# SVM分类器模型训练
svm_model = SVC(kernel='linear', C=1.0)
svm_model.fit(X_train, y_train)

# 预测测试数据集
predicted_y = svm_model.predict(X_test)

# 打印预测结果及模型评分
print("Predicted labels: ", predicted_y)
print("Accuracy score: ", svm_model.score(X_test, y_test))


Zusammenfassen

Im obigen Code verwenden wir den Iris-Datensatz, um den SVM-Klassifikator zu trainieren und zu testen. Zuerst erhalten wir den Datensatz, indem wir die Ladefunktion in der Scikit-learn-Bibliothek aufrufen und ihn in Features und Beschriftungen aufteilen. Anschließend haben wir den gesamten Datensatz in einen Trainingssatz und einen Testsatz unterteilt und den Trainingsdatensatz mithilfe des SVM-Algorithmus angepasst, um das Modell zu erhalten. Schließlich verwenden wir das Modell, um die Zielklassifizierung im Testsatz vorherzusagen und die Vorhersageergebnisse und die Modellgenauigkeitsbewertung auszudrucken. In praktischen Anwendungen müssen wir je nach Szenario die am besten geeigneten SVM-Variablen und Kernel-Funktionstypen (z. B.lineare, polynomische oder radiale Basisfunktion usw.).

Guess you like

Origin blog.csdn.net/qlkaicx/article/details/130471177