Nierzadko ktoś nazywa to techniką bez nadzoru. Możesz przeprowadzić analizę wektorów własnych, które pomogą wyjaśnić zachowanie danych. Oczywiście, jeśli twoja transformacja nadal ma wiele funkcji, proces ten może być dość trudny. Niemniej jednak jest to możliwe, dlatego uważam, że to uczenie maszynowe.
Edytować:
Ponieważ moja odpowiedź została wybrana (nie mam pojęcia, dlaczego), pomyślałem, że dodam więcej detali.
PCA robi dwie rzeczy, które są równoważne. Po pierwsze, i co jest powszechnie określane, maksymalizuje wariancje. Po drugie, minimalizuje błąd rekonstrukcji, patrząc na sparowane odległości.
Patrząc na wektory własne i wartości własne, dość łatwo jest wydedukować, które zmienne i cechy przyczyniają się do wariancji, a także jak różne zmienne poruszają się w połączeniu z innymi.
Ostatecznie zależy to od tego, jak zdefiniujesz „uczenie się”. PCA uczy się nowej przestrzeni funkcji, która oddaje cechy oryginalnej przestrzeni. Myślę, że to może mieć sens.
Czy to jest skomplikowane? Nie, nie bardzo, ale czy to pomniejsza go jako algorytm? Nie, nie sądzę.
PCA to właściwie tylko rotacja. Poważnie, to wszystko: to sprytny sposób na przeniesienie danych na nową podstawę. Ta podstawa ma właściwości, które sprawiają, że jest przydatna jako etap wstępnego przetwarzania dla kilku procedur.
Podstawa jest ortonormalna . Jest to niezwykle przydatne, jeśli twoje funkcje wykazują wielokolaryzację (dwie lub więcej funkcji jest liniowo zależnych): zastosowanie PCA gwarantuje, że będzie to podstawa tam, gdzie nie jest to już problemem. Ta procedura jest znana jako regresja głównego składnika
Wektory bazowe są istotne w odniesieniu do rozprzestrzeniania się danych: są wektory z macierzy kowariancji . Ta druga właściwość daje początek znanej użyteczności PCA jako techniki zmniejszania wymiarów: po obróceniu danych, rzutowanie danych na podzbiór wektorów podstawowych związanych ze znaczną częścią całkowitej wariancji daje reprezentację niższego wymiaru, która (często) zachowuje ( większość (interesujących) właściwości strukturalnych danych.
Więc: czy to algorytm uczenia się? To jest pytanie filozoficzne. Co czyni algorytm uczenia się? Z pewnością PCA nie jest „nadzorowanym” algorytmem uczenia się, ponieważ możemy to zrobić ze zmienną docelową lub bez niej, i ogólnie kojarzymy techniki „bez nadzoru” z klastrowaniem.
Tak, PCA jest procedurą wstępnego przetwarzania. Ale zanim całkowicie odpiszesz to jako „nie uczenie się” czegoś, chciałbym, abyś rozważył następujące: PCA można obliczyć dosłownie biorąc wektory własne macierzy kowariancji, ale nie jest to tak ogólnie robione w praktyce. Numerycznie równoważna i bardziej wydajna obliczeniowo procedura polega na pobraniu SVD danych. Dlatego PCA jest tylko specyficzną aplikacją SVD, więc pytanie, czy PCA jest algorytmem uczenia się, naprawdę pyta, czy SVD jest algorytmem uczenia się.
Teraz, choć możesz czuć się komfortowo, odpisując PCA jako algorytm uczenia się, oto dlaczego powinieneś czuć się mniej komfortowo, robiąc to samo z SVD: jest to zaskakująco potężna metoda modelowania tematów i filtrowania grupowego . Właściwości SVD, które czynią go użytecznym w tych aplikacjach, są dokładnie tymi samymi właściwościami, które czynią go użytecznym do redukcji wymiarów (tj. PCA).
SVD jest uogólnieniem składu eigend, który również jest niezwykle potężny, nawet jako ograniczona wersja SVD. Możesz przeprowadzić wykrywanie wspólnoty na wykresie, patrząc na wektory własne macierzy przylegania, lub określić prawdopodobieństwo stanu ustalonego modelu markowa , patrząc na wektory własne macierzy przejścia, które przypadkowo jest również zasadniczo sposobem obliczania PageRank .
Pod maską PCA wykonuje prostą operację algebry liniowej. Ale jest to dokładnie ta sama operacja, która leży u podstaw wielu aplikacji, do których większość ludzi nie kwestionowałaby zastosowania etykiety „uczenie maszynowe”. Ta klasa algorytmów nazywana jest faktoryzacją macierzy , a nawet rozciąga się na wyrafinowane techniki, takie jak word2vec : w rzeczywistości można uzyskać wyniki podobne do word2vec, dosłownie stosując PCA do macierzy współwystępowania słów . Uogólniając ponownie, innym słowem dla wyników PCA jest osadzanie . Word2vec jest prawdopodobnie najbardziej znanym przykładem osadzania, ale konstruowanie osadzania (jako pośredników) jest również ważnym elementem architektury kodera-dekodera stosowanej w RNNi GAN , które są obecnie najnowocześniejszymi badaniami ML.
Wracając do pytania: czy PCA jest „algorytmem uczenia maszynowego?” Jeśli tak nie jest, powinieneś być przygotowany na to samo, co do filtrowania grupowego, modelowania tematów, wykrywania społeczności, centralności sieci oraz modeli osadzania.
To, że jest to prosta algebra liniowa, nie oznacza, że nie jest też magią.
źródło
Oczywiście nie jest to algorytm uczenia się, ponieważ nie uczysz się niczego w PCA. Można go jednak stosować w różnych algorytmach uczenia się, aby osiągnąć lepszą wydajność w rzeczywistości, lubi większość innych metod redukcji wymiarów.
źródło
PCA służy do eliminacji zbędnych funkcji. Znajduje kierunki, w których dane są wysoce rozproszone. Nie dba o etykiety danych, ponieważ są to rzuty, które reprezentują dane w sensie najmniejszych kwadratów. Analiza wielokrotnych dyskryminacji,
MDA
spróbuj znaleźć prognozy, które najlepiej oddzielą dane. Ten ostatni rozważa etykietę i określa kierunki, w których dane można najlepiej oddzielić, chociaż zawiera pewne szczegóły na temat rodzaju znalezionej decyzji. Podsumowując,PCA
nie jest algorytmem uczenia się. Próbuje tylko znaleźć kierunki, w których dane są wysoce rozproszone, aby wyeliminować skorelowane cechy. Podobne podejścia, takie jakMDA
próba znalezienia wskazówek w celu sklasyfikowania danych. ChociażMDA
jest tak bardzo podobnyPCA
, ale ten pierwszy służy do klasyfikacji, uwzględnia etykiety, ale ten drugi nie jest bezpośrednio wykorzystywany do klasyfikacji.źródło