Boyut Azaltma(Dimensionality Reduction) -Temel Bileşen Analizi

Özge Karalı
3 min readJun 25, 2021

--

Boyut Azaltma (Dimensionality Reduction)

Boyut Azaltma (Dimensionality Reduction)

Öncelikle neden öznitelik sayısını azaltma ihtiyacı duyarız ?

Öznitelik sayımız arttıkça boyut sayımızda da artış olmaktadır. Boyut sayısını azaltmak için öznitelik sayımızı azaltma amacımız doğar. Aynı zamanda boyut büyüdükçe hem öznitelik sayımız arttığı için veri temizlemeden model kurmaya bütün süreçlerde harcamamız gereken zaman artıyor. Ve ne kadar çok boyuta sahip olursak görselleştirme işlemi de o kadar zor oluyor.

Bir diğer önemli sebeplerden birisi de bazı öznitelikler arasında yüksek korelasyon oluyor ve bu bizim gereksiz bilgiye sahip olmamıza ve modelimizde overfitting (aşırı öğrenme) problemine sebep olabiliyor.

Diğer faydaları ise depolama alanımızı küçültür, doğruluk payı sayımızı arttırır.

Boyut azaltma(Dimensionality Reducation) yöntemleri nelerdir ? Nasıl boyut azaltırız ?

1-Temel Bileşenler Analizi (Principal Component Analysis) — PCA

2-Doğrusal Ayrımcılık Analizi (Linear Discriminant Analysis) — LDA

Temel Bileşenler Analizi (Principal Component Analysis) — PCA en yaygın boyut azaltma yöntemidir, en az veri kaybı ile boyut küçültmek feature extraction yapmamız gerekmektedir. Temel bileşen analizinde, verilerin düşük boyutlu sunumdaki değişkenliği maksimize edilecek şekilde daha düşük boyutlu bir alana doğru doğrusal bir eşleme gerçekleştirir. Uygulama noktasında ise, verilerin kovaryans veya korelasyon matrisi oluşturulur ve bu matristeki öz vektörler hesaplanır. En büyük öz değerlere (ana bileşenler) karşılık gelen öz vektörler artık orijinal verilerin varyansının büyük bir kısmını yeniden yapılandırmak için kullanılabilir.

*Veri setlerimiz çalışmaya başlamadan önce temizlenmiş olması önemli bir nokta olarak karşımıza çıkar.

Sklearn kütüphanesinin iris veri setini alıyoruz, 4 boyutlu bir veri setidir.

. shape

Temel Bileşen Analizimize başlamadan önceki bağımsız özniteliklerimiz arasındaki ilişkiyi göstermek için korelasyon yapalım.

2. ve 3. özniteliğimiz arasındaki bağlantı(korelasyon) — — — — — — — — — — — — — — — — — — Veri setimizin PCA öncesi öznitelikler arası ilişkisi (korelasyon)

0,962865 ile 2. ve 3. özniteliğimiz arasında sıkı bir ilişki vardır.

“fit_transform” metodunu dönüşüm uygulama işlemi gerçekleştiririz.

“fit_transform” metodundan sonra özniteliklerimiz arasındaki ilişkiye(korelasyon) bakalım.

Dönüşüm sonrası öznitelikler arasındaki ilişki — — — — — — — — — — — — — — — — — — — — — — — — — — — —Dönüşüm sonrası 2. ve 3. öznitelik arasındaki ilişki

Özniteliklerimiz arasındaki korelasyon ortalama değer 0 olacak şekilde karşımıza geldi. Sıkı ilişki olan 2. ve 3 . özniteliğimiz arasında ilişkinin dağıldığını da görselde görebiliriz.

Özniteliklerimizin birbiri arasında ilişkisini minimize ettikten sonra her özniteliğimizin varyansına bakarız.Yüksek varyansa sahip olan özniteliklerimiz bizim kaç boyuta indirmemiz gerektiğini gösterir.

özniteliklerimizin varyans değerlerine bakıyoruz

Öne çıkan 2 adet varyansı yüksek özniteliğimiz vardır.Boyutumuz 2 olmalıdır.

(n_components = 2) ile boyut sayımızı modelimize veririz.

2 Boyuta Azaltma dönüşümünü ve uygulamasını gerçekleştiriyoruz

“ .shape “ ile güncel veri setimizin boyutunun 2 olduğunu teyit edebiliriz.

Geri dönüşleriniz benim için çok önemli, ekleyebileceğiniz veya yorumlarınız için bekliyorum.

--

--