[PYTHON] DBSCAN (Clustering) mit Scikit-Learn

Informationen zum Entwurf von DBSCAN, einem der Clustering-Algorithmen und zur einfachen Parameteroptimierung Ich schien keinen vollständigen japanischen Artikel zu haben, also schrieb ich ihn auf. Bitte beachten Sie, dass der Umriss von DBSCAN eine (grobe) japanische Übersetzung von [wikipedia] ist (https://en.wikipedia.org/wiki/DBSCAN).

Was ist DBSCAN?

Überblick über den Algorithmus

[Aus Abbildung Wikipedia]

Vorteile

Nachteile

Unterschied zu anderen Algorithmen

Es ist eine Vergleichszahl jeder Methode in scikit-learn-Demoseite, aber die zweite von rechts ist DBSCAN. Sie können intuitiv erkennen, dass sie basierend auf der Dichte gruppiert sind. sphx_glr_plot_cluster_comparison_001.png

Abstimmung von ε und minPts

Wenn es zweidimensional ist, kann es visualisiert werden, um festzustellen, ob es gut klassifiziert ist. Wenn es jedoch dreidimensional oder mehr ist, ist es schwierig zu visualisieren und zu beurteilen. Der Ausreißer und die Anzahl der Cluster wurden wie folgt debuggt und angepasst. (Mit scikit-learn)

from sklearn.cluster import DBSCAN

for eps in range(0.1,3,0.1):
    for minPts in range(1,20):
        dbscan = DBSCAN(eps=eps,min_samples=minPts).fit(X)
        y_dbscan = dbscan.labels_
        print("eps:",eps,",minPts:", minPts)
        #Anzahl der Ausreißer
        print(len(np.where(y_dbscan ==-1)[0]))
        #Anzahl der Cluster
        print(np.max(y_dbscan)))
        #Anzahl der Punkte in Cluster 1
        print(len(np.where(y_dbscan ==0)[0]))
        #Anzahl der Punkte in Cluster 2
        print(len(np.where(y_dbscan ==1)[0]))



DBSCAN-bezogene Links

Nachtrag

Japanische Version von Wikipedia wurde mit zusätzlichen Beschreibungen aktualisiert. Es ist leicht zu verstehen.

Recommended Posts

Clustering mit scikit-learn + DBSCAN
DBSCAN (Clustering) mit Scikit-Learn
DBSCAN mit Scikit-Learn
Clustering mit Scikit-Learn (1)
Clustering mit Scikit-Learn (2)
Fotosegmentierung und Clustering mit DBSCAN
Isomap mit Scikit-lernen
Clustering mit Python-Louvain
kmeans ++ mit scikit-learn
Die grundlegendste Clusteranalyse mit Scikit-Learn
Kreuzvalidierung mit Scikit-Learn
Scikit-Lernen mit Chemoinfomatik
DBSCAN-Algorithmus (Datenclustering)
Installieren Sie scikit.learn mit pip
Berechnen Sie tf-idf mit scikit-learn
Versuchen Sie es mit Scikit-Learn (1) - K-Clustering nach Durchschnittsmethode
Neuronales Netzwerk mit Python (Scikit-Learn)
Ich habe versucht, mit PyCaret zu clustern
Parallele Verarbeitung mit Parallel von Scikit-Learn
[Python] Lineare Regression mit Scicit-Learn
Deep Embedded Clustering mit Chainer 2.0
Robuste lineare Regression mit Scikit-Learn
Führen Sie (Visualisierung> Clustering> Funktionsbeschreibung) mit (t-SNE, DBSCAN, Entscheidungsbaum) durch.
Rastersuche von Hyperparametern mit Scikit-learn
Erstellen eines bestimmten Baums mit Scikit-Learn
Bildsegmentierung mit Scikit-Image und Scikit-Learn
Identifizieren Sie Ausreißer mit dem Random Forest Classifier von scikit-learn
Laplace-Eigenkarten mit Scikit-Learn (persönliche Notizen)
Nicht negative Matrixfaktorisierung (NMF) mit Scikit-Learn
SVM versucht maschinelles Lernen mit Scikit-Learn
Scikit-learn DecisionTreeClassifier mit Datetime-Typwerten
100 Sprachverarbeitung Knock-97 (mit Scicit-Learn): k-bedeutet Clustering
[Scikit-learn] Ich habe mit der ROC-Kurve gespielt
Probieren Sie SVM mit scikit-learn auf Jupyter Notebook aus
Multi-Label-Klassifizierung nach Random Forest mit Scikit-Learn
Implementieren Sie einen minimalen selbst erstellten Schätzer mit scikit-learn
Füllen Sie fehlende Werte mit Scikit-learn impute aus
Clustering von Büchern von Aozora Bunko mit Doc2Vec
Visualisieren Sie den Entscheidungsbaum von Scikit-Learn mit Plotlys Treemap