|
| 1 | + |
| 2 | + |
| 3 | + |
| 4 | + |
| 5 | +Méthode d'optimisation de Newton |
| 6 | +================================ |
| 7 | + |
| 8 | +Lorsqu'un problème d'optimisation n'est pas soluble de manière déterministe, |
| 9 | +il existe des algorithmes permettant de trouver une solution approchée |
| 10 | +à condition toutefois que la fonction à maximiser ou minimiser soit dérivable, |
| 11 | +ce qui est le cas des réseaux de neurones. Plusieurs variantes seront proposées |
| 12 | +regroupées sous le terme de descente de gradient. |
| 13 | + |
| 14 | + |
| 15 | + |
| 16 | +Algorithme et convergence |
| 17 | ++++++++++++++++++++++++++ |
| 18 | + |
| 19 | + |
| 20 | +Soit :math:`g : \R \dans \R` une fonction dérivable dont il faut trouver |
| 21 | +:math:`\overset{*}{x} = \underset{x \in \R}{\arg \min} \; g\pa{x}`, |
| 22 | +le schéma suivant illustre la méthode de descente de gradient |
| 23 | +dans le cas où :math:`g \pa{x} = x^2`. |
| 24 | + |
| 25 | + |
| 26 | +.. image:: rnimg/rn_courbe.png |
| 27 | + |
| 28 | + |
| 29 | +On note :math:`x_{t}` l'abscisse à l'itération :math:`t`. |
| 30 | +On note :math:`\dfrac{\partial g\left( x_{t}\right) }{\partial x}` le |
| 31 | +gradient de :math:`g\left( x\right) =x^{2}`. |
| 32 | +L'abscisse à l'itération :math:`t+1` sera |
| 33 | +:math:`x_{t+1}=x_{t}-\varepsilon_{t}\left[ \dfrac{\partial g\left( x_{t}\right)}{\partial x}\right]`. |
| 34 | +:math:`\varepsilon_{t}` est le pas de gradient à l'itération :math:`t`. |
| 35 | + |
| 36 | +On suppose maintenant que :math:`g` est une fonction dérivable |
| 37 | +:math:`g : \R^q \dans \R` dont il faut trouver le minimum, le théorème suivant démontre |
| 38 | +la convergence de l'algorithme de descente de gradient à condition |
| 39 | +que certaines hypothèses soient vérifiées. Une généralisation de ce théorème est présentée dans |
| 40 | +[Driancourt1996]_. |
| 41 | + |
| 42 | + |
| 43 | +.. mathdef:: |
| 44 | + :title: convergence de la méthode de Newton [Bottou1991]_ |
| 45 | + :tag: Théorème |
| 46 | + :lid: theoreme_convergence |
| 47 | + |
| 48 | + |
| 49 | + Soit une fonction continue :math:`g : W \in \R^M \dans \R` |
| 50 | + de classe :math:`C^{1}`. |
| 51 | + On suppose les hypothèses suivantes vérifiées : |
| 52 | + |
| 53 | + * **H1** : :math:`\underset{W\in \R^q}{\arg\min} \; |
| 54 | + g\left( W\right) =\left\{ W^{\ast}\right\}` |
| 55 | + est un singleton |
| 56 | + * **H2** : :math:`\forall\varepsilon>0, \; \underset{\left| W-W^{\ast}\right| |
| 57 | + >\varepsilon}{\inf}\left[ \left( W-W^{\ast}\right) ^{\prime}.\nabla |
| 58 | + g\left( W\right) \right] >0` |
| 59 | + * **H3** : :math:`\exists\left( A,B\right) \in \R^2` tels que :math:`\forall W\in\R^p,\; \left\| |
| 60 | + \nabla g\left( W\right) \right\| ^{2}\leqslant A^{2}+B^{2}\left\| W-W^{\ast}\right\| ^{2}` |
| 61 | + * **H4** : la suite :math:`\left( \varepsilon_{t}\right)_{t\geqslant0}` vérifie, |
| 62 | + :math:`\forall t>0, \; \varepsilon_{t}\in \R_{+}^{\ast}` |
| 63 | + et :math:`\sum_{t\geqslant 0}\varepsilon_{t}=+\infty`, |
| 64 | + :math:`\sum_{t\geqslant 0}\varepsilon_{t}^{2}<+\infty` |
| 65 | + |
| 66 | + Alors la suite :math:`\left( W_{t}\right) _{t\geqslant 0}` construite de la manière suivante |
| 67 | + :math:`W_{0} \in \R^M`, :math:`\forall t\geqslant0` : |
| 68 | + :math:`W_{t+1}=W_{t}-\varepsilon_{t}\,\nabla g\left( W_{t}\right)` |
| 69 | + vérifie :math:`\lim_{ t \dans+\infty}W_{t}=W^{\ast}`. |
| 70 | + |
| 71 | + |
| 72 | + |
| 73 | +L'hypothèse **H1** implique que le minimum de la fonction :math:`g` |
| 74 | +est unique et l'hypothèse **H2** implique que le demi-espace défini par |
| 75 | +l'opposé du gradient contienne toujours le minimum de la fonction :math:`g`. |
| 76 | +L'hypothèse **H3** est vérifiée pour une fonction sigmoïde, elle l'est donc aussi pour toute somme finie |
| 77 | +de fonctions sigmoïdes que sont les réseaux de neurones à une couche cachée. |
| 78 | + |
| 79 | + |
| 80 | + |
| 81 | +**Démonstration du théorème** |
| 82 | + |
| 83 | +*Partie 1* |
| 84 | + |
| 85 | + |
| 86 | +Soit la suite :math:`u_{t}=\ln\left( 1+\varepsilon_{t}^{2}x^{2}\right)` |
| 87 | +avec :math:`x\in\R`, comme :math:`\sum_{t\geqslant 0} \varepsilon_{t}^{2} < +\infty, \; |
| 88 | +u_{t}\thicksim\varepsilon_{t}^{2}x^{2}`, on a :math:`\sum_{t\geqslant 0} u_{t} < +\infty`. |
| 89 | + |
| 90 | +Par conséquent, si :math:`v_{t}=e^{u_{t}}` alors :math:`\prod_{t=1}^T v_{t}\overset{T \rightarrow \infty}{\longrightarrow}D \in \R`. |
| 91 | + |
| 92 | +*Partie 2* |
| 93 | + |
| 94 | +On pose :math:`h_{t}=\left\| W_{t}-W^{\ast}\right\| ^{2}`. |
| 95 | +Donc : |
| 96 | + |
| 97 | +.. math:: |
| 98 | + :nowrap: |
| 99 | + :label: equation_convergence_un |
| 100 | +
|
| 101 | + \begin{eqnarray} |
| 102 | + h_{t+1} -h_{t} &=&\left\| W_{t}-\varepsilon_{t}\,\nabla g\left( W_{t}\right) -W^{\ast }\right\| |
| 103 | + ^{2}-\left\|W_{t}-W^{\ast}\right\| ^{2} |
| 104 | + \end{eqnarray} |
| 105 | +
|
| 106 | +Par conséquent : |
| 107 | + |
| 108 | +.. math:: |
| 109 | +
|
| 110 | + h_{t+1}-h_{t}=-2\varepsilon_{t}\underset{>0} {\underbrace{\left( W_{t}-W^{\ast}\right) |
| 111 | + ^{\prime}\,\nabla g\left( W_{t}\right) |
| 112 | + }}+\varepsilon_{t}^{2}\,\left\| \,\nabla C\left( W_{t}\right) \right\| |
| 113 | + ^{2}\leqslant\varepsilon_{t}^{2}\,\left\| \,\nabla g\left( W_{t}\right) |
| 114 | + \right\| ^{2}\leqslant\varepsilon_{t}^{2}\,\left( A^{2} +B^{2}h_{t}\right) |
| 115 | + |
| 116 | +D'où : |
| 117 | + |
| 118 | +.. math:: |
| 119 | +
|
| 120 | + h_{t+1}-h_{t}\left( 1+\varepsilon_{t}^{2}B^{2}\right) \leqslant\varepsilon_{t}^{2}\,A^{2} |
| 121 | + |
| 122 | +On pose :math:`\pi_{t}= \prod_{k=1}^t \left( 1+\varepsilon_{k}^{2}B^{2}\right) ^{-1}` |
| 123 | +alors en multipliant des deux côtés par :math:`\pi_{t+1}`, on obtient : |
| 124 | + |
| 125 | +.. math:: |
| 126 | +
|
| 127 | + \begin{array}{rcl} |
| 128 | + \pi_{t+1}h_{t+1}-\pi_{t}h_{t} &\leqslant& \varepsilon_{t}^{2}\,A^{2}\pi_{t+1}\\ |
| 129 | + \text{d'où }\pi_{q+1}h_{q+1}-\pi_{p}h_{p} &\leqslant& |
| 130 | + \sum_{t=p}^q \varepsilon_{t}^{2}\,A^{2}\pi_{t+1} \leqslant |
| 131 | + \sum_{t=p}^{q} \varepsilon_{t}^{2} \, A^{2}\Pi \leqslant \sum_{t=p}^{q} \varepsilon_{t}^{2}\,A^{2}\Pi |
| 132 | + \underset{t \longrightarrow |
| 133 | + \infty}{\longrightarrow} 0 |
| 134 | + \end{array} |
| 135 | +
|
| 136 | +Comme la série :math:`\sum_t \pa{\pi_{t+1}h_{t+1}-\pi_{t}h_{t}}` vérifie le critère de Cauchy, elle est convergente. Par conséquent : |
| 137 | + |
| 138 | +.. math:: |
| 139 | +
|
| 140 | + \underset{q\rightarrow\infty}{\lim}\pi_{q+1}h_{q+1}=0=\underset{q\rightarrow \infty}{\lim}\Pi h_{q+1} |
| 141 | + |
| 142 | +D'où :math:`\underset{q\rightarrow\infty}{\lim}h_{q}=0`. |
| 143 | + |
| 144 | +*Partie 3* |
| 145 | + |
| 146 | + |
| 147 | +La série :math:`\sum_t\pa{h_{t+1}-h_{t}}` est convergente car :math:`\Pi h_t \sim \pi_t h_t`. |
| 148 | +:math:`\sum_{t\geqslant0}\varepsilon_{t}^{2}\,\left\| \,\nabla g\left( W_{t}\right) \right\| ^{2}` |
| 149 | +l'est aussi (d'après **H3**). |
| 150 | + |
| 151 | +D'après :eq:`equation_convergence_un`, |
| 152 | +la série :math:`\sum_{t\geqslant 0}\varepsilon_{t}\left( W_{t}-W^{\ast }\right) ^{\prime} \, |
| 153 | +\nabla g\left( W_{t}\right)` est donc convergente. |
| 154 | +Or d'après les hypothèses **H2**, **H4**, elle ne peut l'être que si : |
| 155 | + |
| 156 | +.. math:: |
| 157 | + :nowrap: |
| 158 | +
|
| 159 | + \begin{eqnarray} |
| 160 | + \underset{t\rightarrow\infty}{\lim}W_{t}&=&W^{\ast} |
| 161 | + \end{eqnarray} |
| 162 | +
|
| 163 | +
|
| 164 | +
|
| 165 | +Si ce théorème prouve la convergence |
| 166 | +de la méthode de Newton, il ne précise pas à quelle vitesse cette convergence |
| 167 | +s'effectue et celle-ci peut parfois être très lente. Plusieurs variantes |
| 168 | +ont été développées regroupées sous le terme de méthodes de quasi-Newton dans le but |
| 169 | +d'améliorer la vitesse de convergence (voir :ref:`rn_section_train_rn`). |
| 170 | + |
| 171 | +Ce théorème peut être étendu dans le cas où la fonction :math:`g` |
| 172 | +n'a plus un seul minimum global mais plusieurs minima locaux ([Bottou1991]_), |
| 173 | +dans ce cas, la suite :math:`\pa{W_{t}}` converge vers un mimimum local. |
| 174 | +Dans le cas des réseaux de neurones, la fonction à optimiser est : |
| 175 | + |
| 176 | +.. math:: |
| 177 | + :nowrap: |
| 178 | + :label: equation_fonction_erreur_g |
| 179 | + |
| 180 | + \begin{eqnarray} |
| 181 | + G\pa{W} &=& \sum_{i=1}^{N} e\pa {Y_{i}, \widehat{Y_{i}^W}} \\ |
| 182 | + &=& \sum_{i=1}^{N} e\pa {Y_{i}, f \pa{W,X_{i}}} |
| 183 | + \end{eqnarray} |
| 184 | +
|
| 185 | +Dès que les fonctions de transfert ne sont pas linéaires, |
| 186 | +il existe une multitude de minima locaux, ce nombre croissant avec celui des coefficients. |
| 187 | + |
| 188 | + |
| 189 | + |
| 190 | + |
0 commit comments