Metoda łokcia
W poprzednim ćwiczeniu zaimplementowano MiniBatch K-means z 8 skupiskami, bez sprawdzania, jaka liczba skupisk jest właściwa. W pierwszym podejściu do wykrywania fraudów ważne jest, aby dobrać odpowiednią liczbę skupisk – szczególnie gdy chcesz wykorzystywać wartości odstające jako predykcje fraudów. Aby zdecydować, ile skupisk użyjesz, zastosujmy metodę łokcia i sprawdźmy, jaka optymalna liczba skupisk wynika z tej metody.
X_scaled jest ponownie dostępne, a MiniBatchKMeans zostało zaimportowane z sklearn.
To ćwiczenie jest częścią kursu
Wykrywanie oszustw w Pythonie
Instrukcje do ćwiczenia
- Zdefiniuj zakres od 1 do 5 skupisk.
- Uruchom MiniBatch K-means dla wszystkich skupisk w zakresie, używając wyrażenia listowego.
- Dopasuj każdy model do przeskalowanych danych i oblicz wyniki na tych danych.
- Narysuj wykres z liczbami skupisk i odpowiadającymi im wynikami – wykonanie może potrwać kilka sekund.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Define the range of clusters to try
clustno = range(____, ____)
# Run MiniBatch Kmeans over the number of clusters
kmeans = [____(n_clusters=i, random_state=0) for ____ in ____]
# Obtain the score for each model
score = [kmeans[i].fit(____).score(____) for i in range(len(kmeans))]
# Plot the models and their respective score
plt.plot(____, ____)
plt.xlabel('Number of Clusters')
plt.ylabel('Score')
plt.title('Elbow Curve')
plt.show()