Comment trouver des solutions de moindres carrés à l'aide de l'algèbre linéaire?
Dans l'analyse des données, l'objectif est souvent de trouver des corrélations pour les données observées, appelées courbes de tendance. Cependant, les observations réelles donnent presque toujours des solutions incohérentes à l'équation matricielle Xβ=y,{\displaystyle X{\boldsymbol {\beta }}=\mathbf {y},} où y{\displaystyle \mathbf {y} } est appelé vecteur d'observation, X{\displaystyle X} est appelé la matrice de conception m×n{\displaystyle m\times n} , et nous recherchons les valeurs de β,{\displaystyle {\boldsymbol {\beta }},} le vecteur de paramètre. Intuitivement, c'est facile à voir - aucune ligne de tendance, sauf dans des cas très particuliers, ne peut croiser chaque point des données.
Pour de nombreuses applications, la solution consiste à trouver un ^{\displaystyle {\hat {\boldsymbol {\beta }}}} qui se rapproche le mieux de l'équation susmentionnée. Cela peut être écrit en termes d'inégalité ||y−Xβ^||2≤||y−Xβ||2,{\displaystyle ||\mathbf {y} -X{\hat {\boldsymbol {\beta } }}||^{2}\leq ||\mathbf {y} -X{\boldsymbol {\beta }}||^{2},} où nous minimisons la distance entre y{\displaystyle \mathbf {y } } et Xβ.{\displaystyle X{\boldsymbol {\ beta }}.} Parce que la quantité ||y−Xβ||2{\displaystyle ||\mathbf {y} -X{\boldsymbol {\beta }} ||^{2}} est une somme de carrés, le problème de trouver β^{\displaystyle {\hat {\boldsymbol {\beta }}}} est appelé problème des moindres carrés.
Il est recommandé d'avoir des connaissances en algèbre linéaire pour comprendre la dérivation.
Partie 1 sur 2: dérivation de la solution générale des moindres carrés
- 1Rappelons la définition d'une projection. Considérons un espace vectoriel couvert par l'espace colonne de X{\displaystyle X} (ColX∈Rm){\displaystyle (\operatorname {Col} X\in \mathbb {R} ^{m})} et un y observable .{\displaystyle \mathbf {y}.} Parce que y{\displaystyle \mathbf {y} } en général n'est pas dans ColX,{\displaystyle \operatorname {Col} X,} nous souhaitons trouver la meilleure approximation y ^{\displaystyle {\hat {\mathbf {y} }}} à y,{\displaystyle \mathbf {y},} qui est dans ColX,{\displaystyle \operatorname {Col} X,} appelé la projection de y.{\displaystyle \mathbf {y}.} En d'autres termes, nous souhaitons trouver y^{\displaystyle {\hat {\mathbf {y} }}} qui minimise la distance entre l'espace vectoriel Span{ColX}{\displaystyle \operatorname {Span} \{\operatorname {Col} X\}} et y.{\displaystyle \mathbf {y}.}
- y^=ProjColXy{\displaystyle {\hat {\mathbf {y} }}=\operatorname {Proj} _{\operatorname {Col} X}\mathbf {y} }
- Si on laisse X=(x1x2.. 0,10),{\displaystyle X={\begin{pmatrix}\mathbf {x} _{1}&\mathbf {x} _{2}&...&\ mathbf {x} _{p}\end{pmatrix}},} alors nous pouvons écrire la projection comme suit, où les crochets angulaires signifient le produit scalaire.
- ProjColXy=⟨y,x1⟩⟨x1,x1⟩x1+...+⟨y,10⟩⟨10,xp⟩10{\displaystyle \operatorname {Proj} _{\operatorname {Col} X}\ mathbf {y} ={\frac {\langle \mathbf {y},\mathbf {x} _{1}\rangle }{\langle \mathbf {x} _{1},\mathbf {x} _{1 }\rangle }}\mathbf {x} _{1}+\,...\,+{\frac {\langle \mathbf {y},\mathbf {x} _{p}\rangle }{\langle \mathbf {x} _{p},\mathbf {x} _{p}\rangle }}\mathbf {x} _{p}}
- Évidemment, ce n'est pas quelque chose que nous voulons évaluer.
- 2Réécrivez l'équation matricielle avec des projections. Maintenant que nous avons un vecteur qui est dans ColX,{\displaystyle \operatorname {Col} X,} nous pouvons commencer à trouver un β^{\displaystyle {\hat {\boldsymbol {\beta }}}} qui donne une solution cohérente pour l'équation matricielle ci-dessous, où β^∈Rn.{\displaystyle {\hat {\boldsymbol {\beta }}}\in \mathbb {R} ^{n}.}
- Xβ^=y^{\displaystyle X{\hat {\boldsymbol {\beta }}}={\hat {\mathbf {y} }}}
- 3Reliez l'espace nul de x{\displaystyle x} avec y^{\displaystyle {\hat {\mathbf {y} }}} . On peut relier y{\displaystyle \mathbf {y} } et sa projection via z=y−y^,{\displaystyle \mathbf {z} =\mathbf {y} -{\hat {\mathbf {y} }},} où z{\displaystyle \mathbf {z} } est le composant de y{\displaystyle \mathbf {y} } orthogonal à ColX.{\displaystyle \operatorname {Col} X.}
- y−y^=Col(X)⊥{\displaystyle \mathbf {y} -{\hat {\mathbf {y} }}=\operatorname {Col} (X)^{\perp }}
- Un théorème en algèbre linéaire est que si β{\displaystyle {\boldsymbol {\beta }}} est dans l'espace nul de X,{\displaystyle X,} alors β{\displaystyle {\boldsymbol {\beta }}} est orthogonal à l'espace des lignes de X.{\displaystyle X.} Cela a du sens, car faire la multiplication matricielle pour n'importe quelle ligne devrait envoyer le résultat à 0, comme l'exige un vecteur dans l'espace nul de X.{\displaystyle X. }
- Ligne(X)⊥=NulX{\displaystyle \operatorname {Row} (X)^{\perp }=\operatorname {Nul} X}
- Puisque nous pouvons facilement transposer X,{\displaystyle X,} nous pouvons dire que Col(X)⊥=NulXT.{\displaystyle \operatorname {Col} (X)^{\perp }=\operatorname {Nul} X^{T}.} Par conséquent, y−y^=NulXT,{\displaystyle \mathbf {y} -{\hat {\mathbf {y} }}=\operatorname {Nul} X^{T}, } nous menant à la conclusion ci-dessous.
- XT(y−y^)=0{\displaystyle X^{T}(\mathbf {y} -{\hat {\mathbf {y} }})=0}
- 4Remplacez xβ^{\displaystyle x{\hat {\boldsymbol {\beta }}}} par y^{\displaystyle {\hat {\mathbf {y} }}} et simplifiez. Puisque nous ne cherchons pas y^,{\displaystyle {\hat {\mathbf {y} }},} mais β^,{\displaystyle {\hat {\boldsymbol {\beta }}},} nous le substituons dans l'équation homogène.
- XT(y−Xβ^)=0XTy−XTXβ^=0{\displaystyle {\begin{aligned}X^{T}(\mathbf {y} -X{\hat {\boldsymbol {\beta }}})& =0\\X^{T}\mathbf {y} -X^{T}X{\hat {\boldsymbol {\beta }}}&=0\end{aligned}}}
- 5Résolvez pour β^{\displaystyle {\hat {\boldsymbol {\beta }}}} . Maintenant que nous avons exprimé β^{\displaystyle {\hat {\boldsymbol {\beta }}}} dans les quantités que nous voulons, nous pouvons évaluer cette équation.
- β^=(XTX)−1XTy{\displaystyle {\hat {\boldsymbol {\beta }}}=(X^{T}X)^{-1}X^{T}\mathbf {y} }
- Attention, pour que cette équation soit valide, XTX{\displaystyle X^{T}X} doit être inversible. S'il y a des variables libres dans cette expression, alors il y aura un nombre infini de courbes de tendance valides.
Partie 2 sur 2: exemple pour des données données
- 1Considérez les points de données suivants. Nous voulons leur ajuster une ligne de tendance linéaire des moindres carrés y=β0x+β1{\displaystyle y=\beta _{0}x+\beta _{1}} .
- (03),(14),(25),(37){\style d'affichage (03),\,(14),\,(25),\,(37)}
- Puisque nous ajustons une ligne de tendance linéaire, nous pouvons utiliser les points de données pour écrire un système d'équations.
- 3= β14=β0+β15=2β0+β17=3β0+β1{\displaystyle {\begin{aligned}3&=\ \ \ \ \ \ \ \ \ \beta _{1}\\4&=\beta _{0 }+\beta _{1}\\5&=2\beta _{0}+\beta _{1}\\7&=3\beta _{0}+\beta _{1}\end{aligned}} }
- 2Mettre en place le vecteur d'observation et la matrice de conception. Le vecteur d'observation est simplement un vecteur colonne constitué des observations ou des valeurs y. Les éléments de la matrice de conception reposent sur les coefficients de l'équation de la ligne de tendance en ce qui concerne chaque point. Dans notre cas, la première colonne est constituée des coefficients de β0,{\displaystyle \beta _{0},} tandis que la deuxième colonne est constituée des coefficients de β1.{\displaystyle \beta _{1}.}
- X=(01112131), y=(3457){\displaystyle X={\begin{pmatrix}0&1\\1&1\\2&1\\3&1\end{pmatrix}},\ \mathbf {y} ={\begin{ pmatrix}3\\4\\5\\7\end{pmatrix}}}
- 3Reliez la solution des moindres carrés à la matrice de conception et au vecteur d'observation.
- β^=(XTX)−1XTy{\displaystyle {\hat {\boldsymbol {\beta }}}=(X^{T}X)^{-1}X^{T}\mathbf {y} }
- 4Évaluez le côté droit par tous les moyens possibles.
- XTX=(14664)(XTX)−1=110(2−3−37)XTy=(3519)(XTX)−1XTy=110(1328){\displaystyle {\begin{aligned}X^{T}X&= {\begin{pmatrix}14&6\\6&4\end{pmatrix}}\\(X^{T}X)^{-1}&={\frac {1}{10}}{\begin{pmatrix}2& -3\\-3&7\end{pmatrix}}\\X^{T}\mathbf {y} &={\begin{pmatrix}35\\19\end{pmatrix}}\\(X^{T} X)^{-1}X^{T}\mathbf {y} &={\frac {1}{10}}{\begin{pmatrix}13\\28\end{pmatrix}}\end{aligned} }}
- 5Écrivez la courbe de tendance sous forme standard. Il s'agit de la ligne de meilleur ajustement pour les points de données observés. Notre intuition vérifie qu'il s'agit de la bonne réponse, car nous nous attendions à ce que la pente soit légèrement supérieure à 1 et que l'ordonnée à l'origine soit légèrement inférieure à 3, en raison de la valeur aberrante (37).{\displaystyle (37).}
- y=1310x+2810{\displaystyle y={\frac {13}{10}}x+{\frac {28}{10}}}
- L'exemple que nous avons montré dans la partie 2 traitait de l'ajustement d'une ligne droite à un ensemble d'observations. Cependant, les moindres carrés sont plus puissants que cela. Étant donné un ensemble de données, nous pouvons ajuster des lignes de tendance des moindres carrés qui peuvent être décrites par des combinaisons linéaires de fonctions connues. Par exemple, vous pouvez ajuster des courbes quadratiques, cubiques et même exponentielles sur les données, le cas échéant.