Les posteurs les plus actifs de la semaine
pvdv
 
Ayana
 
c@ssoulet
 
droopy
 
Eric Wajnberg
 
crrao
 
zezima
 
valval35
 
Mr. Shidokaz
 
niaboc
 


Intérieur d'une ellipse de confiance d'une loi gaussienne

Voir le sujet précédent Voir le sujet suivant Aller en bas

Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par clemm le Mer 12 Avr 2017 - 12:05

Bonjour,

Voici mon problème : étant donné un point (x,y) du plan défini par lR², on cherche à savoir si ce point appartient à l'ellipse de confiance à 95% d'une gaussienne bi-dimensionnelle (X1,Y1) de moyenne mu (vecteur de taille 2) et de matrice de covariance cov (de taille 2x2).

En me documentant un peu sur les ellipses j'ai fini par trouver cette équation :

(source "Loi Normale à deux dimensions" du site cortial.net, je ne peux pas poster de lien externe)
avec

Et j'ai remplacé l'égalité par une inégalité, avec k = 2.4477 pour un intervalle de confiance à 95%. Seulement, après avoir effectué un grand nombre de tests sur matlab, en définissant une grille de points qui s'affichent lorsqu'ils sont détectés comme étant dans l'ellipse, j'en suis arrivé à la conclusion que ma formule ne fonctionnait pas dans le cas de données très corrélées (ici 3 applications simultanées de ma fonction, l'erreur est flagrante sur l'ellipse verte) :



Le tracé des ellipses est indépendant de ma fonction et je suis certain qu'il est correct. Je ne pense pas que le problème vienne du choix de k puisqu'en l'absence de corrélations, les points coïncident parfaitement avec l'intérieur de l'ellipse.

Pensez-vous que mon erreur provient d'une mauvaise utilisation ou interprétation de cette formule, et si oui, à quel niveau ?

Merci

clemm

Nombre de messages : 4
Date d'inscription : 07/04/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par Eric Wajnberg le Mer 12 Avr 2017 - 13:18

Le programme que je me suis écrit pour faire ceci passe par la diagonalisation de la matrice de variance covariance et ses vecteurs propres et valeurs propres. Je ne suis donc pas sûr de pouvoir vous aider. Cependant, pouvez-vous nous expliquer d'où vient cette valeur de k = 2.4477 ? Je soupconne que le problème vienne de là (peut-être).

Un autre point d'interrogation pour moi : êtes vous sûr du signe "-" dans le troisième terme à gauche du signe égale ? Intuitivement, j'aurais mis un "+". Merci de vérifier.

Eric.
avatar
Eric Wajnberg

Nombre de messages : 506
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par clemm le Mer 12 Avr 2017 - 14:04

Bonjour Eric et merci pour votre réponse rapide,

Pour la valeur de k je me suis référé à l'article suivant : visiondummy.com/2014/04/draw-error-ellipse-representing-covariance-matrix
sur lequel j'ai également récupéré le code qui m'a permis de tracer les ellipses*. Je n'ai pas vérifié cela de manière analytique mais il s'agit de la constante multiplicative (quantile associé à une loi du khi-deux) utilisée pour tracer notre ellipse de confiance à 95%, de la même manière qu'en dimension 1, on prendrait un k = 1.96, quantile d'ordre 2.5 de la loi normale, pour calculer notre intervalle de confiance.

*Ce code passe lui aussi par une exploitation des vecteurs propres et valeurs propres de la matrice pour calculer le rapport des demi-axes ainsi que leurs vecteurs directeurs, mais via cette approche je n'ai pas réussi à aboutir à une bonne paramétrisation à base d'inégalités... Si vous avez trouvé quelque chose, je suis vraiment preneur.

Pensez-vous que le k de ma formule ne correspond pas à la bonne constante multiplicative ? Je ne suis pas un parfait connaisseur des ellipses (d'où ma galère !), mais le fait que la formule fonctionne sur des données non corrélées me pousse à croire que le problème ne vient pas de cette seule constante.

En changeant le signe du 3ème terme du membre de gauche, mes ellipses se retrouvent inversée suivant un axe horizontal, donc le problème ne semble pas être là.

clemm

Nombre de messages : 4
Date d'inscription : 07/04/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par Eric Wajnberg le Jeu 13 Avr 2017 - 5:06

Je viens de regarder ceci avec un peu plus de détail. Je ne vois pas de problème dans votre démarche, a priori. Surtout, je ne vois pas pourquoi l'erreur n'intervient que dans le cas de corrélation. Il y a peut-être juste une erreur (toute bête) dans votre code matlab (?). Désolé de ne pas être plus utile que cela..

Cordialement, Eric.
avatar
Eric Wajnberg

Nombre de messages : 506
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par Eric Wajnberg le Jeu 13 Avr 2017 - 8:09

Je réfléchis encore à ce post. En fait, je ne comprends pas comment la figure donnée est construite.

Ou bien les ellipses sont des intervalles de confiance à 5%. Dans ce cas, c'est l'ellipse verte qui est correcte, car elle contient à vue de nez bien 95 des points. Où bien seuls les points calculés comme étant dans les ellipses sont indiqués et alors le calcul des ellipses est le même à la fois pour les tracer et pour calculer les points qui sont dedans ou pas, et c'est juste une erreur de calcul quelque part.

Je me trompe ?

Eric.
avatar
Eric Wajnberg

Nombre de messages : 506
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par clemm le Jeu 13 Avr 2017 - 8:14

Bonjour, je suis parvenu à mes fins en passant par une résolution matricielle, en reprenant l'article que j'ai posté précédemment. Tout fonctionne désormais Very Happy

Il va de soit que j'ai vérifié mon code des milliers de fois avant de poser ma question, mais on n'est jamais à l'abri d'une erreur bête effectivement...  Embarassed Je prends quand même le risque de le poster ici, au cas où il y aurait des curieux :

Code:
function bool = estDansEllipse2D (sig, mu, cov, x,y)

bool = false;

std1 = sqrt(cov(1,1));
std2 = sqrt(cov(2,2));
r = cov(1,2)/(std1*std2);

Xc = ((x-mu(1))/(std1))*((x-mu(1))/(std1));
Yc = ((y-mu(2))/(std2))*((y-mu(2))/(std2));
XYc = 2*r*(x-mu(1))*(y-mu(2))/(std1*std2);

if Xc+Yc-XYc < sig*sig
    bool = true;
end

end

Cette fonction est ensuite appelée par le programme qui crée la grille de points et trace les figures que j'ai postées.

clemm

Nombre de messages : 4
Date d'inscription : 07/04/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par clemm le Jeu 13 Avr 2017 - 8:21

Eric Wajnberg a écrit:Je réfléchis encore à ce post. En fait, je ne comprends pas comment la figure donnée est construite.

Ou bien les ellipses sont des intervalles de confiance à 5%. Dans ce cas, c'est l'ellipse verte qui est correcte, car elle contient à vue de nez bien 95 des points.

Ce n'est pas le bon raisonnement, les ellipses sont censées coïncider avec les points, et non pas en contenir 95%.
Les points générés ne sont pas issus d'une loi normale, ce sont juste les points d'une grille qui parcourt tout le graphique, et je choisis de les afficher uniquement s'ils respectent l'équation relative à l'ellipse.

Pour résumer : J'ai une ellipse caractérisée par un triplet (mu,cov,k) (k = sig dans mon code), je dispose d'une fonction qui trace cette ellipse, et je veux (voulais) aussi coder une fonction qui détecte si un point est à l'intérieur de cette ellipse.

Donc oui, après avoir lu la deuxième partie de ton post, il s'agit bien de cela Smile

clemm

Nombre de messages : 4
Date d'inscription : 07/04/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Intérieur d'une ellipse de confiance d'une loi gaussienne

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum