Diese Frage wurde mir in einem Interview gestellt.
Nehmen wir an, wir haben eine Korrelationsmatrix der Form
Angesichts dieser Korrelationsmatrix wurde ich gebeten, den Wert von Gamma zu ermitteln.
Ich dachte, ich könnte etwas mit den Eigenwerten anfangen, da sie alle größer oder gleich 0 sein sollten. (Matrix sollte positiv semidefinit sein) - aber ich glaube nicht, dass dieser Ansatz die Antwort liefert. Mir fehlt ein Trick.
Könnten Sie uns bitte einen Lösungshinweis geben?
pearson-r
correlation-matrix
Anfänger
quelle
quelle
Antworten:
Wir wissen bereits, dass zwischen Die Korrelationsmatrix sollte positiv und semidefinit sein, und daher sollten ihre Hauptminderheiten nicht negativ seinγ [−1,1]
Somit ist
quelle
Hier ist eine einfachere (und vielleicht intuitivere) Lösung:
Stellen Sie sich die Kovarianz als ein inneres Produkt über einem abstrakten Vektorraum vor . Dann werden die Einträge in der Korrelationsmatrix für die Vektoren v 1 , v 2 , v 3 , wobei die Eckwinkel ⟨ v i , v j ⟩ den bezeichneten Winkel zwischen v i und v j .cos⟨vi,vj⟩ v1 v2 v3 ⟨vi,vj⟩ vi vj
Es ist nicht schwer zu visualisieren , dass begrenzt ist durch | ≤ v 1 , v 2 ≤ ± ≤ v 1 , v 3 ≤ | . Die gebundene auf seiner Cosinus ( γ ) ist also cos [ ⟨ v 1 , v 2 ⟩ ± ⟨ v 1 , v 3 ⟩ ] . Grundlegende Trigonometrie ergibt dann γ ∈ [ 0,6 ×⟨v2,v3⟩ | ⟨ v1, v2≤ ± ≤ v1, v3⟩ | γ cos[ ⟨ V1, v2≤ ± ≤ v1, v3⟩ ] .γ∈ [ 0,6 × 0,8 - 0,6 × 0,8 , 0,6 × 0,8 + 0,6 × 0,8 ] = [ 0 , 0,96 ]
Edit: Beachten Sie, dass die in der letzten Zeile ist wirklich cos ⟨ v 1 , v 2 ⟩ cos ⟨ v 1 , v 3 ⟩ ∓ sin ⟨ v 1 , v 3 ⟩ sin ⟨ v 1 , v 2 ⟩ - das zweite Auftreten von 0,6 und 0,8 erfolgt durch Zufall dank 0,6 2 + 0,8 2 = 10,6 × 0,8 ≤ 0,6 × 0,8 cos⟨ v1, v2⟩ Cos⟨ v1, v3⟩ & Mnplus; sin⟨ v1, v3⟩ Sünde⟨ v1, v2⟩ 0,62+ 0,82= 1 .
quelle
Hier ist, was ich in meinem ersten Kommentar zur Antwort gemeint habe und worüber ich @yangle als sprechend empfinde (obwohl ich deren Berechnung nicht verfolgt / überprüft habe).
"Matrix sollte positiv semidefinit sein" impliziert, dass die variablen Vektoren eine Menge im euklidischen Raum sind. Der Fall der Korrelationsmatrix ist einfacher als die Kovarianzmatrix, da die drei Vektorlängen auf 1 festgelegt sind. Stellen Sie sich 3 Einheitsvektoren XYZ vor und denken Sie daran, dass der Kosinus des Winkels ist . So cos α = r x y = 0,6 , und cos β = r y z = 0,8 . Was könnten die Grenzen für cos γ = r x z sein ?r cosα=rxy=0.6 cosβ=ryz=0.8 cosγ=rxz ? Diese Korrelation kann jeden Wert annehmen, der durch Z definiert ist, das um Y umschreibt (wobei der Winkel beibehalten wird):ryz=0.8
Während des Drehens sind zwei Positionen als endgültig für X bemerkenswert. Beide sind, wenn Z in die Ebene XY fällt. Einer liegt zwischen X und Y und der andere befindet sich auf der gegenüberliegenden Seite von Y. Diese sind durch blaue und rote Vektoren dargestellt. An diesen beiden Positionen ist genau die Konfiguration XYZ (Korrelationsmatrix) singulär. Und dies sind der minimale und maximale Winkel (daher Korrelation), den Z für X erreichen kann.
Wenn Sie die trigonometrische Formel auswählen, um die Summe oder die Winkeldifferenz in einer Ebene zu berechnen, haben Sie folgende Möglichkeiten:
als Grenzen.cosγ=rxyryz∓(1−r2xy)(1−r2yz)−−−−−−−−−−−−−−√=[0,0.96]
Diese geometrische Ansicht ist nur eine andere (und in 3D eine spezielle und einfachere) Betrachtung dessen, was @rightskewed in algebraischen Begriffen ausdrückt (Minderjährige usw.).
quelle
Das Herumspielen mit Hauptminderjährigen mag bei 3 mal 3 oder vielleicht 4 mal 4 Problemen in Ordnung sein, aber in höheren Dimensionen geht das Benzin und die numerische Stabilität aus.
Für ein einzelnes "freies" Parameterproblem wie dieses ist leicht zu erkennen, dass die Menge aller Werte, die die Matrix psd bilden, ein einzelnes Intervall ist. Daher ist es ausreichend, die minimalen und maximalen Werte zu finden. Dies kann leicht durch numerisches Lösen zweier linearer SemiDefinite Programming (SDP) -Probleme erreicht werden:
Beispielsweise können diese Probleme mit YALMIP unter MATLAB formuliert und numerisch gelöst werden.
Schnell, einfach und zuverlässig.
Übrigens, wenn der Interviewer von Smarty Pants, der die Frage stellt, nicht weiß, dass SemiDefinite Programming, das ausgereifte und einfach zu verwendende numerische Optimierer zum zuverlässigen Lösen praktischer Probleme enthält, zur Lösung dieses Problems verwendet werden kann, und vieles mehr In schwierigen Varianten sagen Sie ihm, dass dies nicht mehr das Jahr 1870 ist und es an der Zeit ist, moderne rechnerische Entwicklungen zu nutzen.
quelle
Betrachten wir die folgende konvexe Menge
Die Grenze des Elliptops ist eine kubische Fläche, definiert durch
Der Schnittpunkt des Elliptops mit den beiden Ebenen ist also das durch parametrisierte Liniensegment
quelle
Jede positive semi-definite Matrix ist eine Korrelations- / Kovarianzmatrix (und umgekehrt).
quelle