scopul acestui post este de a oferi o explicație completă și simplificată a analizei componentelor principale și, în special, de a răspunde la modul în care funcționează pas cu pas, astfel încât toată lumea să o înțeleagă și să o folosească, fără a avea neapărat un fundal matematic puternic.
PCA este de fapt o metodă acoperită pe scară largă pe web și există câteva articole grozave despre aceasta, dar doar câteva dintre ele merg direct la punct și explică cum funcționează fără să se scufunde prea mult în aspectele tehnice și „de ce” ale lucrurilor., Acesta este motivul pentru care am decis să-mi fac propria postare pentru a o prezenta într-un mod simplificat.înainte de a ajunge la explicație, această postare oferă explicații logice despre ceea ce face PCA în fiecare pas și simplifică conceptele matematice din spatele acesteia, ca standardizare, covarianță, vectori proprii și valori proprii, fără a se concentra pe modul de calculare a acestora.
ce este analiza componentelor principale?,
analiza componentelor principale, sau PCA, este o metodă de reducere a dimensionalității care este adesea folosită pentru a reduce dimensionalitatea seturilor mari de date, transformând un set mare de variabile într-unul mai mic care conține încă cea mai mare parte a informațiilor din setul mare.reducerea numărului de variabile ale unui set de date vine în mod natural în detrimentul preciziei, dar trucul în reducerea dimensionalității este de a tranzacționa puțină precizie pentru simplitate., Deoarece seturile de date mai mici sunt mai ușor de explorat și de vizualizat și fac analiza datelor mult mai ușoară și mai rapidă pentru algoritmii de învățare automată, fără variabile străine de procesat.deci, pentru a rezuma, ideea de PCA este simplă-reduceți numărul de variabile ale unui set de date, păstrând în același timp cât mai multe informații posibil.
explicarea pas cu pas a PCA
Pasul 1: standardizarea
scopul acestei etape este de a standardiza intervalul variabilelor inițiale continue, astfel încât fiecare dintre ele să contribuie în mod egal la analiză.,mai exact, motivul pentru care este esențial să se efectueze standardizarea înainte de PCA este că aceasta din urmă este destul de sensibilă în ceea ce privește variabilele variabilelor inițiale. Adică, dacă există diferențe mari între intervalele variabilelor inițiale, acele variabile cu intervale mai mari vor domina peste cele cu intervale mici (de exemplu, o variabilă care variază între 0 și 100 va domina peste o variabilă care variază între 0 și 1), ceea ce va duce la rezultate părtinitoare. Deci, transformarea datelor în scale comparabile poate preveni această problemă.,din punct de vedere matematic, acest lucru se poate face scăzând media și împărțind abaterea standard pentru fiecare valoare a fiecărei variabile.
odată ce standardizarea este făcută, toate variabilele vor fi transformate la aceeași scară.scopul acestui pas este de a înțelege modul în care variabilele setului de date de intrare variază de la medie unul față de celălalt, sau cu alte cuvinte, pentru a vedea dacă există vreo relație între ele., Deoarece uneori, variabilele sunt foarte corelate în așa fel încât să conțină informații redundante. Deci, pentru a identifica aceste corelații, calculăm matricea covarianței.matricea covarianței este o matrice simetrică p × p (unde p este numărul de dimensiuni) care are ca intrări covarianțele asociate cu toate perechile posibile ale variabilelor inițiale., De exemplu, pentru un 3-dimensional set de date cu 3 variabile x, y, și z, matricea de covarianță este un 3×3 matricea de acest lucru de la:
De covarianță a unei variabile cu ea însăși este varianța sa (Cov(a,a)=Var(a)), în diagonala principală (stânga Sus la dreapta jos) avem de fapt diferențe de fiecare inițială variabilă., Și din moment ce covarianța este comutativă (Cov(A,b) = Cov(b,a)), intrările matricei covarianței sunt simetrice în raport cu diagonala principală, ceea ce înseamnă că porțiunile triunghiulare superioare și inferioare sunt egale.
ce ne spun covarianțele pe care le avem ca intrări ale matricei despre corelațiile dintre variabile?,
este de fapt un semn de covarianță care contează :
- dacă este pozitiv, atunci : cele două variabile crește sau descrește împreună (corelate)
- dacă este negativ, atunci : O crește atunci când alte scade (Invers proportional)
Acum, că știm că matricea de covarianță nu este mai mult de un tabel care rezumatele corelațiile între toate perechile posibile de variabile, să trecem la pasul următor.,
Pasul 3: Calculați vectorii proprii și valorile proprii ale matricei de covarianță pentru a identifica componentele principale
vectorii proprii și valorile proprii sunt conceptele de algebră liniară pe care trebuie să le calculăm din matricea de covarianță pentru a determina componentele principale ale datelor. Înainte de a ajunge la explicarea acestor concepte, să înțelegem mai întâi ce înțelegem prin componentele principale.componentele principale sunt variabile noi care sunt construite ca combinații liniare sau amestecuri ale variabilelor inițiale., Aceste combinații sunt realizate în așa fel încât noile variabile (adică componentele principale) sunt necorelate și majoritatea informațiilor din variabilele inițiale sunt stoarse sau comprimate în primele componente. Deci, ideea este că datele 10-dimensionale vă oferă 10 componente principale, dar PCA încearcă să pună informații maxime posibile în prima componentă, apoi informații maxime rămase în a doua și așa mai departe, până când aveți ceva de genul prezentat în graficul de mai jos.,
Organizare a informației în componente principale în acest fel, vă va permite de a reduce dimensionalitatea, fără a pierde multă informație, și acest lucru prin aruncarea componentele cu un nivel scăzut de informații și având în vedere restul componentelor ca noi variabile.,un lucru important de realizat aici este că, componentele principale sunt mai puțin interpretabile și nu au nici un sens real, deoarece acestea sunt construite ca combinații liniare ale variabilelor inițiale.din punct de vedere geometric, componentele principale reprezintă direcțiile datelor care explică o cantitate maximă de variație, adică liniile care captează majoritatea informațiilor datelor., Relația dintre varianță și informație aici este că, cu cât varianța purtată de o linie este mai mare, cu atât dispersia punctelor de date de-a lungul acesteia este mai mare și cu cât dispersia de-a lungul unei linii este mai mare, cu atât informațiile pe care le are. Pentru a pune toate acestea pur și simplu, gândiți-vă doar la componentele principale ca la axe noi care oferă cel mai bun unghi pentru a vedea și evalua datele, astfel încât diferențele dintre observații să fie mai bine vizibile.fiți la curent cu cele mai recente tendințe tehnologice Înscrieți-vă gratuit pentru a obține mai multe date științifice ca aceasta.,
Cum APC Construiește Componente Principale
Ca să existe cât mai multe componente principale ca acolo sunt variabile în date, componente principale sunt construite în așa fel încât prima componentă principală conturi pentru cât mai mare variație în setul de date. De exemplu, să presupunem că graficul scatter al setului nostru de date este așa cum se arată mai jos, putem ghici prima componentă principală ?, Da, este aproximativ linia care se potrivește cu semnele purpurii, deoarece trece prin origine și este linia în care proiecția punctelor (puncte roșii) este cea mai răspândită. Sau matematic vorbind, este linia care maximizează varianța (media distanțelor pătrate de la punctele proiectate (puncte roșii) la origine).
Cea de-a doua componentă principală este calculat în același mod, cu condiția ca acesta este necorelat cu (de exemplu, perpendicular) prima componentă principală și că aceasta reprezintă cea mai mare variație.,aceasta continuă până când un total de componente principale p au fost calculate, egal cu numărul inițial de variabile.
acum că am înțeles ce înțelegem prin componentele principale, să ne întoarcem la vectorii proprii și valorile proprii. Ceea ce trebuie să știți în primul rând despre ele este că ele vin întotdeauna în perechi, astfel încât fiecare vector propriu să aibă o valoare proprie. Și numărul lor este egal cu numărul de dimensiuni ale datelor. De exemplu, pentru un set de date 3-dimensional, există 3 variabile, prin urmare, există 3 vectori proprii cu 3 valori proprii corespunzătoare.,
fără alte detalii, vectorii proprii și valorile proprii sunt cei care se află în spatele tuturor magiei explicate mai sus, deoarece vectorii proprii ai matricei covarianței sunt de fapt direcțiile axelor unde există cea mai mare varianță(majoritatea informațiilor) și pe care le numim Componente principale. Și valorile proprii sunt pur și simplu coeficienții atașați vectorilor proprii, care dau cantitatea de variație transportată în fiecare componentă principală.
prin clasarea vectorilor proprii în ordinea valorilor lor proprii, de la cea mai mare la cea mai mică, obțineți componentele principale în ordinea semnificației.,
Exemplu:
să presupunem că setul nostru de date este de 2-dimensional cu 2 variabile x,y și că vectorii proprii și valorile proprii ale matricei de covarianță sunt după cum urmează:
Dacă suntem pe locul valorilor în ordine descrescătoare, avem λ1>λ2, ceea ce înseamnă că vector propriu care corespunde cu prima componentă principală (PC1) este v1 și una care corespunde cu cea de-a doua componentă (PC2) isv2.,
după ce componentele principale, pentru a calcula procentul de varianță (informații) reprezentat de fiecare componentă, împărțim valoarea proprie a fiecărei componente la suma valorilor proprii. Dacă aplicăm acest lucru pe exemplul de mai sus, constatăm că PC1 și PC2 poartă, respectiv, 96% și 4% din variația datelor.
Pasul 4: vector de caracteristici
așa cum am văzut în pasul anterior, calculând vectorii proprii și ordonându-i după valorile proprii în ordine descrescătoare, ne permit să găsim componentele principale în ordinea semnificației., În acest pas, ceea ce facem noi este, de a alege dacă să păstreze toate aceste componente sau aruncați cei de mai mică importanță (de scăzute valori proprii), și formează cu cele rămase o matrice de vectori pe care o numim Funcție vectorială.deci, vectorul de caracteristici este pur și simplu o matrice care are ca coloane vectorii proprii ai componentelor pe care decidem să le păstrăm. Acest lucru face ca acesta să fie primul pas către reducerea dimensionalității, deoarece dacă alegem să păstrăm doar vectorii p (componente)din n, setul de date final va avea doar dimensiunile P.,
Exemplu:
Continuând cu exemplul de la pasul anterior, putem forma o caracteristică vector cu ambele vectorii proprii v1 și v2:
Sau aruncați vector propriu v2, care este una de mai mică importanță, și formează o caracteristică vector cu v1 numai:
Aruncarea vector propriu v2 va reduce dimensiunile de 1, și, în consecință, va duce la o pierdere de informații în final de set de date., Dar, având în vedere că v2 transporta doar 4% din informații, pierderea nu va fi, prin urmare, importantă și vom avea în continuare 96% din informațiile care sunt transportate de v1.deci ,așa cum am văzut în exemplu, depinde de dvs. să alegeți dacă să păstrați toate componentele sau să le aruncați pe cele cu o semnificație mai mică, în funcție de ceea ce căutați. Pentru că dacă doriți doar să descrieți datele dvs. în termeni de variabile noi (componente principale) care nu sunt corelate fără a căuta să reduceți dimensionalitatea, nu este nevoie să lăsați componente mai puțin semnificative.,
Ultimul Pas: Reformare Datele de-a Lungul Componente Principale Axe
În etapele anterioare, în afară de standardizare, nu face orice modificări privind datele, trebuie doar să selectați componentele principale și forma caracteristică vector, dar setul de date de intrare rămâne întotdeauna în termeni de original axe (am.e, în termeni de variabile inițiale).,
în această etapă, care este ultima, scopul este de a utiliza vectorul de caracteristici format folosind vectorii proprii ai matricei de covarianță, pentru a reorienta datele de la axele originale la cele reprezentate de componentele principale (de unde și numele analiza componentelor principale). Acest lucru se poate face prin înmulțirea transpunerii setului original de date cu transpunerea vectorului de caracteristici.
* * *
Zakaria Jaadi este o știință de date și de învățare mașină inginer. Check out mai mult din conținutul său pe teme de știință de date pe mediu.
Leave a Reply