Ü13: PCA - Kovarianz - Matrix?

Horschie
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 132
Registriert: 10. Nov 2005 17:51
Wohnort: Heppenheim
Kontaktdaten:

Ü13: PCA - Kovarianz - Matrix?

Beitrag von Horschie »

Hallo,

wollte mal fragen wie das war:

1. Vektoren nebeneinander schreiben (also ne 2Spalten, 4 Zeilnen Matrix)
2. transponieren
3. A*A^T berechnen?

Richtig so?


Danke
Christoph

Benutzeravatar
oren78
BSc Spammer
BSc Spammer
Beiträge: 1373
Registriert: 17. Nov 2006 17:47
Wohnort: Darmstadt

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von oren78 »

du meinst jetzt die Covariance also C matrix ??

schau dir die folie an ! :-)

übrigens, es gibt irgendwie kein drumherum um anders die eigenwerte zu bekommen...man muss C irgendwie immer verwenden, aber das geht so wie ich's verstanden habe statt C = A*A(transponiert) auch anderesum: A(transponiert)*A wo A = 1/sqrt(m) * phi(k)
"Unter allen menschlichen Entdeckungen sollte die Entdeckung der Fehler die wichtigste sein.", Stanisław Jerzy Lec

Horschie
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 132
Registriert: 10. Nov 2005 17:51
Wohnort: Heppenheim
Kontaktdaten:

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von Horschie »

Folie hab ich mir angeschaut. Wenn ichs kapiert hätt würd ich net so blöd fragen ;)

Benutzeravatar
oren78
BSc Spammer
BSc Spammer
Beiträge: 1373
Registriert: 17. Nov 2006 17:47
Wohnort: Darmstadt

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von oren78 »

Horschie hat geschrieben:Folie hab ich mir angeschaut. Wenn ichs kapiert hätt würd ich net so blöd fragen ;)
ok sorry :-)

also geht es dir um die reine formel für die C matrix oder den algebrischentrick um die eigenwerte von C zu berechnen?
"Unter allen menschlichen Entdeckungen sollte die Entdeckung der Fehler die wichtigste sein.", Stanisław Jerzy Lec

Matthias Altmann
Mausschubser
Mausschubser
Beiträge: 88
Registriert: 8. Feb 2007 20:49

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von Matthias Altmann »

Jep, aber du hast noch die 1/M vergessen

1. B= Vektoren nebeneinander schreiben (also ne 2Spalten, 4 Zeilnen Matrix)
2. transponieren
3. 1/M*(B*B^T) berechnen

So läufts

oder
\(A=\frac{1}{\sqrt{M}}B\)
und dann A*A^T

Kannst natürlich auch erst die Vektoren miteinander multiplizieren usw und dann addieren, aber ich finds so auch einfacher

Horschie
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 132
Registriert: 10. Nov 2005 17:51
Wohnort: Heppenheim
Kontaktdaten:

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von Horschie »

ok, also dann mal das Beispiel aus der Übung:


\(B = \left[ \begin {array}{cc} 1&3\\\noalign{\medskip}3&1
\\\noalign{\medskip}1&5\\\noalign{\medskip}3&3\end {array} \right]\)


\(B^T = \left[ \begin {array}{cccc} 1&3&1&3\\\noalign{\medskip}3&1&5&3
\end {array} \right]\)


\(B * B^T = \left[ \begin {array}{cccc} 10&6&16&12\\\noalign{\medskip}6&10&8&12
\\\noalign{\medskip}16&8&26&18\\\noalign{\medskip}12&12&18&18
\end {array} \right]\)


M = 2 // Wenn ich das richtig verstanden habe, ist das die Zahl der Vektoren die gegeben sind, oder?

Dann ist die Kovarianz-Matrix:

\(\left[ \begin {array}{cccc} 5&3&8&6\\\noalign{\medskip}3&5&4&6
\\\noalign{\medskip}8&4&13&9\\\noalign{\medskip}6&6&9&9\end {array}
\right]\)



Naja...man aknns erkennen :)

Edoat
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 242
Registriert: 26. Feb 2007 15:10

Re: Ü13: PCA - Kovarianz - Matrix?

Beitrag von Edoat »

Muss man nicht noch den Durchschnittsvektor abziehen, bevor man die Vektoren in die Matrix schreibt?

Antworten

Zurück zu „Archiv“