Hjem Personlig finansiering Datalogi: Brug af Python til at udføre faktor og hovedkomponentanalyse - dummier

Datalogi: Brug af Python til at udføre faktor og hovedkomponentanalyse - dummier

Indholdsfortegnelse:

Video: Building Dynamic Web Apps with Laravel by Eric Ouyang 2025

Video: Building Dynamic Web Apps with Laravel by Eric Ouyang 2025
Anonim

Datavidenskabsmænd kan bruge Python til at udføre faktor og hovedkomponentanalyse. SVD opererer direkte på de numeriske værdier i data, men du kan også udtrykke data som et forhold mellem variabler. Hver funktion har en vis variation. Du kan beregne variabiliteten som variansmåling omkring gennemsnittet. Jo mere variansen er, desto mere er informationen indeholdt i variablen.

Hvis du også placerer variablen i et sæt, kan du sammenligne variansen af ​​to variabler for at afgøre, om de korrelerer, hvilket er et mål for, hvor stærkt de har tilsvarende værdier.

Kontrollerer alle mulige korrelationer af en variabel med de andre i sættet, kan du opdage, at du kan have to typer af varians:

  • Unik variance: Nogle variationer er unikke for den undersøgte variabel. Det kan ikke knyttes til hvad der sker med nogen anden variabel.

  • Delvist varians: Nogle varians deles med en eller flere andre variabler, hvilket skaber redundans i dataene. Redundans indebærer, at du kan finde de samme oplysninger med lidt forskellige værdier i forskellige funktioner og på tværs af mange observationer.

Selvfølgelig er det næste trin at bestemme årsagen til delt variance. Forsøg på at besvare et sådant spørgsmål samt at bestemme, hvordan man skal håndtere unikke og fælles afvigelser, førte til oprettelsen af ​​faktor og hovedkomponentanalyse.

I betragtning af den psykometriske model

Længe før mange maskine læring algoritmer blev gennemtænkt, forsøgte psykologi i psykologi, der beskæftiger sig med psykologisk måling, at finde en statistisk løsning til effektivt at måle dimensioner i personlighed. Den menneskelige personlighed, som med andre aspekter af mennesker, er ikke direkte målelig. For eksempel er det ikke muligt at måle præcis, hvor meget en person er indadvendt eller intelligent. Spørgeskemaer og psykologiske tests tyder kun på disse værdier.

Psykologer vidste om SVD og forsøgte at anvende det på problemet. Fælles varians tiltrak deres opmærksomhed: Hvis nogle variabler er næsten ens, skulle de have den samme grundårsag, tænkte de. Psykologer skabte

faktoranalyse

for at udføre denne opgave! I stedet for at anvende SVD direkte på data, anvendte de den til en nyoprettet matrix, der sporer den fælles varians, i håb om at kondensere al information og genoprette nye nyttige funktioner kaldet fa c tors . Leder du efter skjulte faktorer En god måde at vise, hvordan man bruger faktoranalyse er at starte med Iris datasættet.

fra sklearn. datasæt importerer load_iris fra sklearn. dekomponering import FactorAnalysis iris = load_iris () X, y = iris. data, iris. målfaktor = FactorAnalysis (n_components = 4, random_state = 101). fit (X)

Efter at have indlæst dataene og har gemt alle de prædiktive funktioner, initialiseres klassen FactorAnalysis med en anmodning om at søge efter fire faktorer. Dataene er så monteret. Du kan undersøge resultaterne ved at observere komponenter_ attributten, som returnerer et array indeholdende målinger af forholdet mellem de nyoprettede faktorer, placeret i rækker og de oprindelige funktioner, der er placeret i kolonner.

Ved krydset mellem hver faktor og funktion indikerer et positivt tal, at der er en positiv andel mellem de to; et negativt tal peger i stedet på, at de afviger, og det ene er modsat det andet.

Du skal teste forskellige værdier af n_components, fordi det ikke er muligt at vide, hvor mange faktorer der findes i dataene. Hvis algoritmen er påkrævet for flere faktorer end eksisterende, vil den generere faktorer med lave værdier i components_ array.

importer pandas som pd print pd. DataFrame (faktor. Komponenter_, kolonner = iris. Feature_names) sepal længde (cm) sepal bredde (cm) kronblade længde (cm) kronblade bredde (cm) 0 0. 707227 -0. 153147 1. 653151 0. 701569 1 0. 114676 0. 159763 -0. 045604 -0. 014052 2 0. 000000 -0. 000000 -0. 000000 -0. 000000 3 -0. 000000 0. 000000 0. 000000 -0. 000000

I testen på Iris datasættet bør fx de resulterende faktorer være højst 2, ikke 4, fordi kun to faktorer har betydelige forbindelser med de oprindelige funktioner. Du kan bruge disse to faktorer som nye variabler i dit projekt, fordi de afspejler en usynlig men vigtig funktion, som de tidligere tilgængelige data kun antydede på.

Brug af komponenter, ikke faktorer

Hvis en SVD kunne anvendes med succes til den fælles varians, kan du undre dig over, hvorfor du ikke kan anvende den på alle variationer. Ved hjælp af en lidt modificeret startmatrix kan alle relationerne i data reduceres og komprimeres på samme måde som til, hvordan SVD gør det.

Resultaterne af denne proces, som svarer meget til SVD, kaldes

hovedkomponentanalyse

(PCA). De nyoprettede funktioner hedder komponenter . I modsætning til faktorer beskrives komponenter ikke som grundårsagen til datastrukturen, men er bare omstrukturerede data, så du kan se dem som en stor, smart summation af udvalgte variabler. For datavidenskabsapplikationer er PCA og SVD ret ens. PCA påvirkes imidlertid ikke af omfanget af de oprindelige egenskaber (fordi det virker på korrelationsforanstaltninger, der alle er bundet mellem -1 og +1 værdier), og PCA fokuserer på at genopbygge forholdet mellem variablerne og således tilbyde forskellige resultater fra SVD. Opnåelse af dimensionalitetsreduktion

Proceduren for at opnå en PCA svarer meget til faktoranalysen.Forskellen er, at du ikke angiver antallet af komponenter, der skal ekstraheres. Du bestemmer senere, hvor mange komponenter der skal holdes, efter at du har kontrolleret attributten explained_variance_ratio_, som giver kvantificering af den oplysende værdi af hver ekstraheret komponent. Følgende eksempel viser, hvordan du udfører denne opgave:

fra sklearn. nedbrydning importere PCA import pandas som pd pca = PCA (). fit (X) print 'Forklaret varians for komponent:% s'% pca. explained_variance_ratio_ print pd. DataFrame (pca. Components_, columns = iris. Feature_names) Forklaret varians for komponent: [0. 92461621 0. 05301557 0. 01718514 0. 00518309] sepal længde (cm) sepal bredde (cm) kronblade længde (cm) kronblade bredde (cm) 0 0. 361590 -0. 082269 0. 856572 0. 358844 1 -0. 656540 -0. 729712 0. 175767 0. 074706 2 0. 580997 -0. 596418 -0. 072524 -0. 549061 3 0. 317255 -0. 324094 -0. 479719 0. 751121

I denne nedbrydning af Iris-datasættet indikerer vektorgruppen tilvejebragt af explained_variance_ratio_ at størstedelen af ​​informationen er koncentreret i den første komponent (92,5 procent). Det er derfor muligt at reducere hele datasættet til kun to komponenter, hvilket giver en reduktion af støj og overflødige oplysninger fra det oprindelige datasæt.

Datalogi: Brug af Python til at udføre faktor og hovedkomponentanalyse - dummier

Valg af editor

Fotografering af fugle Brug af dine digitale spejlreflekskameraer

Fotografering af fugle Brug af dine digitale spejlreflekskameraer

Du kan optage interessante billeder af fugle store og små med din digitale spejlreflekskamera . Du behøver bare lidt tålmodighed og lidt viden om den fugl, du vil fotografere. En fuglefoder er et ideelt sted at fotografere små fugle. Du kan rejse til et område med en sø eller flod eller til ...

Fotografering af byer med dine digitale spejlreflekskameraer

Fotografering af byer med dine digitale spejlreflekskameraer

Om du bor i en søvnig lille by eller en storby, der overfylder menneskeheden kan din digitale spejlreflekskamera fange hjertet og sjælen i din hjemby. Du kan eksperimentere med at tage billeder om natten, når byen er dramatisk eller øde eller om dagen, når beboerne og deres aktiviteter gør byen ...

Fotografering af objekter i bevægelse - dummier

Fotografering af objekter i bevægelse - dummier

Der er et par tankeskoler om fotografering af objekter i bevægelse. Opskriften på en perfekt eksponering kan opnås på mange måder. Du kan vælge en lille blænde (stort f-stopnummer) for at få en stor dybdeskarphed, eller du kan vælge en hurtig lukkerhastighed, hvilket betyder en stor blænde (lille ...

Valg af editor

Hvordan man fortjener mor fra blogging uden at sælge - dummier

Hvordan man fortjener mor fra blogging uden at sælge - dummier

Sælger er et udtryk, der anvendes til kompromittere din integritet, principper eller moral for at vinde penge eller succes. Problemet er, at hvis alle havde de samme principper og definition af integritet, ville der ikke være meget behov for forskellige politiske partier eller religioner. Folk kan anklaget for at sælge ud, hvis de simpelthen gør ting som ...

Hvordan man korrekt bruger nøgleord til din online community - dummies

Hvordan man korrekt bruger nøgleord til din online community - dummies

Når du har en god ide om hvilke typer søgeord der skal bruges i dit online-fællesskab, er det tid til at skrive indholdet, så det ser naturligt ud. For mange mennesker peber søgeord liberalt omkring deres blogindlæg, web artikler, Om sider og andet indhold, som ser dumt og forkert ud. Selvom du bruger nøgleord, er det godt ...

Sådan sættes annoncer på din blog - dummies

Sådan sættes annoncer på din blog - dummies

For at få annoncer på din blogwebsite, de programmer du tilmelde dig normalt give dig en smule kode, som du indsætter i din hjemmeside skabeloner. Nogle programmer har trinvise instruktioner til populære blogsoftwarepakker, men vær opmærksom på at du måske også har brug for at konsultere dokumentation til blogsoftware til hjælp med ...

Valg af editor

Ompirrende Signaler og hvad de betyder i Cricket - Dummies

Ompirrende Signaler og hvad de betyder i Cricket - Dummies

Embedsmændene med ansvar for et cricketpil er kaldet umpires, og de har en lang række signaler til at angive de beslutninger, de træffer i løbet af et spil. Disse er de vigtigste. Højre arm udstrakte. No-bold. Dette signal indikerer, at bowlerens fod har landet over frontlinjen af ​​...

Vælg en Tennis Racquet - Dummies

Vælg en Tennis Racquet - Dummies

Ja, du kan støv af den racquet, du spillede for fem år siden og give det en strålende tilbagevenden til retten - hvis det føles godt i din hånd og det får dine skud hvor (og hvordan) vil du have dem til at gå. Hvis du er på markedet for et nyt våben, vil du dog ...

Skæring og dicing, tennis stil - dummies

Skæring og dicing, tennis stil - dummies

Skive eller backspin, får tennisbolden til at vende tilbage mod effektkilde (dig). Når et stykke skud springer, forbliver bolden lavt, hvilket tvinger din modstander til virkelig at strække for at komme til bolden. Hvis spillere gerne angriber nettet og volley, skar de meget. Skiven kan være en nyttig ...