PCA bir makine öğrenme algoritması mıdır?


10

Temel bileşen analizinin boyutsallık azaltma tekniği olduğunu, yani 10 girdi özelliği verildiğinde, orijinal özelliklerin dik ve doğrusal dönüşümü olan daha az sayıda bağımsız özellik üreteceğini anladım.

PCAkendisi bir öğrenme algoritması olarak kabul veya veri işlem öncesi adımdır ile.

Yanıtlar:


9

Birisinin denetimsiz bir teknik olarak etiketlemesi nadir değildir. Özvektörler üzerinde ve verilerin davranışını açıklamaya yardımcı olan bazı analizler yapabilirsiniz. Doğal olarak, dönüşümünüzün hala birçok özelliği varsa, bu işlem oldukça zor olabilir. Yine de bu yüzden makine öğrenimi olduğunu düşünüyorum.

Düzenle:

Cevabım seçildiğinden (neden olduğu hakkında hiçbir fikrim yok) daha fazla detal ekleyeceğimi düşündüm.

PCA eşdeğer iki şey yapar. İlk olarak ve yaygın olarak ifade edilen, varyansları en üst düzeye çıkarır. İkincisi, eşli mesafelere bakarak yeniden inşa hatasını en aza indirir.

Özvektörlere ve özdeğerlere bakarak, hangi değişkenlerin ve özelliklerin varyansa katkıda bulunduğunu ve ayrıca farklı değişkenlerin başkalarıyla birlikte nasıl hareket ettiğini anlamak oldukça basit hale gelir.

Sonuçta, bu gerçekten “öğrenmeyi” nasıl tanımladığınıza bağlıdır. PCA, orijinal alanın özelliklerini yakalayan yeni bir özellik alanı öğrenir. Bunun anlamlı olabileceğini düşünüyorum.

Karmaşık mı? Hayır, gerçekten değil, ama bu onu bir algoritma olarak azaltır mı? Hayır öyle düşünmüyorum.


3
Bu cevabın tamamen fikir olduğunu ve bir argüman sunmadığını düşünüyorum. Belki başkaları tarafından yapılan hususları detaylandırın, dahil edin ve onaylayın.
Hobbes

15

PCA aslında sadece bir rotasyon. Cidden, hepsi bu: Verileri yeni bir temelde döndürmenin akıllıca bir yolu. Bu temel, çeşitli prosedürler için bir ön işleme adımı olarak yararlı kılan özelliklere sahiptir.

  1. Temel ortonormaldir . Bu, özellikleriniz çok doğrusallık gösteriyorsa (iki veya daha fazla özellik doğrusal olarak bağımlıysa) inanılmaz derecede kullanışlıdır : PCA uygulamanızın, bunun artık sorun olmadığı bir temel oluşturması garanti edilir. Bu prosedür temel bileşen regresyonu olarak bilinir

  2. Taban vektörleri veri yayılması ile ilgili olarak anlamlıdır: bunlar özvektörler ve kovaryans matrisi . Bu ikinci özellik, bir boyutsal azaltma tekniği olarak PCA'nın ünlü faydasına yol açar: verileri döndürdükten sonra , toplam varyansın önemli bir kısmı ile ilişkili temel vektörlerin bir alt kümesine yansıtılması (genellikle) daha düşük bir boyut temsili sağlar ( verilerin (ilginç) yapısal özelliklerinin çoğu.


Yani: bir öğrenme algoritması mı? Bu biraz felsefi bir soru. Bir şeyi öğrenme algoritması yapan nedir? Kesinlikle PCA "denetlenen" bir öğrenme algoritması değildir, çünkü bunu bir hedef değişkenle veya bu değişken olmadan yapabiliriz ve genellikle "denetimsiz" teknikleri kümeleme ile ilişkilendiririz.

Evet, PCA bir ön işleme prosedürüdür. Tamamen olarak değil "öğrenme" bir şey onu yazmadan önce Ama aşağıdakileri dikkate almak istiyorum: PCA olabilir anlamıyla kovaryans matrisinin öz vektörlerini alınarak hesaplanacak, ancak bu genellikle pratikte nasıl yapıldığını değil. Sayısal olarak eşdeğer ve daha hesaplamalı olarak etkili bir prosedür sadece verilerin SVD'sini almaktır . Bu nedenle, PCA sadece özel bir SVD uygulamasıdır, bu yüzden PCA'nın bir öğrenme algoritması olup olmadığını sormak gerçekten SVD'nin bir öğrenme algoritması olup olmadığını sormaktır.

Şimdi, bir öğrenme algoritması olarak PCA'yı yazarken rahat hissetmenize rağmen, işte bu yüzden SVD ile aynı şeyi yapmakta daha az rahat olmalısınız: Konu modelleme ve işbirlikçi filtreleme için şaşırtıcı derecede güçlü bir yöntemdir . SVD'nin bu uygulamalar için yararlı olmasını sağlayan özellikleri, boyutsal azaltma (yani PCA) için yararlı kılan özelliklerle tamamen aynıdır.

SVD öz-kompozisyonun genelleştirilmesidir ve bu da SVD'nin kısıtlı bir versiyonu olarak bile son derece güçlüdür. Bitişiklik matrisinin özvektörlerine bakarak bir grafik üzerinde topluluk algılaması gerçekleştirebilir veya PageRank'in tesadüfî olarak nasıl hesaplandığı geçiş matrisinin özvektörlerine bakarak bir markov modelinin kararlı durum olasılıklarını belirleyebilirsiniz .

Kaputun altında, PCA basit bir doğrusal cebir işlemi gerçekleştiriyor. Ancak, bu, çoğu insanın "makine öğrenimi" etiketini uygulamayı sorgulamadığı birçok uygulamanın altında yatan aynı işlemdir. Bu algoritma sınıfına Matrix Faktorizasyonu denir ve hatta word2vec gibi karmaşık tekniklere kadar uzanır : gerçekten de, kelimenin tam anlamıyla sadece bir sözcük bir arada bulunma matrisine PCA uygulayarak word2vec benzeri sonuçlar elde edebilirsiniz . Genel olarak bakıldığında, PCA'nın sonuçları için başka bir kelime gömme . Word2vec muhtemelen bir gömme işleminin en ünlü örneğidir, ancak düğünleri (aracı olarak) oluşturmak da RNN'lerde kullanılan kodlayıcı-kod çözücü mimarisinin önemli bir bileşenidir.ve şu anda ML araştırmasının kanayan kenarı olan GAN'lar .


Sorunuza geri dönelim: PCA bir "makine öğrenme algoritması mı?" Değilse, aynı şeyi işbirlikçi filtreleme, konu modelleme, topluluk algılama, ağ merkeziliği ve gömme modelleri hakkında da söylemeye hazır olmalısınız.

Basit lineer cebir olması sihir olmadığı anlamına da gelmez.


6

PCA'da hiçbir şey öğrenmediğiniz için kesinlikle bir öğrenme algoritması değildir. Bununla birlikte, gerçekte daha iyi bir performansa ulaşmak için farklı öğrenme algoritmalarında kullanılabilir, diğer boyut azaltma yöntemlerinin çoğunu sever.


4

PCA, gereksiz özellikleri ortadan kaldırmak için kullanılır. Verilerin yüksek oranda dağıtıldığı yönleri bulur. Verilerin etiketlerini umursamaz, çünkü verileri en az kare anlamında temsil eden bir çıkıntıdır . Çoklu Diskriminant Analizi, verileri MDAen iyi ayıran projeksiyonları bulmaya çalışın . İkincisi etiketi dikkate alır ve bulduğu karar türü hakkında bazı ayrıntılara sahip olmasına rağmen, verilerin en iyi ayrılabileceği yönleri bulur. Özetlemek PCAbir öğrenme algoritması değildir. İlişkili özellikleri ortadan kaldırmak için verilerin yüksek oranda dağıtıldığı yönleri bulmaya çalışır. MDAVerileri sınıflandırmak için yön bulmaya çalışmak gibi benzer yaklaşımlar . MDAÇok gibi olmasına rağmenPCA, ancak birincisi sınıflandırma için kullanılır, etiketleri dikkate alır, ancak ikincisi doğrudan sınıflandırma için kullanılmaz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.