On m'a posé cette question dans une interview.
Disons que nous avons une matrice de corrélation de la forme
On m'a demandé de trouver la valeur du gamma, compte tenu de cette matrice de corrélation.
Je pensais que je pouvais faire quelque chose avec les valeurs propres, car elles devraient toutes être supérieures ou égales à 0. (La matrice devrait être semi-définie positive) - mais je ne pense pas que cette approche donnera la réponse. Il me manque un truc.
Pourriez-vous s'il vous plaît fournir un indice pour résoudre le même problème?
pearson-r
correlation-matrix
novice
la source
la source
Réponses:
Nous savons déjà que est borné entre La matrice de corrélation doit être semi-définie positive et donc ses principaux mineurs doivent être non négatifs[ - 1 , 1 ]γ [−1,1]
Ainsi,
la source
Voici une solution plus simple (et peut-être plus intuitive):
Considérez la covariance comme un produit intérieur sur un espace vectoriel abstrait . Ensuite, les entrées dans la matrice de corrélation sont pour les vecteurs , , , où la parenthèse angulaire désigne l' angle entre et .v 1 v 2 v 3 ⟨ v i , v j ⟩ v i v jcos⟨vi,vj⟩ v1 v2 v3 ⟨vi,vj⟩ vi vj
Il n'est pas difficile de visualiser que est délimité par. La borne sur son cosinus ( ) est donc . La trigonométrie de base donne alors .| ⟨ V 1 , v 2 ⟩ ± ⟨ v 1 , v 3 ⟩ | gamma cos [ ⟨ v 1 , v 2 ⟩ ± ⟨ v 1 , v 3 ⟩ ] la y ∈ [ 0,6 x 0,8 - 0,6 x 0,8 , 0,6 x 0,8 + 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: Notez que le dans la dernière ligne est vraiment - - la deuxième apparition de 0,6 et 0,8 se produit par coïncidence grâce à .cos de v 1 , v 2 ⟩ cos ⟨ v 1 , v 3 ⟩ ∓ sin ⟨ v 1 , v 3 ⟩ sin ⟨ v 1 , v 20,6 × 0,8 ∓ 0,6 × 0,8 0,6 2 + 0,8 2 = 1cos⟨ v1, v2⟩ Cos⟨ v1, v3⟩ ∓ péché⟨ v1, v3⟩ Péché⟨ v1, v2⟩ 0,62+ 0,82= 1
la source
Voici ce que je voulais dire dans mon commentaire initial à la réponse et ce que je perçois @yangle peut parler (bien que je n'ai pas suivi / vérifié leur calcul).
"La matrice doit être semi-définie positive" implique que les vecteurs variables sont un groupe dans l'espace euclidien. Le cas de la matrice de corrélation est plus facile que la matrice de covariance car les trois longueurs de vecteur sont fixées à 1. Imaginez 3 vecteurs unitaires XYZ et rappelez-vous que est le cosinus de l'angle . Donc, , et . Quelles pourraient être les limites de ? Cette corrélation peut prendre n'importe quelle valeur définie par Z circonscrivant à Y (en conservant l'angle ):cos α = r x y = 0,6 cos β = r y z = 0,8 cos γ = r x z r y z = 0,8r cosα = rx y= 0,6 cosβ= ryz= 0,8 cosγ= rx z ryz= 0,8
Pendant qu'il tourne, deux positions sont remarquables comme ultime par rapport à X, les deux le sont lorsque Z tombe dans le plan XY. L'un est entre X et Y, et l'autre est du côté opposé de Y. Ceux-ci sont représentés par des vecteurs bleu et rouge. À ces deux positions exactement la configuration XYZ (matrice de corrélation) est singulière. Et ce sont l'angle minimal et maximal (d'où la corrélation) Z peut atteindre wrt X.
En choisissant la formule trigonométrique pour calculer la somme ou la différence des angles sur un plan, nous avons:
Cette vue géométrique n'est qu'un autre regard (et un cas spécifique et plus simple en 3D) sur ce qu'exprime @rightskewed en termes algébriques (mineurs, etc.).
la source
Jouer avec les mineurs principaux peut convenir à des problèmes de 3 par 3 ou peut-être de 4 par 4, mais il manque de gaz et de stabilité numérique dans des dimensions plus élevées.
Pour un seul problème de paramètre "libre" tel que celui-ci, il est facile de voir que l'ensemble de toutes les valeurs constituant la matrice psd sera un seul intervalle. Par conséquent, il suffit de trouver ces valeurs minimales et maximales. Cela peut facilement être accompli en résolvant numériquement une paire de problèmes de programmation semi-définie linéaire (SDP):
Par exemple, ces problèmes peuvent être formulés et résolus numériquement en utilisant YALMIP sous MATLAB.
Rapide, facile et fiable.
BTW, si l'intervieweur de smarty pants posant la question ne sait pas que la programmation semi-définie, qui est bien développée et dispose d'optimiseurs numériques sophistiqués et faciles à utiliser pour résoudre de manière fiable des problèmes pratiques, peut être utilisée pour résoudre ce problème, et bien d'autres encore variantes difficiles, dites-lui que ce n'est plus 1870 et qu'il est temps de profiter des développements informatiques modernes.
la source
Considérons l'ensemble convexe suivant
La limite de l'elliptope est une surface cubique définie par
Ainsi, l'intersection de l'elliptope avec les deux plans est le segment de ligne paramétré par
la source
Chaque matrice semi-définie positive est une matrice de corrélation / covariance (et vice versa).
la source