- Moindres carrés non linéaires
-
Les moindres carrés non linéaires est une forme des moindres carrés spécialisée dans l'estimation d'un modèle non linéaire en n paramètres à partir de m observations (m > n). Une façon d'estimer ce genre de problème est de considérer des itérations successives se basant sur une version linéarisée du modèle initial.
Sommaire
La théorie
Considérons un jeu de m couples d'observations, et une fonction de régression du type . Cette fonction dépend des explicatives x mais aussi du vecteur des n paramètres avec On souhaite trouver le vecteur de paramètres qui ajuste au mieux les données, au sens des moindres carrés:
est minimisée en , où les résidus ri sont donnés par
pour
Le minimum de la somme des carrés des résidus S est atteint lorsque le Gradient s'annule (condition nécessaire). Puisque le problème est formulé avec n paramètres, il y a donc n équations normales:
Dans un système non linéaire, les dérivées dépendent aussi bien des variables explicatives que des paramètres: il faut donc renoncer à résoudre les équations normales aussi simplement que dans le cas linéaire. On a alors recours à une résolution numérique, à l'aide d'un procédé itératif
qui fournit des approximations successives de plus en plus proches de la vraie valeur (inconnue) des paramètres, .
À chaque itération, le modèle initial est linéarisé par un développement de Taylor autour de comme suit:
La Matrice jacobienne, J, dépend des données et de l'approximation en cours, aussi change-t-elle d'une itération à l'autre. Ainsi, en terme du modèle linéarisé, et les résidus sont donnés par
Les équations normales deviennent
ou encore
Matriciellement, on en arrive à
La linéarisation permet donc d'écrire:
Il faut remarquer que l'ensemble du terme de droite dépend seulement de l'itération en cours, à savoir , et permet donc de trouver la prochaine itération .
On peut aisément généraliser l'approche précédente en considérant une somme pondérée des carrés des résidus
Idéalement, chaque élément de la matrice diagonale de pondération W devrait être égal à l'inverse de la variance de l'observation [1] Les équations normales deviennent alors
ce qui procure la base de l'algorithme d'optimisation de Gauss-Newton.
Différences entre les moindres carrés linéaires et non-linéaires
Il y a de nombreuses divergences entre les moindres carrés linéaires (MCL) et non-linéaires (MCN):
- Les MCN est un procédé itératif, qui nécessite donc un point de départ et des critères d'arrêt. Les MCL sont directs (algèbre linéaire);
- Les MCN nécessitent de calculer la matrice jacobienne (dérivées premières). Une expression analytique peut être compliquée à obtenir: si c'est le cas, une différentiation numérique s'impose;
- La divergence est un problème courant des MCN: en effet, il n'est pas rare de voir augmenter la fonction objectif (somme des carrés des résidus) d'une itération à l'autre. Cela peut être dû au manque de précision de l'approximation linéaire par le développement de Taylor;
- Pour les MCL, la solution est unique mais pas pour les MCN: plusieurs minima (locaux) peuvent exister.
Interprétation géométrique
Dans le cas des moindres carrés linéaires, la fonction objectif S est une fonction quadratique des paramètres
Lorsqu'il y a un seul paramètre à estimer β, la fonction S est une parabole en β. Pour deux paramètres ou plus, le contour de S est constitué d'ellipses concentriques, à condition que la matrice est définie positive. Le minimum, atteint pour la valeur optimale des paramètres, est le centre de ces ellipses concentriques.
Dans le cas non linéaire, le contour en ellipses concentriques n'est vrai qu'au voisinage du minimum, puisque dans ce cas l'approximation linéaire de Taylor s'avère être une bonne approximation de la fonction objectif.
Plus les paramètres s'éloignent de leur valeur optimale, plus le contour dévie de sa forme ellipsoïdale. Ceci signifie qu'il est essentiel de choisir l'approximation initiale du procédé itératif proche des valeurs optimales, qui sont par définition inconnues.
Astuces calculatoires
Choix du vecteur d'incrément
Dans le procédé itératif
il est impératif de se prémunir contre la divergence. Plusieurs astuces concernant le choix de peuvent être considérées:
- changer sa norme sans pour autant changer sa direction. On peut alors introduire une proportion f (entre 0 et 1) et amender le procédé itératif en . Par exemple, on peut diviser par deux la valeur de f jusqu'à observer une réelle diminution de la fonction objectif. On peut aussi rechercher la valeur de f par Recherche linéaire[2]: pour une grille de valeurs de f, on cherche la valeur de f provoquant la diminution la plus importante de S. Mais une telle méthode est couteuse en calculs, car il faut à chaque fois re-calculer la fonction objectif;
- si la direction de l'incrément est trop éloigné de sa direction "optimale" et que la méthode précédente échoue, il faudra peut-être changer légèrement la direction du vecteur d'incrément . Pour cela, les équations normales sont transformées en , où λ est le paramètre de Marquardt[3] et I la matrice identité. On consultera avec profit la page consacrée à la méthode de Levenberg-Marquardt.
Décompositions
QR
Le minimum de la somme des carrés des résidus peut se trouver sans former les équations normales. Les résidus du modèle linéarisé s'écrivent
La jacobienne fait l'objet d'une décomposition orthogonale, comme par exemple la Décomposition QR:
où Q est une matrice orthogonale et où R est une matrice , partitionnée en un bloc , de dimension , et en un bloc nul, de dimension zero block. De plus, est triangulaire supérieure.
Le vecteur de résidu est pré-multiplié par .
La somme des carrés reste inchangée puisque . Le minimum de S est atteint lorsque le bloc supérieur est nul. Par conséquent, le vecteur d'incrément recherché se trouve en résolvant
La résolution est facile d'accès car la matrice R a été prise triangulaire supérieure.
Décomposition en valeurs singulières
Une variante de la méthode précédente fait intervenir la Décomposition en valeurs singulières, dans laquelle R est diagonalisée:
où est orthogonal, est une matrice diagonale de valeurs singulières et est la matrice orthogonale des vecteurs propres de . Dans cette configuration, l'incrément est donné par
La relative simplicité de cette expression est très utile dans l'analyse théorique des moindres carrés. Cette méthode est largement détaillée dans Lawson et Hanson[4].
Critères de convergence
Le critère de convergence le plus immédiat est que la somme des carrés ne doit pas décroître d'une itération à l'autre. Ce critère est souvent difficile à implémenter. Aussi, on préfère le critère de convergence suivant
Évidemment, la valeur 0,0001 est arbitraire et doit être changée. En particulier, il faudra augmenter cette valeur lorsque les erreurs expérimentales sont importantes. Un critère alternatif est
Là encore, la valeur numérique est arbitraire.
Minimums multiples
On peut trouver plusieurs minimums de S dans certaines circonstances:
- Un paramètre intervenant à une certaine puissance. Par exemple, pour ajuster des données à une courbe de Lorentz:
Il y a alors deux solution pour le paramètre β: ainsi que donnent la même valeur optimale de la fonction critère;
- Deux paramètres peuvent s'interchanger sans changer le critère. Par exemple, cela survient lorsqu'on rencontre le produit de deux paramètres: ainsi αβ donnera la même chose que βα;
- Un paramètre intervient dans une fonction périodique, comme par exemple dans . Dans ce cas, donne la même valeur critère.
Tous les minimums multiples ne donnent pas la même valeur de la fonction objectif. Un autre problème concerne les minimums locaux. Par exemple, dans le modèle
il y a un minimum local en = 1 et un minimum global en = -3[5].
Pour être certain d'avoir obtenu un minimum global, il est souhaitable de recommencer la procédure de minimisation en changeant le point de départ. Quand on obtient le même résultat quel que soit le point de départ, on peut alors penser obtenir un minimum global.
L'existence de minimums multiples a une conséquence importante: la fonction objectif admet une valeur maximum quelque part entre les deux minimums. Les équations normales en ce maximum fait intervenir des matrices non définies positives. Une telle situation est à proscrire, en particulier comme initialisation du procédé itératif. Par exemple, pour le cas de l'ajustement du modèle de Lorentz, le cas β = 0 est à éviter.
Autres méthodes
Linéarisation
Un modèle non linéaire peut parfois se transformer en modèle linéaire. Par exemple, lorsque le modèle est une simple fonction exponentielle,
on peut obtenir un modèle linéaire par transformation logarithmique.
La somme des carrés devient
Toutefois, si on n'a aucun renseignement sur la structure des aléas, cette transformation peut être problématique: de toute évidence, les erreurs expérimentales sur y ne sont pas les mêmes que sur log y. Estimer le modèle initial et celui linéarisé donnera des estimations différentes et des variances estimées. En pratique, le modèle exponentiel s'estime dans une procédure à part.
Quelques ajustements
On peut considérer quelques ajustements
- Calcul de la matrice jacobienne par approximation numérique. Dans certains modèles, obtenir des dérivées analytiques peut s'avérer délicat. On doit avoir recours à une approximation numérique de la jacobienne; par exemple, l'approximation de son entrée (i,j) est:
Cette approximation s'obtient par le calcul de pour et . L'incrément,, doit être choisi ni trop grand ni trop petit (afin d'éviter les erreurs d'arrondi);
- L'inclusion des dérivées secondes dans le développement de Taylor. On obtient la méthode classique de Newton.
La matrice H est la Matrice hessienne. Bien que présentant de bien meilleures propriétés de convergence près de l'optimum, ce modèle se comporte mal quand les paramètres sont loin de leur valeur optimale. Le calcul de la Hessienne ajoute à la complexité de l'algorithme. Cette méthode n'est pas utilisée en général;
- On peut remplacer l'algorithme de Newton par un algorithme de pseudo-Newton, où on calcule numériquement la hessienne par approximations successives. C'est l'algorithme de Davidon-Fletcher-Powell (DFP);
Voir aussi
Références
- C. T. Kelley, Iterative Methods for Optimization, SIAM Frontiers in Applied Mathematics, no 18, 1999, ISBN: 0-89871-433-8. Online copy
- M.J. Box, D. Davies and W.H. Swann, Non-Linear optimisation Techniques, Oliver & Boyd, 1969
- Cette technique a été proposée indépendamment par Levenberg (1944), Girard (1958), Wynne (1959), Morrison (1960) et Marquardt (1963). C'est le nom de ce dernier que la littérature scientifique a généralement conservé.
- C.L. Lawson and R.J. Hanson, Solving Least Squares Problems, Prentice-Hall,1974
- P. Gans, Data Fitting in the Chemical Sciences, Wiley, 1992, p71.
- Portail des mathématiques
- Portail des probabilités et des statistiques
Wikimedia Foundation. 2010.