Menu
CoddyTech

Kümelerin Profili

Coddy'nin Machine Learning Journey'sinin Denetimsiz Öğrenme bölümünün bir parçası. Ders 11 / 51.

Bu bölüm, küme numaralarını insanların kullanabileceği gruplara dönüştürüyor. Bölümün sonunda her kümenin bir adı olacak:

120 tema parkı ziyaretçisi nokta olarak gösteriliyor; yatay eksende parktaki saat sayısı, dikey eksende binilen araç sayısı ve lejantta adlandırılan üç grup: sağda yükseklerde Heyecan arayanlar, ortada Aileler, solda alçaklarda Kısa süreli ziyaretçiler

2 gibi bir sayı hiçbir şey ifade etmez. Profil ise ifade eder: kümenin içindeki her özelliğin ortalaması. Etiketleri bir sütun olarak ekleyin, ardından gruplandırın:

park["cluster"] = km.labels_
print(park.groupby("cluster").mean().round(1))

Bu, her küme için bir satır yazdırır:

         hours  rides   age
cluster
0          6.0    6.2  38.4
1          2.4    3.0  45.8
2          6.8   13.9  20.7

Şimdi satırları sözcükler olarak okuyun. 2 numaralı küme gençtir, 7 saat kalır ve 14 yolculuk yapar: heyecan arayanlar. 1 numaralı küme erken ayrılır: kısa süreli ziyaretçiler.

challenge icon

Görev

Orta

Bir karaoke barı müşterilerini tanımak istiyor. Başlangıç kodu onları 3 kümeye ayırıyor; names değişkeninde, ayda en az ziyaretten en çok ziyarete doğru her küme için bir ad bulunuyor.

  1. Etiketleri guests değişkenine cluster sütunu olarak ekle.
  2. Kümelerin profilini çıkar: ortalamalarını ve müşteri sayılarını hesapla, ardından visits_month değerine göre sırala.
  3. Her küme için adı ve ortalamaları 1 ondalık basamağa yuvarlanmış şekilde tek satır yazdır.

Başka bir bar için:

Once in a while: 30 guests, 1.4 visits a month, 2.5 songs, 3.2 hours
Regulars: 45 guests, 3.0 visits a month, 4.6 songs, 2.0 hours
Superfans: 15 guests, 7.4 visits a month, 9.2 songs, 2.8 hours

Kendin dene

import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans

# Bir karaoke barının 110 müşterisi: visits a month, ziyaret başına şarkı sayısı, ziyaret başına saat sayısı
guests = pd.read_csv("karaoke.csv")
scaled = StandardScaler().fit_transform(guests)
km = KMeans(n_clusters=3, n_init=10, random_state=0)
km.fit(scaled)

# Grupların adları, ayda en az ziyaret edenden en çok ziyaret edene doğru
names = ["Once in a while", "Regulars", "Superfans"]

# Kodunuzu aşağıya yazın
quiz iconKendini test et

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

Kendi başına pratik yap: Online Python derleyicisi