Obsérvese que el objetivo es llegar a algún mínimo de g(x) . es decir, queremos:
\min_{x \in R^n} g(x)
tenga en cuenta que x puede ser un vector multivariable.
Puesto que no tenemos una forma mejor de alcanzar un mínimo, sigamos la dirección del mayor cambio hacia algún mínimo. Esta es la regla de actualización:
x^{(1)} := x^{(0)} - \alpha \nabla g(x^{(0)})
Sin embargo, ahora nos queda elegir un buen tamaño de escalón \alpha . Desafortunadamente, en cualquier punto de este algoritmo sólo hay dos cosas que sabemos, nuestra conjetura actual g(x^{(0)}) y la dirección de mayor cambio \nabla g(x^{(0)}) . Si pudiéramos, querríamos elegir x^{(1)} tal que corresponda a un mínimo, es decir, que sería bueno tener:
\min_{x \in R^n} g(x) = \min_{x^{(1)} \in X^{(1)} } g(x^{(1)})
donde X^{(1)} denota el conjunto de candidatos x^{(1)} que podríamos elegir (basándonos en las dos cosas que sabemos). Sería impresionante si pudiéramos llegar al mínimo así porque significa que elegimos un nuevo x^{(1)} tal que se encuentre en el mínimo (local) que buscamos. Por desgracia, estamos limitados a la estimación anterior ( x^{(0)} ) que teníamos. Así que en realidad, tenemos:
\min_{x^{(1)} \in X^{(1)} } g(x^{(1)}) \iff \min_{\alpha \in R } g(x^{(1)}), \text{ subject to } x^{(0)} - \alpha \nabla g(x^{(0)})
Así pues, ¡estos dos problemas de optimización son equivalentes!
En este punto, el aspecto clave a tener en cuenta es que nuestro problema original es \min_{x \in R^n} g(x) y lo sustituimos eligiendo un vector multivariable en un conjunto restringido. ¿Cómo está restringido? Sólo podemos elegir x^{(1)} basado en el gradiente y nuestra estimación anterior. Así que tiene sentido elegir \alpha (y por tanto x^{(1)} de forma que minimicemos g(x) en la medida de lo posible. De todas formas, ¡ese era nuestro objetivo desde el principio! Nuestro objetivo es elegir el g(x) por lo que en cada paso, nos aseguramos de elegir un \alpha de forma que minimicemos nuestro objetivo original g(x) en la medida de lo posible.
Abordemos los puntos de la pregunta original:
- La razón por la que min_{\alpha} h(\alpha) es el valor óptimo de \alpha es porque, estamos eligiendo el tamaño de paso que nos asegura minimizar nuestro objetivo g(x) tanto como sea posible, dado que sólo conocemos nuestra estimación previa del mínimo y la dirección del mayor cambio. Así que elegimos un alfa tal que min g(x^{(1)}) se cumple.
- La optimalidad en este caso significa que elegimos un tamaño de paso tal que disminuyamos nuestra función tanto como sea posible (dada la información que tenemos, es decir, sólo conocemos su estimación anterior y la dirección del cambio más pronunciado).
- La justificación es que, dadas las restricciones del problema, no podemos hacer nada mejor que elegir el siguiente x^{(1)} lo más cerca de nuestro objetivo real min g(x) como sea posible.
- Si observa \min_{\alpha \in R } g(x^{(1)}), \text{ subject to } x^{(0)} - \alpha \nabla g(x^{(0)}) tiene la misma forma que nuestro objetivo real min g(x) . Por lo tanto, una solución para \min_{\alpha \in R } g(x^{(1)}), \text{ subject to } x^{(0)} - \alpha \nabla g(x^{(0)}) sólo tratará de minimizar la función objetivo original g sujeto a las restricciones. La propiedad realmente buena de esto es que si la solución óptima x^* está siempre en el conjunto restringido X^{(1)} se elegirá la solución. Observe también que estamos eligiendo un nuevo tamaño de paso basado en nuestra estimación anterior. Así que sólo vamos a elegir un tamaño de paso que minimiza nuestra conjetura actual....¿por qué? Porque así es como planteamos el problema, mira:
\min_{\alpha \in R } g(x^{(1)}), \text{ subject to } x^{(0)} - \alpha \nabla g(x^{(0)})
Elegir un tamaño de paso sólo si mejora nuestra solución actual, es una forma de reformularlo. Así que es clave que en este segundo problema de optimización que elegimos la misma función objetivo para optimizar sobre x^{(1)} . Si elegimos algún otro g' tendríamos:
\min_{\alpha \in R } g'(x^{(1)}), \text{ subject to } x^{(0)} - \alpha \nabla g(x^{(0)})
lo que no mejora necesariamente nuestro objetivo real de minimizar g .
- Sí, es necesario elegir un nuevo tamaño de paso y resolver el problema de optimización en cada paso del algoritmo.
Nunca lo he dicho explícitamente, pero:
X^{(1)} = \{ x^{(1)} \in R^n \mid x^{(0)} - \alpha \nabla g(x^{(0)}), \alpha \in R \}
por lo que sólo estamos considerando puntos en el hiperplano descrito por el vector \nabla g(x^{(0)}) y el punto para "alcanzar" el plano x^{(0)} .