Gromady gwiazd
Część sekcji Uczenie nienadzorowane ścieżki Machine Learning w Coddy. Lekcja 50 z 51.
Klub astronomiczny sfotografował jeden fragment nieba. Niektóre z jego 225 gwiazd należą do siebie — powstały w tym samym obłoku; pozostałe to obce gwiazdy znajdujące się przed nim lub za nim:
Obie pozycje są wyrażone w minutach kątowych, czyli w tej samej jednostce, więc eps jest odległością na zdjęciu.
Klub chce poznać każdy klaster i jego rozmiar, pomijając samotne gwiazdy na boisku. Czy k-means sprawdziłby się równie dobrze?
Wyzwanie
TrudnyProgram odczytuje eps; kod początkowy przygotowuje dwie mapy: left i right.
- Uruchom DBSCAN z tym eps i
min_samples=5dla dwóch pozycji. Wypisz jego klastry i gwiazdy pola (etykieta -1). - Dopasuj k-means z taką samą liczbą klastrów (
n_init=10,random_state=0). Wypisz największy i najmniejszy klaster każdej metody. - Na
leftnanieś klastry DBSCAN, przy czymcluster 1ma być największy, a następnie nanieśfield starsna szaro. Narightnanieś klastry k-means, ponumerowane w ten sam sposób. Pokaż legendy.
Dla innego zdjęcia i eps 2.5:
DBSCAN: 3 clusters and 29 field stars
Biggest cluster: 63 stars by DBSCAN, 77 by k-means
Smallest cluster: 41 stars by DBSCAN, 48 by k-meansi jego mapy:
Następnie Coddy opisuje twoje wyniki. Której metodzie zaufasz w przypadku gwiazd pola?
Spróbuj swoich sił
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import DBSCAN, KMeans
# Jeden wiersz na każdą gwiazdę na zdjęciu: pozycja (w minutach kątowych) i jasność (w wielkościach gwiazdowych)
field = pd.read_csv("field.csv")
eps = float(input())
# Dwie mapy obok siebie: DBSCAN po lewej, k-means po prawej
fig, axs = plt.subplots(1, 2, figsize=(10, 4))
left = axs[0]
right = axs[1]
left.set_title("DBSCAN")
right.set_title("k-means")
for ax in axs:
ax.set_xlabel("x (arcmin)")
ax.set_ylabel("y (arcmin)")
# Napisz swój kod poniżej
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Uczenie nienadzorowane
1Znajdowanie grup
Uczenie się bez etykietMierzenie podobieństwaK-Means krok po krokuK-Means w scikit-learnPodsumowanie: członkowie siłowni4Klasteryzacja hierarchiczna
Łączenie krok po krokuModele aglomeracyjneDendrogramyPodsumowanie: rasy psów7PCA w praktyce
Poznajemy 64 wymiarySkładowe jako wzorceKompresuj i odtwórzPCA przed modelemPodsumowanie: skaner twarzy10Projekt: Odkrywca cyfr
Przyjrzyj się cyfromZmniejsz wymiar za pomocą PCAGrupuj cyfryNazwij grupyZnajdź te nietypowe2Wybór k
InercjaMetoda łokciaWyniki silhouetteSkalowanie przed klasteryzacjąPodsumowanie: strefy dostawPoćwicz samodzielnie: Kompilator Python online