Začněte nyníZačněte zdarma

DBSCAN

V tomto cvičení si vyzkoušíš detekci podvodů pomocí metody clusteringu založeného na hustotě (DBSCAN). Výhodou DBSCAN je, že nemusíš předem definovat počet clusterů. Navíc si DBSCAN poradí s neobvykle tvarovanými daty (tj. nekonvexními) mnohem lépe než K-means. Tentokrát nebudeme hledat odlehlé hodnoty v clusterech, ale zaměříme se na nejmenší clustery v datech a označíme je jako podvodné. K dispozici máš opět normalizovanou datovou sadu X_scaled. Pojďme to vyzkoušet!

Toto cvičení je součástí kurzu

Detekce podvodů v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Naimportuj DBSCAN.
  • Inicializuj model DBSCAN s maximální vzdáleností mezi dvěma vzorky 0.9 a minimálním počtem pozorování v clusteru 10, a natrénuj model na normalizovaných datech.
  • Získej predikované labely — tedy čísla clusterů přiřazená jednotlivým pozorováním.
  • Vypiš počet clusterů a ostatní metriky výkonu.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Import DBSCAN
from sklearn.cluster import ____

# Initialize and fit the DBSCAN model
db = DBSCAN(eps=____, min_samples=____, n_jobs=-1).fit(____)

# Obtain the predicted labels and calculate number of clusters
pred_labels = ____.____
n_clusters = len(set(pred_labels)) - (1 if -1 in labels else 0)

# Print performance metrics for DBSCAN
print('Estimated number of clusters: %d' % ____)
print("Homogeneity: %0.3f" % homogeneity_score(labels, pred_labels))
print("Silhouette Coefficient: %0.3f" % silhouette_score(X_scaled, pred_labels))
Upravit a spustit kód