Yanıtlar:
Aşağıdaki makale: Cangelosi ve Goriely tarafından cDNA mikrodizi verisine uygulama ile temel bileşen analizinde bileşen tutulması , bir çalışmadaki bileşen sayısını tespit etmek için standart başparmak kuralına oldukça iyi bir genel bakış sağlar. (Scree grafiği, Açıklanan toplam varyansın oranı, Ortalama özdeğer kuralı, Log-özdeğer diyagramı, vb.) Çoğu R'de uygulanması oldukça kolaydır.
Eğer dağ eteğindeki arsa çok sonuçsuz ise, o zaman sadece "zehirini seç" gerekir. Gerçekte kullanılacak PC sayısı aslında sorunu anlamanıza bağlı olduğundan, herhangi bir veri için mutlak doğru veya yanlış yoktur. Boyutunu "gerçekten" bilen tek veri seti, kendi oluşturduğunuz veri setidir. :-) Günün sonunda Temel Bileşenler, verilerin bir RSS metriği altında en uygun şekilde ayrıştırılmasını sağlar (bir yan ürün olarak, her bir bileşenin temel bir varyasyon modunu temsil etmesini sağlarsınız) ve belirli sayıda bileşeni dahil eder veya hariç tutar probleminizin boyutsallığı hakkındaki algınızı belirler.
Kişisel tercih olarak, Minka'nın PCA için olasılıksal bir yorumuna dayanan bu otomatik boyutsallık seçimi konusundaki yaklaşımını seviyorum, ancak daha sonra, belirli bir boyutsallık için verilerinizin olasılığını modellemeye çalışma oyununa girersiniz. (Bu mantığı takip etmek istiyorsanız bağlantı Matlab kodunu sağlar.)
Verilerinizi daha iyi anlamaya çalışın. Örneğin. Veri kümenizin varyasyonunun% 99,99'unun modelinizin ortak değişkenlerinden kaynaklandığına gerçekten inanıyor musunuz? Büyük olasılıkla değilse, muhtemelen toplam varyansın bu kadar küçük bir oranını gösteren boyutları eklemenize gerek yoktur. Gerçekte bir bileşenin sadece fark edilebilir farklar eşiğinin altındaki varyasyonu yansıttığını düşünüyor musunuz? Bu yine muhtemelen bu bileşeni analizinize dahil etmede çok az alaka düzeyi olduğu anlamına gelir.
Her durumda, iyi şanslar ve verilerinizi dikkatlice kontrol edin. (Onları çizmek de mucizeler yaratır.)
Bu sorunun asıl sorulup yanıtlanmasından bu yana, son birkaç yıldır bu sorun üzerinde çok güzel çalışmalar yapılmıştır. Gavish ve Donoho'nun şu makalelerini şiddetle tavsiye ederim: Tekil Değerler için Optimal Sert Eşik 4 / sqrt (3)
Sonuçları asimptotik analize dayanır (yani veri matrisiniz sonsuz derecede büyüdükçe iyi tanımlanmış bir optimal çözüm vardır), ancak farklı gürültü altında bile küçük ve gerçekçi boyutlardaki veri kümeleri için asimptotik olarak en uygun prosedürün çalıştığını gösteren etkileyici sayısal sonuçlar gösterirler. modelleri.
Esasen, optimum prosedür matrisin her bir elemanına eklenen gürültüsünü tahmin etmek için kaynar . Buna dayanarak bir eşik hesaplar ve tekil değeri eşiğin altına düşen temel bileşenleri kaldırırsınız. Kare matrisi için, başlıkta önerildiği gibi 4 / sqrt (3) orantı sabiti görünür:
Ayrıca makalede kare olmayan durumu açıklarlar. Burada güzel bir kod ekleri var (MATLAB'da), ancak algoritmalar R'de veya başka bir yerde uygulamak kolay olurdu: https://purl.stanford.edu/vg705qn9070
Uyarılar:
Kaiser ölçütüyle ilgili sorun (birden fazla tüm özdeğerler), çıkarılan faktör sayısının, ek faktörlerin çoğunun gürültü olup olmadığına bakılmaksızın, genellikle pildeki öğe veya ölçek sayısının yaklaşık üçte biri olmasıdır. Paralel analiz ve dağ etüt kriteri genellikle çıkarılacak faktörlerin sayısını belirlemek için daha doğru prosedürlerdir (Harmon ve Ledyard Tucker'ın klasik metinlerine ve Wayne Velicer'ın daha yeni çalışmalarına göre).
psy
veyapsych
paketine bakın . Paralel Analiz ve Velicer'in MAP Testini daha genel olarak kullanmak.