Yıldız Kümeleri
Coddy'nin Machine Learning Journey'sinin Denetimsiz Öğrenme bölümünün bir parçası. Ders 50 / 51.
Bir astronomi kulübü gökyüzünün bir bölümünü fotoğrafladı. 225 yıldızının bazıları aynı bulutta doğmuş ve birlikte bulunuyor; geri kalanlar ise önlerinde ya da arkalarında duran yabancılar:
Her iki konum da aynı birim olan yay dakikaları cinsindendir; dolayısıyla eps, fotoğraf üzerindeki bir mesafedir.
Kulüp, tek başına kalan saha yıldızları dışarıda bırakılarak her kümeyi ve kümenin büyüklüğünü istiyor. k-means de aynı işi yapabilir mi?
Görev
ZorProgram eps değerini okur; başlangıç kodu left ve right olmak üzere iki grafik hazırlar.
- İki konum üzerinde bu eps değeri ve
min_samples=5ile DBSCAN çalıştır. Kümelerini ve alan yıldızlarını (etiket -1) yazdır. - Aynı sayıda kümeyle k-means'i eğit (
n_init=10,random_state=0). Her yöntemin en büyük ve en küçük kümesini yazdır. leftüzerinde DBSCAN kümelerini çiz; en büyük kümecluster 1olsun, ardındanfield starsöğelerini gri renkte çiz.rightüzerinde k-means kümelerini aynı şekilde numaralandırarak çiz. Göstergeyi göster.
Başka bir fotoğraf ve eps 2.5 için:
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-meansve grafikleri:
Ardından Coddy seninkini açıklıyor. Alan yıldızları konusunda hangi yönteme güvenirdin?
Kendin dene
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import DBSCAN, KMeans
# Fotoğraftaki her yıldız için bir satır: konum (yay dakikası) ve parlaklık (kadir)
field = pd.read_csv("field.csv")
eps = float(input())
# Yan yana iki harita: solda DBSCAN, sağda k-means
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)")
# Kodunuzu aşağıya yazın
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Denetimsiz Öğrenme bölümündeki tüm dersler
1Grupları Bulma
Etiketler Olmadan ÖğrenmeBenzerliği ÖlçmeK-Means'i Elle Uygulamascikit-learn ile K-MeansÖzet: Spor Salonu Üyeleri7Uygulamada PCA
64 Boyutu GörmekBileşenleri Örüntü Olarak GörmekSıkıştır ve Yeniden OluşturModelden Önce PCATekrar: Yüz Tarayıcı10Proje: Rakam Kaşifi
Rakamları İncelePCA ile KüçültRakamları KümeleKümelere Ad VerAykırı Olanları Bul2k Sayısını Seçme
AtaletDirsek YöntemiSilüet PuanlarıKümeleme Öncesi ÖlçeklemeÖzet: Teslimat BölgeleriKendi başına pratik yap: Online Python derleyicisi