Bölüm 9: Unsupervised Learning
Kaynak: Andriy Burkov -- "The Hundred-Page Machine Learning Book" (theMLbook.com)
Bölüm 9: Gozetimsiz Öğrenme (Unsupervised Learning)
Gozetimsiz öğrenme, veri setinin etiket icemedigi problemlerle ilgilenir. Etiketlerin yoklugu, modelin kalitesini değerlendirmek için saglam bir referans noktasinin bulunmamasi anlamina gelir. Bu bölümde yalnizca insan yargisindan ziyade veriye dayali olarak degerlendirilebilen gozetimsiz öğrenme yöntemleri ele alinir.
9.1 Yogunluk Tahmini (Density Estimation)
Yogunluk tahmini, veri setinin cekilmis oldugu bilinmeyen olasılik dagilimindan olasılik yoğunluk fonksiyonunun (pdf) modellenmesi problemidir. Yenilik tespiti veya izinsiz giriş tespiti gibi uygulamalarda faydalidir.
Parametrik ve Parametrik Olmayan Yaklasimlar
Parametrik yaklasimda, modelin cok değişkenli normal dagilim (MVN) oldugu varsayilir. Ancak gerçek dagilim MVN'den farkliysa model yetersiz kalir.
Cekirdek Yogunluk Tahmini (Kernel Density Estimation): Parametrik olmayan bir yaklasimdir. Bir boyutlu veri seti {x_i} için model su şekilde tanimlanir:
f_hat_b(x) = (1 / (N * b)) * SUM_i k((x - x_i) / b)
Burada b sapma-varyans dengesi kontrol eden bir hiper parametre, k ise bir cekirdek fonksiyonudur. Gaussian cekirdegi yaygin olarak kullanılır.
Optimal b Degerinin Bulunmasi
Ortalama Entegre Kare Hata (MISE) minimize edilir. Bu, gerçek pdf f ile model f_hat_b arasındaki farkin karelerinin integrali ve beklentisidir:
MISE(b) = E[ integral_R (f_hat_b(x) - f(x))^2 dx ]
Maliyet fonksiyonu, birini disarida birak (leave-one-out) tahmincisi kullanilarak su şekilde ifade edilir:
integral_R f_hat_b^2(x) dx - (2/N) * SUM_i f_hat_(i)_b(x_i)
Burada f_hat_(i)_b, x_i örneği dislanarak hesaplanan cekirdek modelidir. Optimal b değeri izgara aramasi (grid search) ile bulunur. D boyutlu özellik vektorleri için hata terimi Oklid mesafesi ile degistirilir.
9.2 Kumeleme (Clustering)
Kumeleme, etiketlenmemis bir veri setinden yararlanarak örneklere etiket atamayi öğrenmektir. Veri seti tamamen etiketlenmemis oldugundan, öğrenen modelin optimal olup olmadigina karar vermek gozetimli öğrenmeye kiyasla cok daha karmaşıktir.
9.2.1 K-Means
K-means algoritmasinin çalışma adimi:
- Analist kume sayisini k olarak secer.
- Özellik uzayina rastgele k adet özellik vektoru (centroid) yerlestirilir.
- Her örnek x ile her centroid c arasındaki mesafe (örneğin Oklid mesafesi) hesaplanir.
- Her ornege en yakin centroid atanir (etiket olarak centroid kimlik numarasi).
- Her centroid icin, ona atanmis örneklerin ortalama özellik vektoru hesaplanir; bu yeni centroid konumu olur.
- Mesafeler yeniden hesaplanir, atamalar guncellenir ve atamalar degismeyinceye kadar tekrarlanir.
Önemli Noktalar: - Centroidlerin başlangıç konumlari nihai konumlari etkiler; iki farkli çalıştırma farkli modeller uretebilir. - k değeri, veri analisti tarafından ayarlanmasi gereken bir hiper parametredir.
9.2.2 DBSCAN ve HDBSCAN
K-means ve benzeri algoritmalar centroid tabanli iken, DBSCAN yoğunluk tabanli bir kümeleme algoritmasidir.
DBSCAN Calisma Mantigi: 1. Iki hiper parametre tanimlanir: epsilon (mesafe esigi) ve n (minimum örnek sayisi). 2. Rastgele bir örnek x secilir ve kume 1'e atanir. 3. x'ten epsilon mesafesi icindeki örnekler sayilir; sayi n'den büyük veya esitse, tum bu epsilon-komsulari kume 1'e eklenir. 4. Kume 1'deki her uye için epsilon-komsulari incelenir ve n veya daha fazla komsulari varsa kume genisletilir. 5. Genişleme durunca, kume disindaki baska bir örnek secilip yeni kume baslatilir. 6. Epsilon-komsulugu n'den az olan örnekler aykiri değer (outlier) olarak işaretlenir.
DBSCAN'in Avantajlari: Herhangi bir şekilde kümeler oluşturabilir (hiper kure ile sinirli degil).
DBSCAN'in Dezavantajlari: Iki hiper parametre vardir ve iyi epsilon değeri secmek zor olabilir; sabit epsilon, degisen yoğunluktaki kümelerle etkili basa cikamaz.
HDBSCAN: DBSCAN'in avantajlarini korurken epsilon değerine karar verme gereksinimini ortadan kaldirir. Degisen yoğunluktaki kümeleri oluşturabilir. Yalnizca bir önemli hiper parametresi vardir: n (minimum örnek sayisi). Her zaman HDBSCAN'i oncelikle denemek tavsiye edilir.
9.2.3 Kume Sayisinin Belirlenmesi
D > 3 boyutlu veride kümeleri görsel olarak incelemek zordur. Tahmin Gucu (Prediction Strength) yöntemi pratik bir çözüm sunar:
- Veri, eğitim ve test setine bolunur.
- Sabit bir k için kümeleme algoritmasi her iki sette de çalıştırilir.
- Eğitim setinden elde edilen kümeleme kullanilarak test seti örneklerinin ayni kumeye dusmesini gosteren es-uyelik matrisi (co-membership matrix) olusturulur.
- Her test kumesi icin, o kumedeki gözlem ciftlerinin eğitim seti centroidlari tarafından da ayni kumeye atanma orani hesaplanir.
- Tahmin gucu, bu oranin k test kumesi üzerindeki minimumudur:
ps(k) = min_{j=1,...,k} [ (1 / (|A_j| * (|A_j| - 1))) * SUM_{i,i' in A_j} D[A, S_te](i, i') ]
Deneyler, ps(k) > 0.8 olan en büyük k değerinin makul kume sayisi oldugunu göstermektedir.
Diger Yöntemler: Bos istatistigi (gap statistic), dirsek yöntemi (elbow method), ortalama siluet yöntemi (average silhouette method).
9.2.4 Diger Kumeleme Algoritmalari
DBSCAN ve k-means sert kümeleme (hard clustering) yapar; her örnek yalnizca bir kumeye ait olabilir.
Gauss Karisim Modeli (GMM -- Gaussian Mixture Model): Her ornege birden fazla kumeye farkli uyelik puanlaryla ait olma imkani tanir.
GMM'de tek bir cok değişkenli normal dagilim yerine ağırlıkli toplami kullanılır:
f_X = SUM_{j=1}^{k} phi_j * f_{mu_j, Sigma_j}
Parametreler Beklenti Maksimizasyonu (EM) algoritmasi ile optimize edilir.
EM Algoritmasi (k=2, tek boyutlu örnek):
- mu_1, sigma_1^2, mu_2, sigma_2^2 için başlangıç tahminleri yapilir; phi_1 = phi_2 = 1/2.
- Her iterasyonda:
- Her x_i için her Gaussian dagilimdan olasılik hesaplanir.
- Bayes Kurali ile her ornein her kumeye ait olma olasıligi b_i^(j) hesaplanir.
- mu_j ve sigma_j^2 değerleri ağırlıkli ortalama ile guncellenir.
- phi_j değerleri guncellenir.
- Parametreler belirli bir esik değerinin altinda degisene kadar tekrarlanir.
K-Means ile Karşılaştırma: EM algoritmasi k-means'e cok benzer, ancak atama yumusaktir (soft assignment): x_i, j kumesine b_i^(j) olasıligi ile aittir. GMM kümeleri elips seklinde olabilir ve herhangi bir uzama ve donmeye sahip olabilir.
GMM'de k Secimi: Veri setini eğitim ve test setine bolun, farkli k değerleri için modeller olustürün ve test setindeki örneklerin olabilirligini maksimize eden k'yi secin.
Diger bahse değer algoritmalar: spektral kümeleme (spectral clustering) ve hiyerarsik kümeleme (hierarchical clustering).
9.3 Boyut Azaltma (Dimensionality Reduction)
Modern makine öğrenmesi algoritmalari (topluluk algoritmalari, sinir aglari) milyonlarca ozellige kadar basa cikabilir. Boyut azaltma en sik veri görsellestime için kullanılır: insanlar bir grafik üzerinde en fazla uc boyutu yorumlayabilir.
Baska bir kullanım alani: yorumlanabilir model oluşturmak için algoritmalar sinirli oldugunda (örneğin karar ağaçi veya doğrusal regresyon), boyut azaltma gereksiz/korelasyonlu özellikleri kaldirarak ve verideki gurultuyu azaltarak katki saglar.
9.3.1 Temel Bilesen Analizi (PCA -- Principal Component Analysis)
En eski boyut azaltma yöntemlerinden biridir.
Temel Fikir: Temel bilesenler, verideki en yüksek varyans yonunu tanimlayan vektorlerdir.
- Birinci eksen: Verideki en yüksek varyans yonunde gider.
- Ikinci eksen: Birinciye dik ve ikinci en yüksek varyans yonunde.
- Ucuncu eksen: Ilk ikisine dik ve ucuncu en yüksek varyans yonunde, vb.
Boyutlulugu D_new < D'ye indirmek icin, en büyük D_new temel bilesen secilir ve veri noktalari bunlar üzerine izdusurulur. Cok yüksek boyutlu veride, ilk iki veya uc temel bilesen genellikle verideki varyasyonun büyük kismini yakalar.
9.3.2 UMAP
UMAP (Uniform Manifold Approximation and Projection) ve t-SNE gibi modern boyut azaltma algoritmalari, özellikle görsellestime için tasarlanmistir.
Calisma Prensibi: 1. Iki örnek arasında bir benzerlik metrigi tanimlanir. Bu metrik, Oklid mesafesinin yani sira örneklerin etrafindaki yoğunluk gibi yerel özellikleri de yansitir.
- UMAP'ta benzerlik metrigi w:
w(x_i, x_j) = w_i(x_i, x_j) + w_j(x_j, x_i) - w_i(x_i, x_j) * w_j(x_j, x_i)
Burada w_i fonksiyonu, Oklid mesafesi d(x_i, x_j), en yakin komsuluk mesafesi rho_i ve k'inci en yakin komsuluk mesafesi sigma_i kullanilarak hesaplanir. Metrik [0,1] araligindadir ve simetriktir.
- Orijinal yüksek boyutlu uzaydaki benzerlik w ile düşük boyutlu uzaydaki benzerlik w' arasındaki fark çapraz entropi ile olculur:
C(w, w') = SUM_i SUM_j [ w * ln(w/w') + (1-w) * ln((1-w)/(1-w')) ]
- Amac, herhangi iki ornein orijinal ve düşük boyutlu uzaylardaki benzerlik metriklerinin mumkun oldugunca yakin olmasini saglamaktir. Düşük boyutlu koordinatlar x'_i gradyan inisi ile hesaplanir.
Karşılaştırma (MNIST üzerinde): UMAP, örnekleri görsel olarak PCA'dan daha iyi ayirir. Pratikte UMAP, PCA'dan biraz yavas ama otokodlayicidan daha hizlidir.
9.3.3 Otokodlayicilar (Autoencoders)
Otokodlayicinin darbogaz katmaninin düşük boyutlu çıktısi, yüksek boyutlu girdi özellik vektorunu temsil eden indirgenmis boyutlu vektor olarak kullanılır. Darbogaz katmani çıktısinin girdiyi yeniden olusturabilmesi, bu vektorun girdideki temel bilgiyi icerdiginin kantidir.
9.4 Aykiri Deger Tespiti (Outlier Detection)
Veri setindeki tipik örneklerden cok farkli olan örneklerin tespit edilmesi problemidir.
Yaklasimlar
Otokodlayici ile: Veri seti üzerinde bir otokodlayici egitilir. Yeni bir ornein aykiri olup olmadigini tahmin etmek için darbogaz katmanindan örneği yeniden oluşturmaya calisilir. Model, bir aykiri değeri yeniden oluşturmada başarısiz olacaktir.
Tek Sinif Sınıflandırma ile: Model, girdi örneğinin sinifa ait oldugunu veya aykiri oldugunu tahmin eder.
Ozet
| Yöntem | Tur | Temel Özellik |
|---|---|---|
| Cekirdek Yogunluk Tahmini | Yogunluk | Parametrik olmayan pdf modelleme |
| K-Means | Kumeleme | Centroid tabanli, k secimi gerektirir |
| DBSCAN | Kumeleme | Yogunluk tabanli, keyfi sekilli kümeler |
| HDBSCAN | Kumeleme | Degisen yoğunluk, yalnizca n parametresi |
| GMM + EM | Kumeleme | Yumusak atama, elips seklinde kümeler |
| PCA | Boyut Azaltma | En eski, en hizli, doğrusal |
| UMAP | Boyut Azaltma | Yerel yapi koruma, görsellesme için ideal |
| Otokodlayici | Boyut Azaltma | Doğrusal olmayan, sinir agi tabanli |
Lisans ve Atıf
Bu sayfa, Andriy Burkov tarafından yazılan "The Hundred-Page Machine Learning Book" kitabına dayalı notlar içermektedir.
- Kitap: theMLbook.com
- GitHub: github.com/aburkov/theMLbook
- Lisans: MIT License — Copyright (c) 2019 Andriy Burkov
- İlke: "Read first, buy later" — Kitabı önce okuyun, beğenirseniz satın alın.
MIT Lisansı gereği bu copyright bildirimi ve izin bildirimi, Yazılımın tüm kopyalarına veya önemli bölümlerine dahil edilmelidir.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. Bu içerik eğitim amaçlıdır ve orijinal eserin yerine geçmez. Tam kitap için themlbook.com adresini ziyaret edin.