Veri Madenciliğisafakkayikci.com/dersler/verimadenciligi/9-Temel_Bilesen...• Bir değişkenler...

Preview:

Citation preview

Veri MadenciliğiTemel Bileşen Analizi

PCA (Principal Component Analysis)Dr. Şafak Kayıkçı

Ortalama

Varyans

Ortalama - Varyans

X varyans – Y varyans

X varyans – Y varyans

Kovaryans

Kovaryans

Kovaryans

Orta noktasına göre merkeze taşı

Principal Component Analysis (PCA)

• Bir değişkenler kümesinin varyans-kovaryans yapısını, bu değişkenlerin doğrusal birleşimleri vasıtasıyla açıklayarak, boyut indirgenmesini ve yorumlanmasını sağlayan, çok değişkenli bir istatistik yöntemidir.

• Bu yöntemde p adet değişken; doğrusal, ortogonal ve birbirinden bağımsız olma özelliği taşıyan k (k≤p) tane yeni değişken dönüştürlmektedir.

• Bu indirgenmede önemli varyans kaybı olmamaktadır. Aslında yeni oluşturulan bu k adet değişken, gerçek değişkenlerin doğrusal bileşimidir. Sıkıştırma algoritmalarında da PCA kullanılmaktadır.

PCA işlemler

1. Veriler ortalamayla düzgünleştirilir (normalizasyon - sadece gerekli durumlarda).

2. Kovaryans matrisi hesaplanır.3. Eigen value(özdeğer) ve Eigen vector (özvektör) hesaplanır.4. İndirgenme için özellik vektörü seçilir ve indirgenme çarpımı yapılır.

Kovaryans Matrisinin HesaplanmasıStandart sapma: • Veri setindeki verilerin, ortalamadan farklarının karelerinin toplamlarının (n-1)’e bölümünün karaköküdür.• Ortalamanın, ne kadar gerçekçi olduğunu, verilerin bu ortalamadan ne kadar uzak/yakın olduğunu gösteren

parametredir.

Varyans ise standart sapmanın karesidir.

Kovaryans Matrisinin Hesaplanması• Kovaryans ise iki veri arasındaki değişimi hesaplayan bir parametredir. x ve

y ile gösterilen iki dizi arasındaki kovaryans denklem:

cov (x,y) = ∑𝑖𝑖=1𝑛𝑛 𝑥𝑥𝑖𝑖−�̅�𝑥 𝑦𝑦𝑖𝑖− �𝑦𝑦

𝑛𝑛−1

• Kovaryans matrisi ise iki veri kümesi için hazırlanan bir matristir. k ile gösterimi:

k cov(x,y) = 𝑐𝑐𝑜𝑜𝑜𝑜 𝑥𝑥, 𝑥𝑥

𝑐𝑐𝑜𝑜𝑜𝑜 𝑦𝑦, 𝑥𝑥𝑐𝑐𝑜𝑜𝑜𝑜 𝑥𝑥, 𝑦𝑦

𝑐𝑐𝑜𝑜𝑜𝑜 𝑦𝑦, 𝑦𝑦

Özdeğer ve özvektör hesaplanması

Örnek :

• Bir vektörün bu tip bir dönüşüme uğrayıp, yönü aynı kalıp, sadece boyutunda bir azalma olursa ortaya çıkan bu yeni vektöre özvektördenir.

• Bir vektörü örneğin iki misline çıkarmak için gerekli katsayıya özdeğerdenir.

• PCA’da amaç, özdeğer ve özvektör (kovaryans matris) yardımıyla ilgili verilerin boyutunu düşürmektir.

2 32 1 * 3

2 = 128 = 4 3

2

Özdeğer ve özvektör hesaplanması

Örnek ∶ −7 7−5 5 şeklinde verilmiş olan 2x2 matrisin özdeğer ve

özvektörlenin hesaplanması ?• İlk olarak diyagonellerden λ (lamda) çıkarılır

−7 − λ 7−5 5 − λ

• İçler dışlar çarpımı yapılarak sıfıra eşitlenir. λ değeri bulunur.(-7- λ )(5- λ )- [(-5) 7] = 0-35 + 7λ-5λ+ λ2+35 = 0

λ2+2 λ = 0λ1 = -2 , λ2 = 0

Özdeğer ve özvektör hesaplanması

• λ1 = -2 için−7−(−2) 7−5 5 − (−2)

𝑥𝑥𝑦𝑦 = 0

0-5x+7y = 0, -5x+7y = 0

x=7 ve y=5• λ2 = 0 için

−7−(0) 7−5 5 − (0)

𝑥𝑥𝑦𝑦 = 0

0-7x+7y = 0, -5x+5y = 0

x=1 ve y=1Bu durumda öz vektörlerimiz:[7 5] ve [1 1] olur. Bu iki özvektörden en güçlü olan indirgenme vektörü olarak seçilir.

Özelik vektörü seçimi ve indirgenme çarpımı

Elde edilen her iki vektör birlikte bir matris şeklinde kullanırsa elimizdeki iki dizi yine iki dizi olarak kalacaktır. Eğer biz bu vektörlerden büyük olanı seçersek, elimizdeki iki veri dizisi tek bir dizi haline dönüşecek ve her iki dizinin ortak özelliklerini taşıyacaktır. İndirgenme işlemi :

A = Bt * Ct

A: indirgenmiş veri dizisiniBt : seçilen özvektörün transpozesiCt: düzgünleştirilmiş orijinal veri kümesinin transpozesi

Örnek

cov (x,y) = ∑𝑖𝑖=1𝑛𝑛 𝑥𝑥𝑖𝑖−�̅�𝑥 𝑦𝑦𝑖𝑖− �𝑦𝑦

𝑛𝑛−1

k cov(x,y) = 𝑐𝑐𝑜𝑜𝑜𝑜 𝑥𝑥, 𝑥𝑥

𝑐𝑐𝑜𝑜𝑜𝑜 𝑦𝑦, 𝑥𝑥𝑐𝑐𝑜𝑜𝑜𝑜 𝑥𝑥, 𝑦𝑦

𝑐𝑐𝑜𝑜𝑜𝑜 𝑦𝑦, 𝑦𝑦

= 11248 2202122021 43629

Örnek

11248 − λ 2202122021 43629 − λ

(11248- λ)(43629- λ)- (22021)(22021) = 0λ1 = 54770,84 λ2 = 106,161

λ1 yerine konduğunda :

11248 − 54770,84 2202122021 43629 − 54770,84

𝑥𝑥𝑦𝑦 = 0

0

−43522,84 2202122021 −11141,84

𝑥𝑥𝑦𝑦 = 0

0

𝑥𝑥𝑦𝑦 = −6,05595

1λ2 yerine konduğunda :

11248 − 106,161 2202122021 43629 − 106,161

𝑥𝑥𝑦𝑦 = 0

0

11141,83 2202122021 43522,83

𝑥𝑥𝑦𝑦 = 0

0

𝑥𝑥𝑦𝑦 = −8,53834

1----------------------------------------------------------------------------------------------

Bu özvektörlerden 2.sinin boyutu daha büyüktür.

Boyutu indirgenmiş veri

Sonuç = Bt * Ct

= −8,53834 1 *

=

60 255 285 428 265 306 326 418 220 358112 545 600 845 500 605 645 806 456 736

-400,3004 -1632,2767 -1833,4269 -2809,40952 -1762,6601 -2007,732 -2138,49884 -2763,03 -1422,43 -2320,73

Recommended