MEH535 Örüntü anıma 6. Boyut Azaltımı (Dimensionality Reduction) Doç.Dr. M. Kemal GÜLLÜ Elektronik ve Haberleşme Mühendisliği Bölümü web: http://akademikpersonel.kocaeli.edu.tr/kemalg/ E-posta: kemalg@kocaeli.edu.tr Neden Boyut Azaltımı? Daha düşük hesapsal yük Daha az parametre/uzay karmaşıklığı k<<d Sadece gerekli öznitelikleri alabilme olanağı Küçük veri kümelerinde dafha gürbüz çalışan daha basit model oluşturabilme Daha açıklanabilir yapılar Verileri B ve 3B olarak görselleştirebilme (yapıları, grupları, aykırı örnekleri görebilme)
Boyut Azaltımı Boyutluluk belası (curse of dimensionality) Boyut azaltımı Öznitelik seçimi/çıkartımı (feature selection/extraction) İşaret temsili/sınıflandırma için emel Bileşenler Analizi (Principal Component Analysis-PCA) Doğrusal Ayırtaç Analizi (Linear Discriminant Analysis-LDA) 3 Deyim 96 de Bellman tarafından bulunmuştur. Çok değişkenli veri analizinde boyutluluğun artması problem oluşturmaktadır. Örneğin; Boyutluluk Belası Bir kişinin araç alırken aradığı kriterlerin çok fazla olması piyasada seçebileceği araç bulamamasına neden olabilir. En önemli kriterleri belirlemek! 4
Boyutluluk Belası emel örnek: Boyut/3 sınıf: Başarımı arttırmak için boyuta geçildiğinde: Kutudaki yoğunluk (N-örnek/kutu) sabit Örnek sayısı sabit (Kutulara seyrek örnek düşüyor) 5 Boyutluluk Belası Sabit örnek sayısında 3 boyuta geçildiğinde: Yoğunluğu sabit tutmak için örnek sayısı = N D olmalı Kutu sayısı = 7 Yoğunluk N=3 sabit seçildiğinde örnek sayısı = 8 Örnek sayısı sabit 9 iken 3B saçılım grafiği neredeyse boş 6 3
Boyutluluk Belası Pratikte, verilen bir veri kümesinde, sınıflandırıcının başarımının tepe noktaya ulaştığı bir öznitelik sayısı mevcuttur Fazla öznitelik kullanımı başarım düşüşü Boyutluluk sorunu ile mücadele için: Önsel bilgi kullanılabilir (değerli öznitelikler hk) Boyut azaltımı gerçekleştirilebilir 7 Boyut Azaltımı Boyut azaltımında ayrı yaklaşım mevcuttur: Öznitelik çıkartımı (feature extraction) Yeni özniteliklere sahip k<<d boyutlu yeni bir alt küme oluşturma Alt uzay seçme algoritmaları Öznitelik seçimi (feature selection) Mevcut özniteliklerden k<<d adedi seçilerek yeni bir alt küme oluşturma PCA, LDA 8 4
Boyut Azaltımı 9 Öznitelik Seçimi D özniteliğin d altkümesi oluşmaktadır (örn; mantıksal AND operatörünü öğrenme) İleri Arama (forward search): Her bir adımda en iyi özniteliği ekle Set of features F initially Ø. At each iteration, find the best new feature j = argmin i E ( F x i ) Add x j to F if E ( F x j ) < E ( F ) epe tırmanma (Hill-climbing O(d )) algoritması Geri Arama (backward search): üm öznitelikler ile başla ve mümkünse her adımda bir öznitelik azalt Kayan Arama (Floating search (Add k, remove l)) 0 5
Öznitelik Çıkartımı İşaret temsili: Bir alt uzayda işareti verimli şekilde temsil edebilme Sınıflandırma: Bir alt uzayda sınıf ayrımsama gücünü arttırma emel Bileşenler Analizi (PCA) x izdüşürüldüğünde bilgi kaybının en küçüklendiği bir düşük boyutlu uzay bul x in w üzerindeki izdüşümü: z = w x Var(z) nin en büyükleneceği w yı bul Var(z) = Var(w x) = E[(w x w μ) ] = E[(w x w μ)(w x w μ)] = E[w (x μ)(x μ) w] = w E[(x μ)(x μ) ]w = w w where Var(x)= E[(x μ)(x μ) ] = 6
emel Bileşenler Analizi Var(z) yi w = kısıtıyla en büyükle: w = αw, w, nın bir öz vektörü Var(z) yi en büyüklemek için, en büyük özdeğere karşılık gelen vektörü seç. emel bileşen: En büyük Var(z ), kısıt: w = ve w e dik w w w = α w max w w w w max w w w w w w 0, w, nın diğer bir öz vektörü 3 z = W (x m) W nın sütunları nın özvektörleri, m: örnek ortalaması emel Bileşenler Analizi Verinin ortalamasını merkeze taşı ve eksenleri döndür! 4 7
emel Bileşenler Analizi k boyut kararı nasıl verilmeli? Değişintinin oranı (PoV): k Not: özdeğerler genliklerine göre büyükten küçüğe sıralı Genel kullanım: PoV>0.9 olduğunda dur k d 5 emel Bileşenler Analizi 6 8
PCA Örnek 7 PCA Örnek 8 9
Faktör Analizi x i doğrusal kombinasyon ile oluşturmak için az sayıda z faktörü bul: x i µ i = v i z + v i z +... + v ik z k + ε i z j, j =,...,k : gizli faktörler (latent factors) ve E[ z j ]=0, Var(z j )=, Cov(z i,, z j )=0, i j, ε i : gürültü kaynakları E[ ε i ]= ψ i, Cov(ε i, ε j ) =0, i j, Cov(ε i, z j ) =0 v ij ler faktör yüklemeleri (factor loadings) 9 PCA - FA Faktör Analizi PCA x z z = W (x µ) FA z x x µ = Vz + ε 0 0
Faktör Analizi z j ler, x i üretmek için gerilir, döndürülür ve ötelenir: Doğrusal Ayırtaç Analizi (LDA) x izdüşürüldüğünde sınıfların iyi şekilde ayrımsandığı bir boyut azaltımı gerçekleştir Aşağıdaki ifadeyi en büyükleyen bir w bul: J m w m t s s t m wxr t t r t t wx t s m r t
Doğrusal Ayırtaç Analizi Sınıflar arası saçılım (between scatter): m m w m w m w m m m m w w SBw where SB m m m m Sınıf içi saçılım (within scatter): s, t t wx t t t t x m x m r s m r t S t t t r S w x m x m w w w t s w S w where S S S W W 3 Fisher Doğrusal Ayırtacı Aşağıdaki ifadeyi en büyükleyen w yı bul: LDA çözümü: Parametrik çözüm: J w w SBw w m m w SWw w SWw w cs m m w W μ μ x N, p C i ~ μ, i 4
Doğrusal Ayırtaç Analizi K> sınıf için: Sınıflar arası saçılım: K t t t r x m x m t S S S W i i i i i i Sınıf içi saçılım: K K S N m m m m, m m B i i i i i K i Aşağıdaki ifadeyi en büyükleyen W yı bul: J B W S W W W S - W S B in en büyük özdeğerleri W S W En büyük rank: K- 5 LDA Örnek 6 3
PCA - LDA Karşılaştırma 7 4