Solution analytique aux estimations des coefficients de régression linéaire

9

J'essaie de comprendre la notation matricielle et je travaille avec des vecteurs et des matrices.

Pour l'instant, j'aimerais comprendre comment est calculé le vecteur d'estimation des coefficients en régression multiple.β^

L'équation de base semble être

ddβ(yXβ)(yXβ)=0.

Maintenant, comment pourrais-je résoudre un vecteur β ici?

Edit : Attendez, je suis coincé. Je suis ici maintenant et je ne sais pas comment continuer:

ddβ((y1y2yn)(1x11x12x1p1x21x22x2p1xn1xn2xnp)(β0β1βp))((y1y2yn)(1x11x12x1p1x21x22x2p1xn1xn2xnp)(β0β1βp))

ddβi=1n(yi(1xi1xi2xip)(β0β1βp))2

Avec pour tout étant l'ordonnée à l'origine:xi0=1i

ddβi=1n(yik=0pxikβk)2

Pouvez-vous me diriger dans la bonne direction?

Alexander Engelhardt
la source
@GaBorgulya, merci pour la modification, ne savait pas smallmatrix, donc n'a pas essayé de modifier, car la solution habituelle de casser la formule en plusieurs lignes n'aurait pas fonctionné ici.
mpiktas

Réponses:

12

On a

ddβ(yXβ)(yXβ)=2X(yXβ) .

Cela peut être montré en écrivant l'équation explicitement avec des composants. Par exemple, écrivez au lieu de . Prenez ensuite des dérivées par rapport à , , ..., et empilez tout pour obtenir la réponse. Pour une illustration rapide et facile, vous pouvez commencer avec .(β1,,βp)ββ1β2βpp=2

Avec l'expérience, on développe des règles générales, dont certaines sont données, par exemple, dans ce document .

Modifier pour guider la partie ajoutée de la question

Avec , nous avonsp=2

(yXβ)(yXβ)=(y1x11β1x12β2)2+(y2x21β1x22β2)2

La dérivée par rapport à estβ1

2x11(y1x11β1x12β2)2x21(y2x21β1x22β2)

De même, la dérivée par rapport à estβ2

2x12(y1x11β1x12β2)2x22(y2x21β1x22β2)

Par conséquent, la dérivée par rapport à estβ=(β1,β2)

(2x11(y1x11β1x12β2)2x21(y2x21β1x22β2)2x12(y1x11β1x12β2)2x22(y2x21β1x22β2))

Maintenant, notez que vous pouvez réécrire la dernière expression sous la forme

2(x11x21x12x22)(y1x11β1x12β2y2x21β1x22β2)=2X(yXβ)

Bien sûr, tout se fait de la même manière pour un plus grand .p

ocram
la source
Génial, je cherchais exactement ce type de pdf. Merci beaucoup!
Alexander Engelhardt
Oh, je pensais que je pouvais le faire moi-même maintenant, mais je ne peux pas. Pouvez-vous me dire si mes démarches sont correctes ou si je dois prendre "une autre voie" pour résoudre ce problème?
Alexander Engelhardt
@Alexx Hardt: Ma première équation dans l'édition est la même que votre toute dernière équation dans le cas particulier où p = 2. Ainsi, vous pouvez imiter mes calculs pour les composants 3, 4, ..., p.
ocram
Merci encore :) Je pense que je vais utiliser les trois suggestions. Je suis en train de construire un .pdf qui explique et résume l'algèbre de matrice de statistiques de base, parce que je n'ai jamais voulu l'apprendre quand je l'ai appris dans mes cours. Le résoudre de trois manières différentes m'aidera à mieux le comprendre, j'espère.
Alexander Engelhardt
Oh, mais c'est pour p = 2 et n = 2, non? Je vais l'écrire avec n = 3 je pense.
Alexander Engelhardt
13

Vous pouvez également utiliser des formules du livre de recettes Matrix . On a

(yXβ)(yXβ)=yyβXyyXβ+βXXβ

Prenez maintenant des dérivés de chaque terme. Vous voudrez peut-être remarquer que . La dérivée du terme par rapport à est zéro. Le terme restantβXy=yXβyyβ

βXXβ2yXβ

est de forme de fonction

f(x)=xAx+bx,

dans la formule (88) dans le livre de la page 11, avec , et . Le dérivé est donné dans la formule (89):x=βA=XXb=2Xy

fx=(A+A)x+b

donc

β(yXβ)(yXβ)=(XX+(XX))β2Xy

Maintenant que on obtient la solution souhaitée:(XX)=XX

XXβ=Xy
mpiktas
la source
+1 mpiktas: Votre solution est plus ingénieuse que la mienne et je pense qu'elle devrait être utilisée dans des situations pratiques plus complexes.
ocram
1
@ocram, merci. Je ne dirais pas que c'est ingénieux, c'est une application standard des formules existantes. Vous avez juste besoin de connaître les formules :)
mpiktas
8

Voici une technique pour minimiser la somme des carrés en régression qui a en fait des applications à des paramètres plus généraux et que je trouve utile.

Essayons d'éviter complètement le calcul matriciel vectoriel.

Supposons que nous souhaitons minimiser où , et . Pour simplifier, nous supposons que et .

E=(yXβ)T(yXβ)=yXβ22,
yRnXRn×pβRppnrank(X)=p

Pour tout , nous obtenons β^Rp

E=yXβ^+Xβ^Xβ22=yXβ^22+X(ββ^)222(ββ^)TXT(yXβ^).

Si nous pouvons choisir (trouver!) Un vecteur tel que le dernier terme à droite soit nul pour chaque , alors nous aurions terminé, car cela impliquerait que .β^ βminβEy-Xβ^22

Mais, pour tous si et seulement si et cette dernière équation est vraie si et seulement si . Donc est minimisé en prenant .(β-β^)TXT(y-Xβ^)=0βXT(y-Xβ^)=0XTXβ^=XTyEβ^=(XTX)-1XTy


Bien que cela puisse sembler un "truc" pour éviter le calcul, il a en fait une application plus large et il y a une géométrie intéressante en jeu.

Un exemple où cette technique rend une dérivation beaucoup plus simple que toute approche de calcul matriciel-vectoriel est lorsque nous généralisons au cas de la matrice. Soit , et . Supposons que nous souhaitons minimiser sur toute la matrice de paramètres . Ici est une matrice de covariance.OuiRn×pXRn×qBRq×p

E=tr((Oui-XB)Σ-1(Oui-XB)T)
BΣ

Une approche entièrement analogue à ce qui précède établit rapidement que le minimum de est atteint en prenant Autrement dit, dans un cadre de régression où la réponse est un vecteur avec covariance et les observations sont indépendantes, alors l'estimation OLS est atteinte en effectuant régressions linéaires distinctes sur les composantes de la réponse.E

B^=(XTX)-1XTOui.
Σp
cardinal
la source
Heureusement, les règles du forum permettent d'ajouter +1 à chaque réponse. Merci pour l'éducation, les gars!
DWin
@DWin, vouliez-vous publier ceci sous les commentaires à la question?
cardinal
Je suppose que j'aurais pu. J'avais séquentiellement parcouru la question, puis toutes les réponses (après que le traitement du MathML a cessé de bouger) et trouvé chacune des réponses informative. Je viens de déposer mon commentaire sur le vôtre car c'est là que j'ai arrêté de lire.
DWin
1
@DWin, oui, le rendu est un peu funky. Je pensais que vous auriez pu vouloir le commentaire pour un autre post car celui-ci n'a pas de votes (haut ou bas) et donc le commentaire semblait être à sa place. À votre santé.
cardinal
1
@cardinal +1, astuce utile. Cette question s'est avérée être une très bonne référence.
mpiktas
6

Une façon qui peut vous aider à comprendre est de ne pas utiliser l'algèbre matricielle, de différencier à chaque égard pour chaque composant, puis de "stocker" les résultats dans un vecteur de colonne. Donc nous avons:

βkje=1N(Ouije-j=1pXjejβj)2=0

Vous avez maintenant de ces équations, une pour chaque bêta. Il s'agit d'une application simple de la règle de chaîne:p

je=1N2(Ouije-j=1pXjejβj)1(βk[Ouije-j=1pXjejβj])=0
-2je=1NXjek(Ouije-j=1pXjejβj)=0

Maintenant, nous pouvons réécrire la somme à l'intérieur du support sous la forme Vous obtenez donc:j=1pXjejβj=XjeTβ

je=1NXjekOuije-je=1NXjekXjeTβ=0

Nous avons maintenant de ces équations, et nous les "empilerons" dans un vecteur colonne. Remarquez comment est le seul terme qui dépend de , donc nous pouvons l'empiler dans le vecteur et nous obtenons:pXjekkXje

je=1NXjeOuije=je=1NXjeXjeTβ

Maintenant, nous pouvons prendre la bêta en dehors de la somme (mais nous devons rester sur RHS de la somme), puis prendre l'inverse:

(je=1NXjeXjeT)-1je=1NXjeOuije=β
probabilitéislogique
la source