Berechnung der Kovarianzmatrix

8

Eingabe: Zufallsvektor X = xi, i = 1..n.
Vektor der Mittelwerte für X = meanxi, i = 1..n. Ausgabe: Kovarianzmatrix Sigma (n * n).
Berechnung:
1) finde alle cov (xi, xj) = 1 / n * (xi-meanxi) * (xj-meanxj), i, j = 1..n
2) Sigma (i, j) = cov (xi, xj), symmetrische Matrix.
Ist dieser Algorithmus korrekt und hat keine Nebenwirkungen?

    
Singularity 22.07.2010, 08:38
quelle

1 Antwort

4

Jede xi sollte ein Vektor (Zufallsvariable) sein mit eigener Varianz und Mittelwert.

Die Kovarianzmatrix ist symmetrisch, Sie müssen also nur die Hälfte davon berechnen (und den Rest kopieren) und die Varianz von xi an der Hauptdiagonale haben.

%Vor%

wo Varianz (var) von xi:

%Vor%

und Kovarianz (cov)

%Vor%

wobei r(xi, xj) Pearson-Produkt-Moment-Korrelationskoeffizient

ist

BEARBEITEN
oder, weil cov (X, Y) = E (X * Y) - E (X) * E (Y)

%Vor%

wobei .* Matlab-ähnliche elementweise Multiplikation ist.
Also, wenn x = [x1, x2] , y = [y1, y2] dann z = x.*y = [x1*y1, x2*y2] ;

    
Gacek 22.07.2010 09:23
quelle