opgaver:Uge5

(Difference between revisions)
Jump to: navigation, search
Line 25: Line 25:
 
=== Spørgsmål 1 ===
 
=== Spørgsmål 1 ===
 
Start med at indlæse datafilen, og plot så populationen i forhold til landenes størrelse.
 
Start med at indlæse datafilen, og plot så populationen i forhold til landenes størrelse.
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 +
{{hidden end}}
  
 
=== Spørgsmål 2 ===
 
=== Spørgsmål 2 ===
Beregn den linære korrelation, manuelt. Er de to variable korrelerede?   
+
Beregn den linære korrelation manuelt. Er de to variable korrelerede?   
Hint: Beregn først kovarians matricen (ligning 1 i [[Media:multivariatstatistik.pdf|multivariatstatistik.pdf]] dokumentet).
+
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
Beregn først kovarians matricen (ligning 1 i [[Media:multivariatstatistik.pdf|multivariatstatistik.pdf]] dokumentet).
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
 
=== Spørgsmål 3 ===
 
=== Spørgsmål 3 ===
Beregn kovariansmatricen og korrelationsmatricen med MATLAB's indbyggedefunktioner, og sammenlign resultatet med dine egne beregninger.
+
Beregn kovariansmatricen og korrelationsmatricen med MATLAB's indbyggede funktioner, og sammenlign resultatet med dine egne beregninger.
 +
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
 
=== Spørgsmål 4 ===
 
=== Spørgsmål 4 ===
Tag logaritmen af begge værdier, og plot resultatet igen. Diskuter forskellen, er korrelationen tydligere nu? Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?
+
Tag logaritmen af begge værdier, og plot resultatet igen. Diskutér forskellen - er korrelationen tydeligere nu? Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
 
=== Spørgsmål 5 ===
 
=== Spørgsmål 5 ===
 
Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?
 
Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 +
{{hidden end}}
  
 
=== Spørgsmål 6 ===
 
=== Spørgsmål 6 ===
Lav et lineært fit af resultatet i spørgsmål 4. Hvad er Chi^2 for fittet, beskriver en lineær relation forholdet?
+
Lav et lineært fit af resultatet i spørgsmål 4. Hvad er $\chi^2$ for fittet? Beskriver en lineær relation forholdet?
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
  
Line 49: Line 72:
  
 
=== Spørgsmål 1 ===
 
=== Spørgsmål 1 ===
Indlæs datasættet og beregn korrelationerne mellem de to variable. Er variablerne korrelerede?
+
Indlæs datasættet og beregn korrelationerne mellem de to variable. Er variablene korrelerede?
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
 
=== Spørgsmål 2 ===
 
=== Spørgsmål 2 ===
 
Lav et scatter plot af de to variable. Ved visuel inspektion, forklar hvorfor der ikke var en korrelation mellem de to akser i beregningen.
 
Lav et scatter plot af de to variable. Ved visuel inspektion, forklar hvorfor der ikke var en korrelation mellem de to akser i beregningen.
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 +
{{hidden end}}
  
 
=== Spørgsmål 3 ===
 
=== Spørgsmål 3 ===
Line 61: Line 90:
 
:<code>y = - 5 * (x.^2 - 1/2).^2 + unifrnd(-1, 1, [1 n])/3;</code>
 
:<code>y = - 5 * (x.^2 - 1/2).^2 + unifrnd(-1, 1, [1 n])/3;</code>
  
Der er tydeligvis en afhængighed mellem x og y aksen. I hvilke tilfælde vil en lineær korrelation være et acceptabelt mål for korrelationen mellem to værdier?
+
Der er tydeligvis en afhængighed mellem $x$- og $y$-aksen. I hvilke tilfælde vil en lineær korrelation være et acceptabelt mål for korrelationen mellem to værdier?
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
  
Line 70: Line 102:
  
 
=== Spørgsmål 1 ===
 
=== Spørgsmål 1 ===
Indlæs datasættet. De fire variable er hhv. acceleration langs x, y og z akserne samt tid i sekunder. Plot de tre accelerationskomponenter som funktion af tiden.
+
Indlæs datasættet. De fire variable er hhv. acceleration langs $x$-, $y$- og $z$-akserne samt tid i sekunder. Plot de tre accelerationskomponenter som funktion af tiden.
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 
 +
{{hidden end}}
  
 
=== Spørgsmål 2 ===
 
=== Spørgsmål 2 ===
Find de dominerede komponenter, ved at benytte PCA metoden beskrevet afsnit 2 i [[Media:multivariatstatistik.pdf|multivariatstatistik.pdf]] dokumentet.
+
Find de dominerende komponenter, ved at benytte PCA metoden beskrevet afsnit 2 i [[Media:multivariatstatistik.pdf|multivariatstatistik.pdf]] dokumentet.
  
Transponér input matricen sådan at den er M x N, hvor M svarer til antallet af parametre og N antallet af målinger.
+
Transponér input matricen sådan at den er $M \times N$, hvor $M$ svarer til antallet af parametre og $N$ antallet af målinger. Centrér derefter dataen ved først at beregne middelværdien for de fire parametre, og fratræk denne de enkelte komponenter.
 +
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
:<code>data_center = data - repmat(middelværdierne, 1, antallet_af_målinger)</code>
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
  
 +
{{hidden end}}
  
Centrér dataen ved først at beregne middelværdien for de fire parametre, og fratræk denne de enkelte komponenter.  
+
Beregn kovariansmatricen af den centrerede data, og beregn så egenværdierne og egenvektorerne af den, med den indbyggede funktion i MATLAB. Gem diagonalen af egenværdimatricen i en vektor ($M \times 1$).
Hint: data_center = data - repmat(middelværdierne, 1, antallet_af_målinger).
+
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
  
 +
{{hidden end}}
  
Beregn kovariansmatricen af den centrerede data.
+
Sorter egenværdierne efter faldende orden, og gem de indekser som sorteringsmetoden retunerer i en vektor.  
 +
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
:<code>[smidvæk indices] = sort(egenværdier, 'descend')</code>
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
  
 +
{{hidden end}}
  
Beregn egenværdierne og egenvektorerne af kovariansmatricen, med den indbyggede funktion i MATLAB.
+
Sorter egenvektorerne og egenværdierne med indeks-vektoren.  
 +
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
:<code>egenvec = egenvec(:,indices); egenværdier = egenværdier(indices)</code>
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
  
 +
{{hidden end}}
  
Gem diagonalen af egenværdimatricen i en vektor (M x 1).
+
Projektér den oprindelige data langs den nye basis (egenvektor matricen).  
 +
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
:<code>data_pca = egenvec' * data</code>
 +
{{hidden end}}
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
  
 
+
{{hidden end}}
Sorter egenværdierne efter faldende orden, og gem de indexer som sorteringsmetoden retunerer i en vektor.
+
Hint: [smidvæk indices] = sort(egenværdier, 'descend')
+
 
+
 
+
Sorter egenvektorerne og egenværdierne med index-vektoren.
+
Hint: egenvec = egenvec(:,indices); egenværdier = egenværdier(indices)
+
 
+
 
+
Projekter den oprindelige data langs den nye basis (egenvektor matricen).
+
Hint: data_pca = egenvec' * data
+
  
 
=== Spørgsmål 3 ===
 
=== Spørgsmål 3 ===
 
Plot hvert komponent af det transformerede datasæt som funktion af tiden. Ved at sammenligne værdierne fra egenvektorne med de fire plots, forklar hvad de enkelte komponenter beskriver.
 
Plot hvert komponent af det transformerede datasæt som funktion af tiden. Ved at sammenligne værdierne fra egenvektorne med de fire plots, forklar hvad de enkelte komponenter beskriver.
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 +
{{hidden end}}
  
 
=== Spørgsmål 4 ===
 
=== Spørgsmål 4 ===
(Frivillig) Benyt MATLABs indbyggede pca routiner
+
(Frivillig) Benyt MATLABs indbyggede PCA rutiner i stedet:
[C, latent, explained] = pcacov(cov(data'))
+
 
biplot(egenvec(:,1:2), 'scores', signals(1:2,:)', 'varlabels',datalabels)
+
:<code>[C, latent, explained] = pcacov(cov(data'))</code>
 +
:<code>biplot(egenvec(:,1:2), 'scores', signals(1:2,:)', 'varlabels',datalabels)</code>
  
 
=== Spørgsmål 5 ===
 
=== Spørgsmål 5 ===
(Frivillig) PCA teknikken afhænger af lineære relationer mellem de forskellige variable, der findes en anden metode til ikke-lineære data, der benytte det såkaldte "kernel-kneb". I zip-filen medfølger en funktion kaldet "kernelpca_tutorial.m", gentag opgave 3.5 for resultatet fra funktionen.  
+
(Frivillig) PCA teknikken afhænger af lineære relationer mellem de forskellige variable. Der findes en anden metode til ikke-lineære data, der benytter det såkaldte "kernel-kneb". I zip-filen medfølger en funktion kaldet "kernelpca_tutorial.m", gentag spørgsmål 4 for resultatet fra funktionen.  
  
 
Mere info: http://en.wikipedia.org/wiki/Kernel_principal_component_analysis
 
Mere info: http://en.wikipedia.org/wiki/Kernel_principal_component_analysis
 +
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}
 +
 +
{{hidden end}}

Revision as of 12:13, 7 March 2012

I denne uge skal I arbejde med lidt mere avanceret statisk, som en forsmag på hvad I kan lære i mere avancerede statistik-kurser, som f.eks. Anvendt Statistik, der afholdes i blok 1.

Som en forberedelse på at kunne lave disse opgaver, skal I læse et lille dokument skrevet af Morten Dam Jørgensen, der desuden også lavede nedenstående opgaver.

Det kan også hjælpe at læse nogle Wikipedia-sider om emnerne, som f.eks.


Contents

Opgave 1 - Lineær korrelation

Disse øvelser viser hvordan lineære korrelationer kan beregnes og visualiseres, metoder som er anvendelige på det meste data med flere parametre.

  • Du skal starte med at hente datasættet lande.txt, der stammer fra [1].

Spørgsmål 1

Start med at indlæse datafilen, og plot så populationen i forhold til landenes størrelse.

Spørgsmål 2

Beregn den linære korrelation manuelt. Er de to variable korrelerede?

Spørgsmål 3

Beregn kovariansmatricen og korrelationsmatricen med MATLAB's indbyggede funktioner, og sammenlign resultatet med dine egne beregninger.

Spørgsmål 4

Tag logaritmen af begge værdier, og plot resultatet igen. Diskutér forskellen - er korrelationen tydeligere nu? Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?

Spørgsmål 5

Beregn korrelationen for de logaritmiske værdier. Hvorfor er korrelationen anderledes end i spørgsmål 2?

Spørgsmål 6

Lav et lineært fit af resultatet i spørgsmål 4. Hvad er $\chi^2$ for fittet? Beskriver en lineær relation forholdet?


Opgave 2 - Flere korrelationer

Disse øvelser viser mere med korrelationer.

Spørgsmål 1

Indlæs datasættet og beregn korrelationerne mellem de to variable. Er variablene korrelerede?

Spørgsmål 2

Lav et scatter plot af de to variable. Ved visuel inspektion, forklar hvorfor der ikke var en korrelation mellem de to akser i beregningen.

Spørgsmål 3

Datasættet er genereret med følgende udtryk:

n = 2000;
x = linspace(-1, 1, n);
y = - 5 * (x.^2 - 1/2).^2 + unifrnd(-1, 1, [1 n])/3;

Der er tydeligvis en afhængighed mellem $x$- og $y$-aksen. I hvilke tilfælde vil en lineær korrelation være et acceptabelt mål for korrelationen mellem to værdier?


Opgave 3 -

Disse øvelser handler om radial acceleration (med Principal Component Analysis).

  • Du skal starte med at hente datasættet ipod_4.txt, der er et datasæt taget med app'en iSeismometer på en Ipod Touch som del af et eksperiment på kurset i 2011.

Spørgsmål 1

Indlæs datasættet. De fire variable er hhv. acceleration langs $x$-, $y$- og $z$-akserne samt tid i sekunder. Plot de tre accelerationskomponenter som funktion af tiden.

Spørgsmål 2

Find de dominerende komponenter, ved at benytte PCA metoden beskrevet afsnit 2 i multivariatstatistik.pdf dokumentet.

Transponér input matricen sådan at den er $M \times N$, hvor $M$ svarer til antallet af parametre og $N$ antallet af målinger. Centrér derefter dataen ved først at beregne middelværdien for de fire parametre, og fratræk denne de enkelte komponenter.

Beregn kovariansmatricen af den centrerede data, og beregn så egenværdierne og egenvektorerne af den, med den indbyggede funktion i MATLAB. Gem diagonalen af egenværdimatricen i en vektor ($M \times 1$).

Sorter egenværdierne efter faldende orden, og gem de indekser som sorteringsmetoden retunerer i en vektor.

Sorter egenvektorerne og egenværdierne med indeks-vektoren.

Projektér den oprindelige data langs den nye basis (egenvektor matricen).

Spørgsmål 3

Plot hvert komponent af det transformerede datasæt som funktion af tiden. Ved at sammenligne værdierne fra egenvektorne med de fire plots, forklar hvad de enkelte komponenter beskriver.

Spørgsmål 4

(Frivillig) Benyt MATLABs indbyggede PCA rutiner i stedet:

[C, latent, explained] = pcacov(cov(data'))
biplot(egenvec(:,1:2), 'scores', signals(1:2,:)', 'varlabels',datalabels)

Spørgsmål 5

(Frivillig) PCA teknikken afhænger af lineære relationer mellem de forskellige variable. Der findes en anden metode til ikke-lineære data, der benytter det såkaldte "kernel-kneb". I zip-filen medfølger en funktion kaldet "kernelpca_tutorial.m", gentag spørgsmål 4 for resultatet fra funktionen.

Mere info: http://en.wikipedia.org/wiki/Kernel_principal_component_analysis



Personal tools
Namespaces
Variants
Actions
Navigation
Opgaver
Andet
Toolbox
Commercial