[PYTHON] <Kurs> Maschinelles Lernen Kapitel 7: Support Vector Machine

Maschinelles Lernen

Inhaltsverzeichnis Kapitel 1: Lineares Regressionsmodell [Kapitel 2: Nichtlineares Regressionsmodell] (https://qiita.com/matsukura04583/items/baa3f2269537036abc57) [Kapitel 3: Logistisches Regressionsmodell] (https://qiita.com/matsukura04583/items/0fb73183e4a7a6f06aa5) [Kapitel 4: Hauptkomponentenanalyse] (https://qiita.com/matsukura04583/items/b3b5d2d22189afc9c81c) [Kapitel 5: Algorithmus 1 (k-Nachbarschaftsmethode (kNN))] (https://qiita.com/matsukura04583/items/543719b44159322221ed) [Kapitel 6: Algorithmus 2 (k-Mittel)] (https://qiita.com/matsukura04583/items/050c98c7bb1c9e91be71) [Kapitel 7: Support Vector Machine] (https://qiita.com/matsukura04583/items/6b718642bcbf97ae2ca8)

Kapitel 7: Support Vector Machine

y=w^Tx+b=\sum_{j=1}^{m} w_jx_j+b

SVM0.jpg

y(x)=w^Tx+b=\sum_{j=1}^{m} a_it_ix~Tx+b

SVM1-2.jpg SVM1-3.jpg

(Referenz) Lösen des Hauptproblems von Support-Vektor-Maschinen mit der unbestimmten Multiplikatormethode von Lagrange

(Übung 1) Klassifizierung von Iris durch SVM

In Bezug auf die Support-Vektor-Maschine war es leicht zu verstehen, was ich im vorherigen "Maschinelles Lernen beginnend mit Raspberry Pi" gelernt habe, daher werde ich es mit einer Erinnerung beschreiben.

#Importieren Sie verschiedene Module, die Sie zuerst benötigen
from sklearn import datasets, svm
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import ListedColormap

#Laden Sie Irisdaten und speichern Sie sie in einer variablen Iris
iris = datasets.load_iris()

#Speichern Sie die Features in Variable X und das Ziel in Variable y
X = iris.data
y = iris.target

#Inhaltsanzeige von X und y
print(X)
print(y)

Ergebnis


[[5.1 3.5 1.4 0.2]
 [4.9 3.  1.4 0.2]
 [4.7 3.2 1.3 0.2]
 [4.6 3.1 1.5 0.2]
 [5.  3.6 1.4 0.2]
 [5.4 3.9 1.7 0.4]
 [4.6 3.4 1.4 0.3]
 [5.  3.4 1.5 0.2]
 [4.4 2.9 1.4 0.2]
 [4.9 3.1 1.5 0.1]
 [5.4 3.7 1.5 0.2]
 [4.8 3.4 1.6 0.2]
 [4.8 3.  1.4 0.1]
 [4.3 3.  1.1 0.1]
 [5.8 4.  1.2 0.2]
 [5.7 4.4 1.5 0.4]
 [5.4 3.9 1.3 0.4]
 [5.1 3.5 1.4 0.3]
 [5.7 3.8 1.7 0.3]
 [5.1 3.8 1.5 0.3]
 [5.4 3.4 1.7 0.2]
 [5.1 3.7 1.5 0.4]
 [4.6 3.6 1.  0.2]
 [5.1 3.3 1.7 0.5]
 [4.8 3.4 1.9 0.2]
 [5.  3.  1.6 0.2]
 [5.  3.4 1.6 0.4]
 [5.2 3.5 1.5 0.2]
 [5.2 3.4 1.4 0.2]
 [4.7 3.2 1.6 0.2]
 [4.8 3.1 1.6 0.2]
 [5.4 3.4 1.5 0.4]
 [5.2 4.1 1.5 0.1]
 [5.5 4.2 1.4 0.2]
 [4.9 3.1 1.5 0.2]
 [5.  3.2 1.2 0.2]
 [5.5 3.5 1.3 0.2]
 [4.9 3.6 1.4 0.1]
 [4.4 3.  1.3 0.2]
 [5.1 3.4 1.5 0.2]
 [5.  3.5 1.3 0.3]
 [4.5 2.3 1.3 0.3]
 [4.4 3.2 1.3 0.2]
 [5.  3.5 1.6 0.6]
 [5.1 3.8 1.9 0.4]
 [4.8 3.  1.4 0.3]
 [5.1 3.8 1.6 0.2]
 [4.6 3.2 1.4 0.2]
 [5.3 3.7 1.5 0.2]
 [5.  3.3 1.4 0.2]
 [7.  3.2 4.7 1.4]
 [6.4 3.2 4.5 1.5]
 [6.9 3.1 4.9 1.5]
 [5.5 2.3 4.  1.3]
 [6.5 2.8 4.6 1.5]
 [5.7 2.8 4.5 1.3]
 [6.3 3.3 4.7 1.6]
 [4.9 2.4 3.3 1. ]
 [6.6 2.9 4.6 1.3]
 [5.2 2.7 3.9 1.4]
 [5.  2.  3.5 1. ]
 [5.9 3.  4.2 1.5]
 [6.  2.2 4.  1. ]
 [6.1 2.9 4.7 1.4]
 [5.6 2.9 3.6 1.3]
 [6.7 3.1 4.4 1.4]
 [5.6 3.  4.5 1.5]
 [5.8 2.7 4.1 1. ]
 [6.2 2.2 4.5 1.5]
 [5.6 2.5 3.9 1.1]
 [5.9 3.2 4.8 1.8]
 [6.1 2.8 4.  1.3]
 [6.3 2.5 4.9 1.5]
 [6.1 2.8 4.7 1.2]
 [6.4 2.9 4.3 1.3]
 [6.6 3.  4.4 1.4]
 [6.8 2.8 4.8 1.4]
 [6.7 3.  5.  1.7]
 [6.  2.9 4.5 1.5]
 [5.7 2.6 3.5 1. ]
 [5.5 2.4 3.8 1.1]
 [5.5 2.4 3.7 1. ]
 [5.8 2.7 3.9 1.2]
 [6.  2.7 5.1 1.6]
 [5.4 3.  4.5 1.5]
 [6.  3.4 4.5 1.6]
 [6.7 3.1 4.7 1.5]
 [6.3 2.3 4.4 1.3]
 [5.6 3.  4.1 1.3]
 [5.5 2.5 4.  1.3]
 [5.5 2.6 4.4 1.2]
 [6.1 3.  4.6 1.4]
 [5.8 2.6 4.  1.2]
 [5.  2.3 3.3 1. ]
 [5.6 2.7 4.2 1.3]
 [5.7 3.  4.2 1.2]
 [5.7 2.9 4.2 1.3]
 [6.2 2.9 4.3 1.3]
 [5.1 2.5 3.  1.1]
 [5.7 2.8 4.1 1.3]
 [6.3 3.3 6.  2.5]
 [5.8 2.7 5.1 1.9]
 [7.1 3.  5.9 2.1]
 [6.3 2.9 5.6 1.8]
 [6.5 3.  5.8 2.2]
 [7.6 3.  6.6 2.1]
 [4.9 2.5 4.5 1.7]
 [7.3 2.9 6.3 1.8]
 [6.7 2.5 5.8 1.8]
 [7.2 3.6 6.1 2.5]
 [6.5 3.2 5.1 2. ]
 [6.4 2.7 5.3 1.9]
 [6.8 3.  5.5 2.1]
 [5.7 2.5 5.  2. ]
 [5.8 2.8 5.1 2.4]
 [6.4 3.2 5.3 2.3]
 [6.5 3.  5.5 1.8]
 [7.7 3.8 6.7 2.2]
 [7.7 2.6 6.9 2.3]
 [6.  2.2 5.  1.5]
 [6.9 3.2 5.7 2.3]
 [5.6 2.8 4.9 2. ]
 [7.7 2.8 6.7 2. ]
 [6.3 2.7 4.9 1.8]
 [6.7 3.3 5.7 2.1]
 [7.2 3.2 6.  1.8]
 [6.2 2.8 4.8 1.8]
 [6.1 3.  4.9 1.8]
 [6.4 2.8 5.6 2.1]
 [7.2 3.  5.8 1.6]
 [7.4 2.8 6.1 1.9]
 [7.9 3.8 6.4 2. ]
 [6.4 2.8 5.6 2.2]
 [6.3 2.8 5.1 1.5]
 [6.1 2.6 5.6 1.4]
 [7.7 3.  6.1 2.3]
 [6.3 3.4 5.6 2.4]
 [6.4 3.1 5.5 1.8]
 [6.  3.  4.8 1.8]
 [6.9 3.1 5.4 2.1]
 [6.7 3.1 5.6 2.4]
 [6.9 3.1 5.1 2.3]
 [5.8 2.7 5.1 1.9]
 [6.8 3.2 5.9 2.3]
 [6.7 3.3 5.7 2.5]
 [6.7 3.  5.2 2.3]
 [6.3 2.5 5.  1.9]
 [6.5 3.  5.2 2. ]
 [6.2 3.4 5.4 2.3]
 [5.9 3.  5.1 1.8]]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
 2 2]

Es kann bestätigt werden, dass die Anzahl der Datenproben 150 beträgt und die Merkmalsmenge die Dimension 4 beträgt. y hat das Beurteilungsergebnis des Klassifizierungsziels. Dies ist auch 150 Stück.

print(X.shape)
print(y.shape)

Ergebnis


(150, 4)
(150,)

Klassifizierung von 2 Merkmalen und 2 Klassen durch eine lineare Unterstützungsvektormaschine (1)

Ziele sind ** nicht ** Iris virginica (2) **, nur zwei Arten von Iris setosa (0) und Iris versicolor (1) werden klassifiziert.

#Die Merkmalsmenge ist die Länge des äußeren Blumenstücks(sepal length)Und Breite(sepal width)von
#Begrenzt auf nur 2(In zwei Dimensionen denken)
X = X[:,:2]

#Ziel ist 2(iris virginica)Nicht, 2 Arten Iris Setosa(0)Und Iris versicolor(1) 
#Nur für(Teilen Sie den Bereich in zwei Teile)
X = X[Target!=2]
Target = Target[Target!=2]

#Support Vector Machine für die Klassifizierung(Support Vector Classifier)Bereiten
clf = svm.SVC(C=1.0, kernel='linear')
#Optimierte Anpassung an Ihre Daten
clf.fit(X, Target)

#####Zeigen Sie das Klassifizierungsergebnis durch Farbcodierung des Hintergrunds an

#Länge des äußeren Blütenstücks(sepal length)Und Breite(sepal width)Mindestwert von
#Der vom Maximalwert um 1 erweiterte Bereich wird als Grafikanzeigebereich verwendet.
#So etwas wie Display-Tipps
x_min = min(X[:,0]) - 1
x_max = max(X[:,0]) + 1
Target_min = min(X[:,1]) - 1
Target_max = max(X[:,1]) + 1

#Teilen Sie den Grafikanzeigebereich vertikal und horizontal in Raster von 500 ein
# (Färben des Hintergrunds gemäß der Klassifizierungsklasse)
XX, YY = np.mgrid[x_min:x_max:500j, Target_min:Target_max:500j]

#Scikit zeigt auf das Gitter-Zum Lernen neu anordnen
Xg = np.c_[XX.ravel(), YY.ravel()]

#Die Klasse, zu der die Punkte jedes Gitters gehören(0 oder 1)Die Vorhersage wird in Z gespeichert
Z = clf.predict(Xg)

#Ordnen Sie Z im Raster neu an
Z = Z.reshape(XX.shape)

#Klasse 0(iris setosa)Ist hellorange(1, 0.93, 0.5, 1)
#Klasse 1(iris versicolor)Ist hellblau(0.5, 1, 1, 1)
cmap01 = ListedColormap([(0.5, 1, 1, 1), (1, 0.93, 0.5, 1)])

#Hintergrundfarbe anzeigen
plt.pcolormesh(XX, YY, Z==0, cmap=cmap01)

#Achsenbeschriftung einstellen
plt.xlabel('sepal length')
plt.ylabel('sepal width')

#####Zeigen Sie Datenpunkte entsprechend dem Ziel in Farben an

# iris setosa (Target=0)Extrahieren Sie nur die Daten von
Xc0 = X[Target==0]
# iris versicolor (Target=1)Extrahieren Sie nur die Daten von
Xc1 = X[Target==1]

#Zeichnen Sie die Daten Xc0 der Iris setosa
plt.scatter(Xc0[:,0], Xc0[:,1], c='#E69F00', linewidths=0.5, edgecolors='black')
#Zeichnen Sie die Versicolor-Daten der Iris Xc1
plt.scatter(Xc1[:,0], Xc1[:,1], c='#56B4E9', linewidths=0.5, edgecolors='black')

#Holen Sie sich Support-Vektor
SV = clf.support_vectors_

#Support-Vektor visualisieren
# plt.scatter(SV[:, 0], SV[:, 1],
#                    s=100, facecolors='none', edgecolors='k')

#Zeigt einen roten Rand für Punkte im Unterstützungsvektor an
#plt.scatter(SV[:,0], SV[:,1], c=(0,0,0,0), linewidths=1.0, edgecolors='red')
plt.scatter(SV[:,0], SV[:,1], c='black', linewidths=1.0, edgecolors='red')

#Zeigen Sie das gezeichnete Diagramm an
plt.show()

無題.jpg

Klassifizierung von 2 Merkmalen und 2 Klassen durch eine lineare Unterstützungsvektormaschine (2)

Die Ziele werden als 2 ** nicht Iris setosa (0) **, nur 2 Typen (Iris virginica) und Iris versicolor (1) klassifiziert.

#Laden Sie neu und machen Sie das nächste:
#Laden Sie die Irisdaten und speichern Sie sie in der variablen Iris.
iris = datasets.load_iris()

#Speichern Sie die Features in Variable X und das Ziel in Variable y
X = iris.data
y = iris.target

#Die Merkmalsmenge ist die Länge des äußeren Blumenstücks(sepal length)Und Breite(sepal width)von
#Begrenzt auf nur 2(In zwei Dimensionen denken)
X = X[:,:2]

#Ziel ist 0(iris setosa)Nicht, 
#Mit anderen Worten, Iris versicolor(1)Und Iris virginica(2)Nur für
# (Teilen Sie den Bereich in zwei Teile)
X = X[y!=0]
y = y[y!=0]

#Bereiten Sie eine Support-Vektor-Maschine für die Klassifizierung vor
clf = svm.SVC(C=1.0, kernel='linear')
#Für Daten optimiert
clf.fit(X, y)

#####Zeigen Sie das Klassifizierungsergebnis durch Farbcodierung des Hintergrunds an

#Länge des äußeren Blütenstücks(sepal length)Und Breite(sepal width)von
#Die Fläche wurde vom Minimalwert und vom Maximalwert um 1 erweitert
#Als Grafikanzeigebereich verwenden
x_min = min(X[:,0]) - 1
x_max = max(X[:,0]) + 1
y_min = min(X[:,1]) - 1
y_max = max(X[:,1]) + 1

#Teilen Sie den Grafikanzeigebereich vertikal und horizontal in Raster von 500 ein
# (Färben des Hintergrunds gemäß der Klassifizierungsklasse)
XX, YY = np.mgrid[x_min:x_max:500j, y_min:y_max:500j]

#Scikit zeigt auf das Gitter-Zum Lernen neu anordnen
Xg = np.c_[XX.ravel(), YY.ravel()]

#Die Klasse, zu der die Punkte jedes Gitters gehören(1 oder 2)Die Vorhersage wird in Z gespeichert
Z = clf.predict(Xg)

#Ordnen Sie das Raster neu an
Z = Z.reshape(XX.shape)

#Die Hintergrundfarbe wird je nach Typ geändert
#Klasse 1(iris versicolor)Ist hellblau(0.5, 1, 1, 1)
#Klasse 2(iris setosa)Ist hellgrün(0.5, 0.75, 0.5, 1)
cmap12 = ListedColormap([(0.5, 0.75, 0.5, 1), (0.5, 1, 1, 1)])

#Ändern Sie die Hintergrundfarbanzeige in einen zweifarbigen Campus aus Hellblau und Hellgrün
plt.pcolormesh(XX, YY, Z==1, cmap=cmap12)

#Achsenbeschriftungssatz Japanisch kann leider nicht verwendet werden
plt.xlabel('sepal length')
plt.ylabel('sepal width')

#####Zeigen Sie Datenpunkte entsprechend dem Ziel in Farben an

# iris versicolor (y=1)Extrahieren Sie nur die Daten von
Xc1 = X[y==1]
# iris virginica (y=2)Extrahieren Sie nur die Daten von
Xc2 = X[y==2]

#Zeichnen Sie die Versicolor-Daten der Iris Xc1
plt.scatter(Xc1[:,0], Xc1[:,1], c='#56B4E9',linewidth=0.5, edgecolors='black')
#Zeichnen Sie die Daten von Iris virginica Xc2
plt.scatter(Xc2[:,0], Xc2[:,1], c='#008000',linewidth=0.5, edgecolors='black')

#Holen Sie sich Support-Vektor
SV = clf.support_vectors_
#Zeigt einen roten Rand für Punkte im Unterstützungsvektor an
plt.scatter(SV[:,0], SV[:,1], c='black', linewidths=1.0, edgecolors='red')

#Zeigen Sie das gezeichnete Diagramm an
plt.show()

SVM2.jpg

Klassifizierung von 2 Merkmalen und 3 Klassen durch eine lineare Unterstützungsvektormaschine

Erhöhen wir die Anzahl der Klassen um 1 bis 3, während wir die Funktionen beibehalten. Es klassifiziert Iris setosa (0), Iris versicolor (1) und Iris virginica (2). Standardmäßig klassifiziert scikit-learn nach einer anderen Methode (one-vs-the-rest, ovr).

#Laden Sie Irisdaten und speichern Sie sie in einer variablen Iris
iris = datasets.load_iris()

#Speichern Sie die Features in Variable X und das Ziel in Variable y
X = iris.data
y = iris.target

#Die Merkmalsmenge ist die Länge des äußeren Blumenstücks(sepal length)Und Breite(sepal width)von
#Begrenzt auf nur 2(In zwei Dimensionen denken)
X = X[:,:2]

#Bereiten Sie eine Support-Vektor-Maschine für die Klassifizierung vor
clf = svm.SVC(C=1.0, kernel='linear', decision_function_shape='ovr')
# 'auto'Wenn Sie 1 angeben/(Abmessungen)Ist eingestellt. In diesem Fall 1/2=0.5
#clf = svm.SVC(C=1.0, kernel='rbf', gamma='auto', decision_function_shape='ovr')
#Wenn das Gamma erhöht wird, wird es zu einer Grenze mit einer großen Krümmung (Bohrlochbiegungen).
#clf = svm.SVC(C=1.0, kernel='rbf', gamma=1.0, decision_function_shape='ovr')
#Für Daten optimiert
clf.fit(X, y)

#####Zeigen Sie das Klassifizierungsergebnis durch Farbcodierung des Hintergrunds an

#Länge des äußeren Blütenstücks(sepal length)Und Breite(sepal width)von
#Die Fläche wurde vom Minimalwert und vom Maximalwert um 1 erweitert
#Als Grafikanzeigebereich verwenden
x_min = min(X[:,0]) - 1
x_max = max(X[:,0]) + 1
y_min = min(X[:,1]) - 1
y_max = max(X[:,1]) + 1

#Teilen Sie den Grafikanzeigebereich vertikal und horizontal in Raster von 500 ein
# (Färben des Hintergrunds gemäß der Klassifizierungsklasse)
XX, YY = np.mgrid[x_min:x_max:500j, y_min:y_max:500j]

#Scikit zeigt auf das Gitter-Zum Lernen neu anordnen
Xg = np.c_[XX.ravel(), YY.ravel()]

#Die Klasse, zu der die Punkte jedes Gitters gehören(0~2)Die Vorhersage wird in Z gespeichert
Z = clf.predict(Xg)

#Ordnen Sie das Raster neu an
Z = Z.reshape(XX.shape)

#Klasse 0(iris setosa)Ist hellorange(1, 0.93, 0.5, 1)
#Klasse 1(iris versicolor)Ist hellblau(0.5, 1, 1, 1)
#Klasse 2(iris virginica)Ist hellgrün(0.5, 0.75, 0.5, 1)
cmap0 = ListedColormap([(0, 0, 0, 0), (1, 0.93, 0.5, 1)])
cmap1 = ListedColormap([(0, 0, 0, 0), (0.5, 1, 1, 1)])
cmap2 = ListedColormap([(0, 0, 0, 0), (0.5, 0.75, 0.5, 1)])

#Hintergrundfarbe anzeigen
plt.pcolormesh(XX, YY, Z==0, cmap=cmap0)
plt.pcolormesh(XX, YY, Z==1, cmap=cmap1)
plt.pcolormesh(XX, YY, Z==2, cmap=cmap2)

#Achsenbeschriftung einstellen
plt.xlabel('sepal length')
plt.ylabel('sepal width')

#####Zeigen Sie Datenpunkte entsprechend dem Ziel in Farben an

# iris setosa (y=0)Extrahieren Sie nur die Daten von
Xc0 = X[y==0]
# iris versicolor (y=1)Extrahieren Sie nur die Daten von
Xc1 = X[y==1]
# iris virginica (y=2)Extrahieren Sie nur die Daten von
Xc2 = X[y==2]

#Zeichnen Sie die Daten Xc0 der Iris setosa
plt.scatter(Xc0[:,0], Xc0[:,1], c='#E69F00', linewidths=0.5, edgecolors='black')
#Zeichnen Sie die Versicolor-Daten der Iris Xc1
plt.scatter(Xc1[:,0], Xc1[:,1], c='#56B4E9', linewidths=0.5, edgecolors='black')
#Zeichnen Sie die Daten von Iris virginica Xc2
plt.scatter(Xc2[:,0], Xc2[:,1], c='#008000', linewidths=0.5, edgecolors='black')

#Holen Sie sich Support-Vektor
SV = clf.support_vectors_
#Zeigt einen roten Rand für Punkte im Unterstützungsvektor an
plt.scatter(SV[:,0], SV[:,1], c=(0,0,0,0), linewidths=1.0, edgecolors='red')
#plt.scatter(SV[:,0], SV[:,1], c='black', linewidths=1.0, edgecolors='red')

#Zeigen Sie das gezeichnete Diagramm an
plt.show()

SVM4.jpg

(Referenz) Verwendung der Farben des Plt.scatter-Streudiagramms Ich bekomme eine kleine Warnung, werde aber zu einem späteren Zeitpunkt untersuchen, wie transparent der rote Kreis ist.

Verwandte Seiten

Kapitel 1: Lineares Regressionsmodell [Kapitel 2: Nichtlineares Regressionsmodell] (https://qiita.com/matsukura04583/items/baa3f2269537036abc57) [Kapitel 3: Logistisches Regressionsmodell] (https://qiita.com/matsukura04583/items/0fb73183e4a7a6f06aa5) [Kapitel 4: Hauptkomponentenanalyse] (https://qiita.com/matsukura04583/items/b3b5d2d22189afc9c81c) [Kapitel 5: Algorithmus 1 (k-Nachbarschaftsmethode (kNN))] (https://qiita.com/matsukura04583/items/543719b44159322221ed) [Kapitel 6: Algorithmus 2 (k-Mittel)] (https://qiita.com/matsukura04583/items/050c98c7bb1c9e91be71) [Kapitel 7: Support Vector Machine] (https://qiita.com/matsukura04583/items/6b718642bcbf97ae2ca8)

Recommended Posts

<Kurs> Maschinelles Lernen Kapitel 7: Support Vector Machine
Maschinelles Lernen unterstützt Vektormaschine
Maschinelles Lernen: Überwacht - Support Vector Machine
Algorithmus für maschinelles Lernen (Support Vector Machine)
<Kurs> Maschinelles Lernen Kapitel 6: Algorithmus 2 (k-Mittel)
Algorithmus für maschinelles Lernen (Unterstützung von Vektor-Maschinenanwendungen)
Maschinelles Lernen ① SVM-Zusammenfassung (Support Vector Machine)
<Subjekt> Maschinelles Lernen Kapitel 3: Logistisches Regressionsmodell
<Kurs> Maschinelles Lernen Kapitel 1: Lineares Regressionsmodell
<Kurs> Maschinelles Lernen Kapitel 4: Hauptkomponentenanalyse
<Kurs> Maschinelles Lernen Kapitel 2: Nichtlineares Regressionsmodell
Memo zum Kurs für maschinelles Lernen
[Sprachverarbeitung 100 Schläge 2020] Kapitel 6: Maschinelles Lernen
100 Sprachverarbeitung Knock 2020 Kapitel 6: Maschinelles Lernen
Maschinelles Lernen
[Übersetzung] scikit-learn 0.18 Benutzerhandbuch 1.4. Support Vector Machine
TensorFlow Kochbuch zum maschinellen Lernen Kapitel 2 Persönlich verstopft
Support Vector Machine (für Anfänger) -Code Edition-
TensorFlow Kochbuch zum maschinellen Lernen Kapitel 3 Persönlich verstopft
[Memo] Maschinelles Lernen
Klassifikation des maschinellen Lernens
Beispiel für maschinelles Lernen
TensorFlow Machine Learning Cookbook Kapitel 6 (oder besser gesagt die dritte Zeile), in dem ich persönlich feststeckte
Berechnung der Support Vector Machine (SVM) (mit cvxopt)
Zusammenfassung des Lernprogramms für maschinelles Lernen
Maschinelles Lernen Über Overlearning
Maschinelles Lernen ⑤ AdaBoost-Zusammenfassung
Maschinelles Lernen: Betreut --AdaBoost
Logistische Regression beim maschinellen Lernen
Python-Lernnotiz für maschinelles Lernen von Chainer aus Kapitel 2
Maschinelles Lernen studieren ~ matplotlib ~
Lineare Regression des maschinellen Lernens
Bibliothek für maschinelles Lernen dlib
Maschinelles Lernen (TensorFlow) + Lotto 6
Lerne irgendwie maschinelles Lernen
Bibliothek für maschinelles Lernen Shogun
Maschinelles Lernen Kaninchen Herausforderung
Einführung in das maschinelle Lernen
Maschinelles Lernen: k-Nächste Nachbarn
Was ist maschinelles Lernen?
Python Machine Learning Programming Kapitel 2 Klassifizierungsprobleme - Zusammenfassung des Trainingsalgorithmus für maschinelles Lernen
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 7 Regressionsanalyse
PRML Kapitel 7 Verwandte Vector Machine Python-Implementierung für Regressionsprobleme
Modell des maschinellen Lernens unter Berücksichtigung der Wartbarkeit
Maschinelles Lernen mit Pokemon gelernt
Datensatz für maschinelles Lernen
Japanische Vorverarbeitung für maschinelles Lernen
Maschinelles Lernen in Delemas (Praxis)
<Kurs> Tiefes Lernen: Day2 CNN
Eine Einführung in das maschinelle Lernen
Maschinelles Lernen: Überwacht - Lineare Regression
Grundlagen des maschinellen Lernens (Denkmal)
Anfänger des maschinellen Lernens versuchten RBM
[Maschinelles Lernen] Zufällige Gesamtstruktur verstehen
Maschinelles Lernen mit Python! Vorbereitung
<Kurs> Tiefes Lernen: Tag 1 NN
Lernressourcen-Lernblock für maschinelles Lernen
Maschinelles Lernen ② Naive Bayes Zusammenfassung
Verstehe maschinelles Lernen ~ Ridge Regression ~.
Zusammenfassung der Artikel zum maschinellen Lernen (selbst verfasst)