Einführung in Machine Learning mit Python by Andreas C. Müller Sarah Guido
Autor:Andreas C. Müller, Sarah Guido
Die sprache: deu
Format: epub
Herausgeber: dpunkt
veröffentlicht: 2017-11-15T00:00:00+00:00
Abbildung 3-42: Von DBSCAN mit eps=7 gefundene Cluster
In[76]:
dbscan = DBSCAN(min_samples=3, eps=7)
labels = dbscan.fit_predict(X_pca)
for cluster in range(max(labels) + 1):
mask = labels == cluster
n_images = np.sum(mask)
fig, axes = plt.subplots(1, n_images, figsize=(n_images * 1.5, 4),
subplot_kw= )
for image, label, ax in zip(X_people[mask], y_people[mask], axes):
ax.imshow(image.reshape(image_shape), vmin=0, vmax=1)
ax.set_title(people.target_names[label].split()[-1])
Einige der Cluster entsprechen Personen mit sehr charakteristischen Gesichtern (innerhalb dieses Datensatzes), z. B. Sharon oder Koizumi. Innerhalb eines Clusters sind die Blickrichtung und der Gesichtsausdruck in etwa gleich. Einige Cluster enthalten Bilder von mehreren Personen, aber mit ähnlicher Ausrichtung und Gesichtsausdruck.
Damit beenden wir unsere Analyse des DBSCAN-Algorithmus auf dem GesichterDatensatz. Wie Sie sehen können, führen wir eine Untersuchung von Hand durch, im Gegensatz zur automatischen Suche beim überwachten Lernen mit R2-Score oder Genauigkeit.
Fahren wir mit der Anwendung von k-Means und agglomerativem Clustering fort.
Analyse des Gesichter-Datensatzes mit k-Means. Wir haben gesehen, dass DBSCAN nicht mehr als einen großen Cluster erzeugen konnte. Agglomeratives Clustering und k-Means sind eher prädestiniert, gleich große Cluster zu generieren. Allerdings müssen wir die gewünschte Anzahl Cluster festlegen. Wir könnten die Anzahl Personen im Datensatz als Clusteranzahl festlegen. Es ist aber unwahrscheinlich, dass ein unüberwachter Clustering-Algorithmus diese auch findet. Stattdessen beginnen wir mit einer geringen Anzahl Cluster, z. B. zehn, wodurch wir uns jeden der Cluster genau ansehen können:
In[77]:
# extrahiere Cluster mit k-Means
km = KMeans(n_clusters=10, random_state=0)
labels_km = km.fit_predict(X_pca)
print("Cluster-Größen mit k-Means: ".format(np.bincount(labels_km)))
Download
Diese Site speichert keine Dateien auf ihrem Server. Wir indizieren und verlinken nur Inhalte von anderen Websites zur Verfügung gestellt. Wenden Sie sich an die Inhaltsanbieter, um etwaige urheberrechtlich geschützte Inhalte zu entfernen, und senden Sie uns eine E-Mail. Wir werden die entsprechenden Links oder Inhalte umgehend entfernen.
Integrierte Business-Informationssysteme by Klaus-Dieter Gronwald(1061)
Datenanalyse mit Python: Auswertung von Daten mit Pandas, NumPy und IPython by Wes McKinney(1036)
George R by User(1025)
Noah Gordon by x(1010)
Statistik mit R für Dummies by Joseph Schmuller(972)
Unknown Title by Unknown Author(961)
Hacker by Martin(945)
Wie man Freunde gewinnt by Dale Carnegie(922)
Nächste Ausfahrt Zukunft: Geschichten aus einer Welt im Wandel (German Edition) by Ranga Yogeshwar(911)
R.E.M. by Michael Marshall Smith(898)
Vegan kochen für alle by Björn Moschinski(896)
0333 - Einer blieb übrig by Einer blieb übrig(893)
ENERGY! by Dr. med. Anne Fleck(869)
Datenbankentwicklung lernen mit SQL Server 2017 by Robert Panther(851)
Richtig einsteigen: Desktop- und Web-Datenbanken erstellen mit Access 2013 by Lorenz Hölscher(850)
Amazon für Entscheider by Unknown(847)
Einstieg in C by Thomas Theis(842)
Vegan for Fit. Die Attila Hildmann 30-Tage-Challenge by Attila Hildmann(837)
Microsoft Excel 2016 by dpunkt(821)