Heim  >  Artikel  >  Backend-Entwicklung  >  Python implementiert die SVM-Klassifizierung (Support Vector Machine): Detaillierte Erläuterung der Algorithmusprinzipien

Python implementiert die SVM-Klassifizierung (Support Vector Machine): Detaillierte Erläuterung der Algorithmusprinzipien

WBOY
WBOYnach vorne
2024-01-24 09:33:051093Durchsuche

支持向量机(SVM)算法原理 Python实现支持向量机(SVM)分类

Beim maschinellen Lernen wird die Support Vector Machine (SVM) häufig zur Datenklassifizierung und Regressionsanalyse verwendet. Dabei handelt es sich um ein Diskriminanzalgorithmusmodell, das auf der Trennung von Hyperebenen basiert. Mit anderen Worten: Bei gegebenen beschrifteten Trainingsdaten gibt der Algorithmus eine optimale Hyperebene zur Klassifizierung neuer Beispiele aus.

Das Support Vector Machine (SVM)-Algorithmusmodell stellt Beispiele als Punkte im Raum dar. Nach der Zuordnung werden Beispiele verschiedener Kategorien so weit wie möglich unterteilt. Zusätzlich zur Durchführung einer linearen Klassifizierung können Support-Vektor-Maschinen (SVMs) effizient eine nichtlineare Klassifizierung durchführen, indem sie ihre Eingaben implizit in einen hochdimensionalen Merkmalsraum abbilden.

Was machen Support-Vektor-Maschinen?

Anhand einer Reihe von Trainingsbeispielen wird jedes Trainingsbeispiel mit einer Kategorie gemäß zwei Kategorien markiert. Anschließend wird ein Modell mithilfe des Trainingsalgorithmus der Support Vector Machine (SVM) erstellt und diesen beiden Kategorien neue Beispiele zugewiesen dass es zu einem nicht-probabilistischen binären linearen Klassifikator wird.

Python implementiert die Klassifizierung der Support Vector Machine (SVM)

Voraussetzungen: Numpy, Pandas, matplot-lib, scikit-learn

Erstellen Sie zunächst den Datensatz

from sklearn.datasets.samples_generator import make_blobs
X,Y=make_blobs(n_samples=500,centers=2,
random_state=0,cluster_std=0.40)
import matplotlib.pyplot as plt
plt.scatter(X[:,0],X[:,1],c=Y,s=50,cmap='spring');
plt.show()

Klassifizierung

xfit=np.linspace(-1,3.5)
plt.scatter(X[:,0],X[:,1],c=Y,s=50,cmap='spring')
for m,b,d in[(1,0.65,0.33),(0.5,1.6,0.55),(-0.2,2.9,0.2)]:
yfit=m*xfit+b
plt.plot(xfit,yfit,'-k')
plt.fill_between(xfit,yfit-d,yfit+d,edgecolor='none',
color='#AAAAAA',alpha=0.4)
plt.xlim(-1,3.5);
plt.show()

Das obige ist der detaillierte Inhalt vonPython implementiert die SVM-Klassifizierung (Support Vector Machine): Detaillierte Erläuterung der Algorithmusprinzipien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:163.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen