Boyut indirgeme ve PCA: çok özellikli veriyi sadeleştirmek
Sözlük

Boyut indirgeme ve PCA: çok özellikli veriyi sadeleştirmek

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 4 dk okuma

Çok sayıda özelliği olan veriyi bilgi kaybını sınırlayarak sadeleştirmenin neden gerektiğini, PCA'nın bunu nasıl yaptığını ve nelere dikkat edilmesi gerektiğini öğrenirsiniz.

Bir bakışta

  1. Boyut indirgeme, veriyi daha az özellikle ama olabildiğince çok bilgiyi koruyarak ifade etmektir. Özellik sayısı azaldıkça model hızlanır, görselleştirme mümkün olur ve gürültü azalır.
  2. PCA, verideki değişimi en çok açıklayan yeni ve birbirine dik eksenler bulur. Bu eksenlere temel bileşen denir ve açıkladıkları değişime göre sıralanır.
  3. PCA doğrusal bir yöntemdir ve ölçeğe duyarlıdır. Özellikler farklı birimlerdeyse önce standartlaştırılmazsa büyük ölçekli özellik sonucu domine eder.
  4. Yeni bileşenler özgün özelliklerin karışımıdır, yorumlanması zorlaşır. Sadeleşme kazancı, yorumlanabilirlik kaybıyla dengelenmelidir.
  5. Boyut indirgeme, özellik seçmekten farklıdır. Seçimde mevcut özelliklerin bir kısmı atılır; PCA'da ise hepsinden yeni bileşenler üretilir.

Boyut indirgeme nedir?

Bir veri kümesinde her sütun bir özelliktir ve her özellik bir boyut sayılır. Müşteri verisinde yaş, gelir, ziyaret sıklığı, sepet büyüklüğü gibi onlarca sütun olabilir. Boyut indirgeme (dimensionality reduction), bu özellikleri daha az sayıda yeni özelliğe indirip verideki önemli yapıyı korumaya çalışan yöntemlerin genel adıdır.

Bunun üç temel yararı vardır. Model daha az özellikle daha hızlı eğitilir. Gürültü ve tekrar eden bilgi azalır; birbirine çok benzeyen özellikler tek bileşende toplanır. Ayrıca yüzlerce boyutlu veri, az sayıda boyuta indirgendiğinde gözle incelenebilir hâle gelir.

Neden gerekir: boyutluluk laneti

Özellik sayısı arttıkça veri uzayı büyür ve mevcut gözlemler bu uzayda seyrekleşir. Aynı sayıda satırla çok daha fazla yöne dağılmış bir veride, modelin güvenilir örüntü bulması zorlaşır. Bu duruma boyutluluk laneti denir.

Sonuçları somuttur: model eğitim verisine fazla uyum sağlar ama yeni veride kötü çalışır, mesafeye dayanan yöntemler (örneğin komşuluk ve kümeleme) ayrım gücünü kaybeder, eğitim süresi uzar. Boyut indirgeme bu sorunu hafifletmenin başlıca yollarından biridir; diğer yolu ise daha fazla veri toplamak ya da gereksiz özellikleri elemektir.

PCA nasıl çalışır?

Temel bileşen analizi (PCA, principal component analysis), veride en çok değişimin olduğu yönü bulur ve bunu ilk yeni eksen yapar. Ardından bu eksene dik olan ve kalan değişimin en çoğunu açıklayan yönü bulur, bu da sıradaki eksendir. Her bileşen, bir öncekinden bağımsızdır ve açıkladığı değişim sıradan azalarak ilerler.

scikit-learn belgesi PCA'yı çok değişkenli bir veri kümesini, değişimin en fazlasını açıklayan ardışık ve dik bileşenlere ayrıştırma yöntemi olarak anlatır; veriyi doğrusal dönüştürerek boyutu düşürürken açıklanan değişimin büyük kısmını korur. Pratikte ilk birkaç bileşen verideki değişimin büyük bölümünü taşıyorsa, geri kalanı atılarak veri sadeleştirilir.

Özünde PCA bir eksen döndürmedir: veri noktaları aynı kalır, yalnız onları ölçtüğümüz eksenler en bilgi dolu olacak şekilde yeniden seçilir.

Şekil 1

PCA, veriyi bilgi yoğunluğuna göre yeniden eksenler

Temel işleyiş

  1. A · Veriyi hazırlaÖzellikleri standartlaştır, eksik değeri ele al
  2. B · Bileşenleri bulEn çok değişimi açıklayan dik eksenleri hesapla
  3. C · Değişime göre sıralaHer bileşenin açıkladığı payı incele
  4. D · Yeterince bileşeni tutGerisini atıp veriyi yeni eksenlere yansıt
Kaynak: scikit-learn kullanım kılavuzundaki PCA anlatımından özetlendi.Mindset Institute

Uygularken dikkat edilecekler

scikit-learn belgesi PCA'nın girdiyi her özellik için ortaladığını ama ölçeklemediğini belirtir. Bu önemlidir: özellikler farklı birimlerdeyse, örneğin biri küçük ondalıklı, diğeri çok büyük tutarlı değerler taşıyorsa, büyük ölçekli özellik değişimi domine eder ve ilk bileşen onu izler. Bu nedenle özellikleri önceden standartlaştırmak yaygın uygulamadır.

Kaç bileşen tutulacağı açıklanan değişim oranına bakılarak seçilir: bileşenler eklendikçe toplam açıklanan değişim yükselir ve belirli bir noktadan sonra katkı küçülür. Sınır, amaca göre belirlenir; görselleştirme için az, model girdisi için daha fazla bileşen tutulur.

PCA yalnızca eğitim verisine uydurulmalı, aynı dönüşüm test verisine uygulanmalıdır. Tüm veriye uydurmak, test bilgisinin eğitime sızmasına yol açar. Ayrıca PCA doğrusal ilişkileri yakalar; eğri biçimli yapıları iyi temsil edemeyebilir.

Örnek: müşteri segmentasyonu öncesi sadeleştirme

Bir perakende ekibi, müşterileri kümelemek istiyor ve her müşteri için çok sayıda davranış özelliği çıkarmış olsun: kategori başına harcama, ziyaret sıklığı, indirimli alım payı, iade eğilimi gibi. Bu özelliklerin birçoğu birbiriyle ilişkilidir; sık gelen müşteri hem çok sepet oluşturur hem çok kategori gezer.

Ekip önce özellikleri standartlaştırır, sonra PCA uygular. İlk birkaç bileşenin değişimin büyük bölümünü açıkladığını görür. Bileşenleri inceleyince bunun bir yoğunluk ekseni ve bir indirim duyarlılığı ekseni gibi okunabildiğini fark eder. Kümelemeyi özgün özellikler yerine bu birkaç bileşen üzerinde çalıştırınca sonuçlar daha kararlı ve çizilebilir olur. Ancak ekip, her kümeyi anlatırken bileşenleri özgün özelliklere çevirmek zorunda kalır.

Sık karıştırılan kavramlar ve sınırlar

Boyut indirgeme ile özellik seçimi farklıdır. Özellik seçiminde mevcut özelliklerin bir kısmı tutulur, geri kalanı atılır; tutulanlar özgün anlamını korur. PCA'da ise bütün özelliklerden yeni bileşenler üretilir ve özgün anlam bulanıklaşır.

PCA denetimsizdir: hedef değişkene bakmaz, yalnız verideki değişime bakar. En çok değişimi açıklayan yön, sınıflandırma için en ayırt edici yön olmak zorunda değildir. PCA'nın kazanç sağlayıp sağlamadığı, model sonucu doğrulama verisinde karşılaştırılarak sınanır.

Son olarak PCA kümelemeyle karıştırılmamalıdır. Kümeleme gözlemleri gruplar, PCA ise özellikleri sadeleştirir; ikisi sıkça ardışık kullanılır.

Veri bilimi programlarında yeri

Boyut indirgeme, denetimsiz öğrenmenin ve özellik hazırlığının temel konularından biridir. Denetimsiz Öğrenme Algoritmaları programı bu teknikleri kümeleme ile birlikte işler. Makine Öğrenmesi (Uygulamalı) Programı ve Data Science Uzmanlığı Sertifika Programı ise boyut indirgemeyi gerçek veri hazırlığı ve modelleme akışının içinde veri bilimci ve analitik rollerine anlatır.

İlgili Mindset programı

Denetimsiz Öğrenme Algoritmaları

Sık sorulanlar

Sık sorulan sorular

PCA ile özellik seçimi arasındaki fark nedir?

Özellik seçimi mevcut özelliklerden bir alt küme tutar ve özgün anlam korunur. PCA ise bütün özelliklerden yeni bileşenler üretir; sütunlar artık özgün değişkenler değil, onların ağırlıklı karışımıdır. Yorumlanabilirlik önemliyse seçim, sıkıştırma ve gürültü azaltma önemliyse PCA daha uygundur.

PCA'dan önce veriyi standartlaştırmak şart mı?

Özellikler farklı birimlerdeyse neredeyse her zaman gereklidir. PCA, özellikleri ortalar ama ölçeklemez; bu nedenle büyük ölçekli bir özellik değişimi domine edebilir. Hepsi aynı birimdeyse ve ölçek farkının anlamlı olduğu düşünülüyorsa standartlaştırmadan da kullanılabilir.

Kaç bileşen tutulmalı?

Tek bir doğru sayı yoktur. Bileşenlerin açıkladığı toplam değişime bakılır ve katkının belirgin biçimde küçüldüğü noktada durulur. Görselleştirme için az, model girdisi için daha fazla bileşen tutmak yaygındır. Son karar, modelin doğrulama verisindeki performansıyla sınanmalıdır.

PCA her veri için uygun mu?

Hayır. Doğrusal bir yöntemdir ve özellikler arasında doğrusal ilişki olduğunda iyi çalışır. Eğri biçimli yapılarda ya da değişimin ayırt ediciliği taşımadığı durumlarda kazanç sağlamayabilir. Bu yüzden sonucu denemeden varsaymamak, doğrulama verisiyle karşılaştırmak gerekir.

PCA bir makine öğrenmesi modeli midir?

Kendi başına tahmin üretmez; bir dönüştürücüdür. Veriyi yeni eksenlere taşır ve çoğu zaman bir kümeleme ya da sınıflandırma modelinin girdisini hazırlamak için kullanılır. Denetimsiz bir yöntem olduğu için hedef değişkene bakmaz.

Boyut İndirgeme ve PCA (Temel Bileşen Analizi)