Je suppose qu'il pourrait y avoir une différence entre la façon dont les méthodes de recherche de ligne et de région de confiance gèrent la mise à l'échelle, mais je ne vois vraiment pas que cela se concrétise tant que nous sommes conscients de la mise à l'échelle. Et, pour être clair, le livre de Nocedal et Wright parlait de mise à l'échelle affine. La mise à l'échelle non linéaire est quelque peu plus délicate à quantifier.
Pour voir pourquoi, disons que nous voulons minimiser , mais nous voulons mettre à l'échelle les variables par une sorte d'opérateur non-singulier, auto-adjoint A ∈ L ( X ) . Définissez J : X → R comme fonction d'objectif mise à l'échelle. Alors,
J ( x ) = f ( A x ) ∇ J ( x ) = A ∇ f ( A x ) ∇ 2 J ( x )f:X→RA∈L(X)J:X→R
La vraie différence dansalgorithmes est ce qui se passe à l'échelleA. Dans la méthode de Newton, nous résolvons
∇2J(x)δx=-∇J(x)
ou
A∇2f(Ax)Aδx=-A∇f(Ax)
En supposant que la Hesse est non singulière, nous avons
UNE
J(x)=∇J(x)=∇2J(x)=f(Ax)A∇f(Ax)A∇2f(Ax)A
A∇2J(x)δx=−∇J(x)
A∇2f(Ax)Aδx=−A∇f(Ax)
Fondamentalement, la mise à l'échelle s'annule et disparaît, de sorte qu'elle n'affecte pas la direction. C'est pourquoi nous disons que la méthode de Newton est invariante à l'échelle affine.
Aδx=−∇2f(Ax)−1∇f(Ax)
Hδx=−∇J(x)
HHδx=−A∇f(Ax)
AH
ϕ
δx=ϕ(−A∇f(Ax))
ϕϕϕA
∇2J(x)δx=−∇J(x)
en utilisant inexactement CG. Il s'agit précisément d'utiliser Steihaug-Toint dans le cadre de la région de confiance (p. 171 dans Nocedal et Wright) ou Newton-CG pour la recherche de ligne (p. 169 dans Nocedal et Wright). Ils fonctionnent assez près de la même chose et ne se soucient pas de la mise à l'échelle affine. Ils ne nécessitent pas non plus de stockage de la toile de jute, seuls les produits à vecteur de hesse sont requis. Vraiment, ces algorithmes devraient être les chevaux de bataille pour la plupart des problèmes et ils ne se soucient pas de la mise à l'échelle affine.
En ce qui concerne le préconditionneur pour le problème de la région de confiance, je ne pense pas qu'il existe un moyen facile de dire aux apriori si vous allez améliorer le nombre d'itérations d'optimisation globales ou non. En réalité, au bout du compte, les méthodes d'optimisation fonctionnent selon deux modes. Dans le mode un, nous sommes trop loin du rayon de convergence de la méthode de Newton, donc nous globalisons et forçons simplement les itérations pour assurer que l'objectif descend. La région de confiance est un moyen. La recherche en ligne en est un autre. Dans le mode deux, nous sommes dans le rayon de convergence de la méthode de Newton, nous essayons donc de ne pas jouer avec lui et de laisser la méthode de Newton faire son travail. En fait, nous pouvons le voir dans les preuves de convergence de choses comme les méthodes de région de confiance. Par exemple, regardez le théorème 4.9 (p.93 dans Nocedal et Wright). Très explicitement, ils indiquent comment la région de confiance devient inactive. Dans ce contexte, quelle est l'utilité du préconditionneur? Certes, lorsque nous sommes dans le rayon de convergence de la méthode de Newton, nous faisons beaucoup moins de travail et le nombre d'itérations CG diminue. Que se passe-t-il lorsque nous sommes en dehors de ce rayon? Cela dépend en quelque sorte. Si nous calculons le pas de Newton complet, alors l'avantage est que nous avons fait moins de travail. Si nous interrompons notre étape tôt en raison de la troncature du CG tronqué, alors notre direction sera dans le sous-espace Krylov
{−P∇J(x),−(PH)(P∇J(x)),…,−(PH)k(P∇J(x))}
PH{−∇J(x),−(H)(∇J(x)),…,−(H)k(∇J(x))}?
Cela ne signifie pas qu'il n'est pas utile de définir un bon préconditionneur. Cependant, je ne sais pas comment quelqu'un définit un préconditionneur pour aider à l'optimisation des points éloignés du rayon de convergence de la méthode de Newton. En règle générale, nous concevons un préconditionneur pour regrouper les valeurs propres de l'approximation de Hesse, qui est un objectif tangible et mesurable.
tldr; En pratique, il existe une plus grande variété de façons pour une méthode de recherche de ligne de générer une itération qu'une méthode de région de confiance, il est donc possible qu'il existe une façon étonnante de gérer la mise à l'échelle affine. Cependant, utilisez simplement une méthode Newton inexacte et cela n'a pas d'importance. Un préconditionneur affecte les performances d'un algorithme loin du rayon de convergence de la méthode de Newton, mais il est difficile de quantifier comment, il suffit donc de concevoir un préconditionneur pour regrouper les valeurs propres de l'approximation de Hessiasn.