Des articles

4.1 : Moindres carrés - Mathématiques


Introduction

Nous avons appris dans le chapitre précédent que (Ax = b) n'a pas besoin de posséder de solution lorsque le nombre de lignes de (A) dépasse son rang, c'est-à-dire (r < m). Comme cette situation se présente assez souvent dans la pratique, généralement sous l'apparence de « plus d'équations que d'inconnues », nous établissons une justification de l'absurdité (Ax = b).

Les équations normales

Le but est de choisir (x) tel que (A⁢x) soit le plus proche possible de (b). En mesurant la proximité en termes de somme des carrés des composants, nous arrivons au problème des « moindres carrés » consistant à minimiser

res

[(||Ax-b||)^2 = (Ax-b)^{T}(Ax-b) onumber]

sur tout (x in mathbb{R}). Le chemin vers la solution est éclairé par le théorème fondamental. Plus précisément, on écrit

(forall b_{R}, b_{N}, b_{R} in mathbb{R}(A) wedge b_{N} in mathbb{N} (A^{T}) : ( b = b_{R}+b_{N})). En notant que (i) (forall b_{R}, x in mathbb{R}^n : ((Ax-bR) in mathbb{R}(A))) et (ii) (mathbb{R}(A) perp mathbb{N} (A^T)) nous arrivons au théorème de Pythagore.

Définition : théorème de Pythagoream

[norme^{2}(Ax-b) = (||Ax-b_{R}+b_{N}||)^2 onumber]

[= (||Ax-b_{R}||)^2+(||b_{N}||)^2 onumber]

Il est maintenant clair d'après le théorème de Pythagore que le meilleur (x) est celui qui satisfait

[Ax = b_{R} onuméro]

Comme (b_{R} in mathbb{R}(A)) cette équation possède bien une solution. Il nous reste cependant à préciser comment on calcule (b_{R}) étant donné (b). Bien qu'une expression explicite pour (b_{R}) projection orthogonale de (b) sur (mathbb{R}(A)), en termes de (A) et (b) est à notre portée, nous ne l'exigerons pas, à proprement parler. Pour voir cela, notons que si (x) satisfait l'équation ci-dessus alors projection orthogonale de (b) sur (mathbb{R}(A)), en termes de (A) et (b) est à notre portée, nous ne l'exigerons pas, à proprement parler. Pour voir cela, notons que si (x) satisfait l'équation ci-dessus alors

[Ax-b = Ax-b_{R}+b_{N} onuméro]

[= -b_{N} onuméro]

Comme (b_{N}) n'est pas plus facile à calculer que (b_{R}), vous pouvez prétendre que nous tournons en rond. L'information "pratique" dans l'équation ci-dessus est cependant que ((Ax-b) in A^{T}), c'est-à-dire, (A^{T}(Ax-b) = 0), c'est-à-dire,

[A^{T} Ax = A^{T} b onumber]

Comme (A^{T} b in mathbb{R} (A^T)) indépendamment de (b) ce système, souvent appelé le équations normales, a en effet une solution. Cette solution est unique tant que les colonnes de (A^{T}A) sont linéairement indépendantes, c'est-à-dire tant que (mathbb{N}(A^{T}A) = {0}) . En rappelant le chapitre 2, exercice 2, nous notons que cela équivaut à (mathbb{N}(A) = {0})

L'ensemble des (x in b_{R}) pour lequel le décalage ((||Ax-b||)^2) est le plus petit est composé de ceux (x) pour lesquels (A^ {T}Ax = A^{T}b) Il existe toujours au moins un tel (x). Il existe exactement un tel (x) si (mathbb{N}(A) = {0}).

Comme exemple concret, supposons en référence à la figure 1 que (A = egin{pmatrix} {1}&{1} {0}&{1} {0}&{0} end{pmatrix }) et (A = egin{pmatrix} {1} {1} {1} end{pmatrix})

Comme (b e mathbb{R}(A)) il n'y a pas de (x) tel que (Ax = b). En effet, ((||Ax-b||)^2 = (x_{1}+x_{2}+-1)^2+(x_{2}-1)^2+1 ge 1) , avec le minimum uniquement atteint à (x = egin{pmatrix} {0} {1} end{pmatrix}), en accord avec l'unique solution de l'équation ci-dessus, pour (A^{T } A = egin{pmatrix} {1}&{1} {1}&{2} end{pmatrix}) et (A^{T} b = egin{pmatrix} {1} {2} end{pmatrix}). On reconnaît maintenant, a posteriori, que (b_{R} = Ax = egin{pmatrix} {1} {1} {0} end{pmatrix}) est la projection orthogonale de b sur le espace de colonne de (A).

Application des moindres carrés au problème du test biaxial

Nous formulerons l'identification des 20 raideurs des fibres dans cette figure précédente, sous la forme d'un problème des moindres carrés. On envisage de charger, les 9 nœuds et de mesurer les 18 déplacements associés, (x). De la connaissance de (x) et (f) nous souhaitons déduire les composantes de (K=diag(k)) où (k) est le vecteur des rigidités inconnues des fibres. La première étape consiste à reconnaître que

[A^{T}KAx = f onumber]

peut être écrit comme

[forall B, B = A^{T} diag(Ax) : (Bk = f) onumber]

Bien que conceptuellement simple, cela n'est pas d'une grande utilité en pratique, car (B) est 18 par 20 et donc l'équation ci-dessus possède de nombreuses solutions. La solution consiste à calculer (k) à la suite de plusieurs expériences. Nous verrons que, pour notre petit échantillon, 2 expériences suffiront. Pour être précis, on suppose que (x^1) est le déplacement produit par le chargement (f^1) tandis que (x^2) est le déplacement produit par le chargement (f^2). Nous superposons ensuite les pièces associées dans

[B = egin{pmatrix} {A^{T} ext{diag} (Ax^1)} {A^{T} ext{diag} (Ax^2)} end{pmatrix} ]

et

[f= egin{pmatrix} {f^1} {f^2} end{pmatrix}.]

Ce (B) est de 36 x 20 et donc le système (Bk = f) est surdéterminé et donc mûr pour les moindres carrés.

On procède ensuite à l'assemblage de (B) et (f). On suppose que (f^{1}) et (f^{2}) correspondent à des étirements horizontaux et verticaux

[f^{1} = egin{pmatrix} {-1}&{0}&{0}&{0}&{1}&{0}&{-1}&{0}&{0} &{0}&{1}&{0}&{-1}&{0}&{0}&{0}&{1}&{0} end{pmatrix}^{T} onumber]

[f^{2} = egin{pmatrix} {0}&{1}&{0}&{1}&{0}&{1}&{0}&{1}&{0}&{ 1}&{0}&{1}&{0}&{-1}&{0}&{-1}&{0}&{-1} end{pmatrix}^{T} onumber]

respectivement. Pour les besoins de notre exemple, nous supposons que chaque (k_{j} = 1) sauf (k_{8} = 5). On assemble (A^{T}KA) comme au chapitre 2 et on résout

[A^{T}KAx^{j} = f^{j} onumber]

à l'aide de la pseudo-inverse. Afin de donner une certaine `réalité' à ce problème, nous entachons chaque (x^{j}) avec 10 pour cent de bruit avant de construire (B)

[B^{T}Bk = B^{T}f onumber]

nous notons que Matlab résout ce système lorsqu'il est présenté aveck=Bflorsque BB est rectangulaire. Nous avons tracé les résultats de cette procédure dans le lien. La fibre rigide est facilement identifiable.

Projections

D'un point de vue algébrique, l'équation est une reformulation élégante du problème des moindres carrés. Bien que facile à retenir, il obscurcit malheureusement le contenu géométrique, suggéré par le mot « projection », de l'équation. Comme les projections surviennent fréquemment dans de nombreuses applications, nous nous arrêtons ici pour les développer plus soigneusement. En ce qui concerne les équations normales, nous notons que si (mathbb{N}(A) = {0}) alors

[x = (A^{T}A)^{-1} A^{T} b onumber]

et donc la projection orthogonale de bb sur (mathbb{R}(A)) est :

[b_{R}= Axe onuméro]

[= A (A^{T}A)^{-1} A^T b onumber]

Définir

[P = A (A^{T}A)^{-1} A^T onumber]

prend la forme (b_{R} = Pb). Conformément à notre notion de ce que devrait être une « projection », nous nous attendons à ce que (P) mappe les vecteurs qui ne sont pas dans (mathbb{R}(A)) sur (mathbb{R}(A)) tout en laissant les vecteurs déjà dans (mathbb{R}(A)) indemnes. Plus succinctement, on s'attend à ce que (Pb_{R} = b_{R}) i.e., (Pb_{R} = Pb_{R}). Comme ce dernier devrait être valable pour tout (b in R^{m}), nous nous attendons à ce que

[P^2 = P onumber]

On trouve qu'en effet

[P^2 = A (A^{T}A)^{-1} A^T A (A^{T}A)^{-1} A^T onumber]

[= A (A^{T}A)^{-1} A^T onumber]

[= P onumber]

On note aussi que le (P) est symétrique. Nous honorons ces propriétés à travers

Définition : projection orthogonale

Une matrice (P) qui satisfait (P^2 = P) est appelée une projection. Une projection symétrique est appelée une projection orthogonale.

Nous nous sommes efforcés de motiver l'utilisation du mot « projection ». Vous vous demandez peut-être ce que la symétrie a à voir avec l'orthogonalité. Nous expliquons cela en termes de tautologie

[b = Pb−Ib onumber]

Maintenant, si (P) est une projection, alors (I-P) l'est aussi. De plus, si (P) est symétrique alors le produit scalaire de (b).

[egin{align*} (Pb)^T(IP)b &= b^{T}P^{T}(IP)b [4pt] &= b^{T}(PP^{2 })b [4pt] &= b^{T} 0 b [4pt] &= 0 end{align*}

c'est-à-dire que (P⁢b) est orthogonal à ((I-P)b). Comme exemples de projections non orthogonales, nous proposons

[P = egin{pmatrix} {1}&{0}&{0} {frac{-1}{2}}&{0}&{0} {frac{-1} {4}}&{frac{-1}{2}}&{1} end{pmatrix}]

et (I-P). Notons enfin que la formule centrale (P = A (A^{T}A)^{-1} A^T), est même un peu plus générale qu'annoncée. Il a été présenté comme la projection orthogonale sur l'espace des colonnes de (A). Cependant, le besoin survient souvent de la projection orthogonale sur un sous-espace arbitraire M. La clé pour utiliser l'ancien PP est simplement de réaliser que tous le sous-espace est l'espace des colonnes d'une matrice. Plus précisément, si

[{x_{1}, cdots, x_{m}} onumber]

est une base pour MM alors clairement si ces (x_{j}) sont placés dans les colonnes d'une matrice appelée (A) alors (mathbb{R}(A) = M). Par exemple, si (M) est la ligne passant par (egin{pmatrix} {1}&{1} end{pmatrix}^{T}) alors

[P = egin{pmatrix} {1} {1} end{pmatrix} frac{1}{2} egin{pmatrix} {1}&{1} end{pmatrix} onumber ]

[P = frac{1}{2} egin{pmatrix} {1}&{1} {1}&{1} end{pmatrix} onumber]

est une projection orthogonale sur (M).

Des exercices

Exercice (PageIndex{1})

Gilbert Strang a été étiré sur une crémaillère à des longueurs (l = 6, 7, 8) pieds sous des forces appliquées de (f = 1, 2, 4) tonnes. En supposant la loi de Hooke (l−L = cf), trouver sa conformité, (c), et sa hauteur d'origine, (L), par les moindres carrés.

Exercice (PageIndex{2})

En ce qui concerne l'exemple du § 3, notez qu'en raison de la génération aléatoire du bruit qui altère les déplacements, on obtient une "réponse" différente à chaque fois que le code est invoqué.

  1. Écrivez une boucle qui appelle le code un nombre statistiquement significatif de fois et soumettez des graphiques à barres de la rigidité moyenne des fibres et de son écart type pour chaque fibre, ainsi que le fichier M associé.
  2. Expérimentez avec différents niveaux de bruit dans le but de déterminer le niveau au-dessus duquel il devient difficile de discerner la fibre rigide. Expliquez soigneusement vos découvertes.

Exercice (PageIndex{3})

Trouvez la matrice qui projette (mathbb{R}^3) sur la ligne couverte par (egin{pmatrix} {1}&{0}&{1} end{pmatrix}^{T}) .

Exercice (PageIndex{4})

Trouvez la matrice qui projette (mathbb{R}^3) sur la ligne couverte par (egin{pmatrix} {1}&{0}&{1} end{pmatrix}^{T}) et (egin{pmatrix} {1}&{1}&{-1} end{pmatrix}^{T}).

Exercice (PageIndex{5})

Si (P) est la projection de (mathbb{R}^m) sur un sous-espace à k dimensions (M), quel est le rang de (P) et quel est ( mathbb{R}(P)) ?


Voir la vidéo: La Prévision des Ventes: La méthode des moindres carrés (Décembre 2021).