Comment dériver l'estimateur des moindres carrés pour la régression linéaire multiple?

30

Dans le cas de régression linéaire simple , vous pouvez dériver l'estimateur des moindres carrés sorte que vous n'avez pas besoin de connaître pour estimery=β0+β1xβ^1=(xix¯)(yiy¯)(xix¯)2β^0β^1

Supposons que j'ai , comment puis-je dériver sans estimer ? ou n'est-ce pas possible?y=β1x1+β2x2β^1β^2

Sabre CN
la source
1
Vous pouvez omettre l'une des variables et toujours obtenir une estimation non biaisée de l'autre si elles sont indépendantes.
david25272

Réponses:

51

La dérivation en notation matricielle

À partir de , qui est vraiment le même quey=Xb+ϵ

[y1y2yN]=[x11x12x1Kx21x22x2KxN1xN2xNK][b1b2bK]+[ϵ1ϵ2ϵN]

tout se résume à minimiser :ee

ϵϵ=[e1e2eN][e1e2eN]=i=1Nei2

Donc, minimiser nous donne:ee

minb ee=(yXb)(yXb)

minb ee=yy2bXy+bXXb

(ee)b=2Xy+2XXb=!0

XXb=Xy

b=(XX)1Xy

Une dernière chose mathématique, la condition de second ordre pour un minimum requiert que la matrice soit définie positive. Cette exigence est remplie dans le cas où a un rang complet.XXX

La dérivation plus précise qui passe par toutes les étapes dans un plus grand département peut être trouvée sous http://economictheoryblog.com/2015/02/19/ols_estimator/

Andreas Dibiasi
la source
3
Cette dérivation est précisément ce que je cherchais. AUCUNE ÉTAPE SAUTÉE. Surprenant combien difficile de trouver la même chose.
javadba
1
Dans l'équation matricielle, la seconde ne devrait-elle pas *être un +? De plus, ne devrait-il pas être au lieu de pour obtenir les dimensions correspondantes? b NbKbN
Alexis Olson
Alexis Olson, tu as raison! J'ai édité ma réponse.
Andreas Dibiasi
13

Il est possible d'estimer un seul coefficient dans une régression multiple sans estimer les autres.

L'estimation de est obtenue en supprimant les effets de des autres variables puis en régressant les résidus de contre les résidus de . Ceci est expliqué et illustré Comment contrôle-t-on exactement les autres variables? et Comment normaliser (a) le coefficient de régression? . La beauté de cette approche est qu'elle ne nécessite aucun calcul, aucune algèbre linéaire, peut être visualisée en utilisant uniquement une géométrie bidimensionnelle, est numériquement stable et exploite une seule idée fondamentale de la régression multiple: celle de supprimer (ou de "contrôler pour" ) les effets d'une seule variable.x 2 y x 1β1x2yx1


Dans le cas présent, la régression multiple peut être effectuée en utilisant trois étapes de régression ordinaires:

  1. Régression sur (sans terme constant!). Soit l'ajustement . L'estimation est Par conséquent, les résidus sont Géométriquement, est ce qui reste de après sa soustraction sur .x 2 y = α y , 2 x 2 + δ α y , 2 = i y i x 2 iyx2y=αy,2x2+δδ=y-αy,2x2. δyx2

    αy,2=iyix2iix2i2.
    δ=yαy,2x2.
    δyx2
  2. Régression sur (sans terme constant). Soit l'ajustement . L'estimation estLes résidus sontGéométriquement, est ce qui reste de après sa soustraction sur .x 2 x 1 = α 1 , 2 x 2 + γ α 1 , 2 = i x 1 i x 2 ix1x2x1=α1,2x2+γγ=x1-α1,2x2.

    α1,2=ix1ix2iix2i2.
    γ=x1α1,2x2.
    γx1x2
  3. Régression on (sans terme constant). L'estimation estL'ajustement sera . Géométriquement, est la composante de (qui représente avec retiré) dans la direction (qui représente avec retiré).δγ

    β^1=iδiγiiγi2.
    δ=β^1γ+εβ^1δyx2γx1x2

Notez que n'a pas été estimé. β2 Il peut facilement être récupéré à partir de ce qui a été obtenu jusqu'à présent (tout comme dans le cas de régression ordinaire est facilement obtenu à partir de l'estimation de pente ). Les sont les résidus de la régression bivariée de sur et .β^0β^1εyx1x2

Le parallèle avec la régression ordinaire est fort: les étapes (1) et (2) sont des analogues de soustraction des moyennes dans la formule habituelle. Si vous laissez être un vecteur de uns, vous retrouverez en fait la formule habituelle.x2

Cela se généralise de façon évidente pour régresser avec plus de deux variables: pour estimer , régresser et séparément par rapport à toutes les autres variables, puis régresser leurs résidus les uns par rapport aux autres. À ce stade, aucun des autres coefficients de la régression multiple de n'a encore été estimé.β^1yx1y

whuber
la source
1
Excellente réponse, voici un théorème général en.wikipedia.org/wiki/…
JohnK
4

L'estimation des moindres carrés ordinaires de est une fonction linéaire de la variable de réponseβ . En termes simples, l'estimation OLS des coefficients, les , peut être écrite en utilisant uniquement la variable dépendante ( ) et les variables indépendantes ( ).βYiXki

Pour expliquer ce fait pour un modèle de régression général, vous devez comprendre une petite algèbre linéaire. Supposons que vous estimer les coefficients dans un modèle de régression multiple,(β0,β1,...,βk)

Yi=β0+β1X1i+...+βkXki+ϵi

où pour . La matrice de conception est une matrice où chaque colonne contient les observations de la variable dépendante . Vous pouvez trouver de nombreuses explications et dérivations ici de la formule utilisée pour calculer les coefficients estimés , qui estϵiiidN(0,σ2)i=1,...,nXn×knkthXkβ^=(β^0,β^1,...,β^k)

β^=(XX)1XY

en supposant que l'inverse existe. Les coefficients estimés sont des fonctions des données et non des autres coefficients estimés.(XX)1

caburke
la source
J'ai une question de suivi, sur le cas de régression simple, vous faites puis devient une matrice de et , puis suivez le . Comment dois-je réécrire l'équation dans mon cas? yi=β0+β1x¯+β1(xix¯)+eiX(1,...,1)(x1x¯,...,xnx¯)β^=(XX)(1)XY
Sabre CN
Et encore une question, cela s'applique-t-il aux cas où et ne sont pas linéaires, mais le modèle est toujours linéaire? Par exemple, la courbe de désintégration , puis-je remplacer l'exponentielle par et pour qu'elle devienne ma question d'origine? x1x2y=β1ex1t+β2ex2tx1x2
Sabre CN
Dans votre premier commentaire, vous pouvez centrer la variable (en soustraire sa moyenne) et utiliser c'est votre variable indépendante. Recherchez «régression standardisée». La formule que vous avez écrite en termes de matrices n'est pas correcte. Pour votre deuxième question, oui, vous pouvez le faire, un modèle linéaire est un modèle linéaire en , donc tant que égal à une combinaison linéaire de , tout va bien. βyβ
caburke
2
(+1). Mais ne devrait-il pas s'agir de " matrix" au lieu de ? n×kk×n
miura
3

Une petite note mineure sur la théorie vs la pratique. Mathématiquement peut être estimé avec la formule suivante:β0,β1,β2...βn

β^=(XX)1XY

où est les données d'entrée d'origine et est la variable que nous voulons estimer. Cela découle de la minimisation de l'erreur. Je vais le prouver avant de faire un petit point pratique.XY

Soit l'erreur que fait la régression linéaire au point . Ensuite:eii

ei=yiyi^

L'erreur quadratique totale que nous commettons est maintenant:

i=1nei2=i=1n(yiyi^)2

Parce que nous avons un modèle linéaire, nous savons que:

yi^=β0+β1x1,i+β2x2,i+...+βnxn,i

Qui peut être réécrit en notation matricielle comme:

Y^=Xβ

Nous savons que

i=1nei2=EE

Nous voulons minimiser l'erreur carrée totale, de sorte que l'expression suivante soit aussi petite que possible

EE=(YY^)(YY^)

Cela équivaut à:

EE=(YXβ)(YXβ)

La réécriture peut sembler déroutante mais elle découle de l'algèbre linéaire. Notez que les matrices se comportent de façon similaire aux variables lorsque nous les multiplions à certains égards.

Nous voulons trouver les valeurs de telles que cette expression soit aussi petite que possible. Nous devrons différencier et définir la dérivée égale à zéro. Nous utilisons ici la règle de la chaîne.β

dEEdβ=2XY+2XXβ=0

Cela donne:

XXβ=XY

Tels que finalement:

β=(XX)1XY

Donc, mathématiquement, nous semblons avoir trouvé une solution. Il y a un problème cependant, c'est que est très difficile à calculer si la matrice est très très grande. Cela pourrait entraîner des problèmes de précision numérique. Une autre façon de trouver les valeurs optimales pour dans cette situation est d'utiliser une méthode de type descente en gradient. La fonction que nous voulons optimiser est illimitée et convexe donc nous utiliserions également une méthode de gradient en pratique si besoin est. (XX)1Xβ

Vincent Warmerdam
la source
sauf que vous n'avez pas réellement besoin de calculer ...(XX)1
user603
point valide. on pourrait également utiliser le processus gram schmidt, mais je voulais juste faire remarquer que la recherche des valeurs optimales pour le vecteur peut également se faire numériquement en raison de la convexité. β
Vincent Warmerdam
2

Une dérivation simple peut être faite simplement en utilisant l'interprétation géométrique de LR.

La régression linéaire peut être interprétée comme la projection de sur l'espace de colonne . Ainsi, l'erreur, est orthogonale à l'espace des colonnes de . YXϵ^X

Par conséquent, le produit interne entre et l'erreur doit être 0, c'est-à-dire X

<X,yXβ^>=0

XyXXβ^=0

Xy=XXβ^

Ce qui implique que,

(XX)1Xy=β^ .

Maintenant, la même chose peut être faite par:

(1) Projection de sur (erreur ), ,YX2δ=YX2D^D^=(X2X2)1X2y

(2) Projection de sur (erreur ), ,X1X2γ=X1X2G^G^=(X1X1)1X1X2

et enfin,

(3) Projection de sur ,δγβ^1

entrez la description de l'image ici

Dnaiel
la source