Diferencia en el uso de gradiente normalizado y gradiente

15

En la configuración general del algoritmo de descenso de gradiente, tenemos donde x n es el punto actual, η es el tamaño del paso y g r a d i e n t x n es el gradiente evaluado en x n . xn+1=xnηgradientxnxnηgradientxnxn

He visto en algún algoritmo, la gente usa gradiente normalizado en lugar de gradiente . Quería saber cuál es la diferencia en el uso de gradiente normalizado y simplemente gradiente .

Aprendiz
fuente
1
¿Puedo hacer una pregunta? ¿Cómo puedo calcular el gradiente normalizado si ya obtuve el vector de gradiente? Si el vector de gradiente es numérico grande, necesito normalizar el gradiente. ¿Podría dar algunos ejemplos intuitivos sobre la normalización del gradiente? ¡Gracias!

Respuestas:

11

ηdictar qué tan lejos queremos movernos en la dirección calculada. Sin embargo, si utiliza un descenso de gradiente no normalizado, en cualquier punto, la distancia que se mueve en la dirección óptima está dictada por la magnitud del gradiente (en esencia, dictada por la superficie de la función objetivo, es decir, un punto en una superficie empinada tendrá alta magnitud, mientras que un punto en la superficie bastante plana tendrá baja magnitud).


η
η
3] Si desea dejar que la magnitud del gradiente dicte el tamaño del paso, entonces utilizará el descenso de gradiente no normalizado. Hay varias otras variantes, como que puedes dejar que la magnitud del gradiente decida el tamaño del paso, pero le pones un límite y así sucesivamente.

Ahora, el tamaño del paso claramente influye en la velocidad de convergencia y estabilidad. Cuál de los tamaños de pasos anteriores funciona mejor depende únicamente de su aplicación (es decir, la función objetivo). En ciertos casos, se puede analizar la relación entre la velocidad de convergencia, la estabilidad y el tamaño del paso. Esta relación puede dar una pista sobre si desea ir con un descenso de gradiente normalizado o no normalizado.

Para resumir, no hay diferencia entre el descenso de gradiente normalizado y no normalizado (en lo que respecta a la teoría detrás del algoritmo). Sin embargo, tiene un impacto práctico en la velocidad de convergencia y estabilidad. La elección de uno sobre el otro se basa únicamente en la aplicación / objetivo en cuestión.

TenaliRaman
fuente
Podría adoptar un enfoque intermedio en el que se normaliza en función del primer gradiente, por ejemplo. Esto todavía haría que el tamaño relativo del gradiente importara en términos del tamaño del paso.
dashnick
2

ηη

Brian Borchers
fuente
2

f(x)=xTxy(t)=X0 0/ /El |El |X0 0El |El |mi-t. Entonces, la norma del gradiente disminuye exponencialmente rápido a medida que se acerca al punto crítico. En tales casos, a menudo es mejor rebotar de un lado a otro varias veces que acercarse muy lentamente. Sin embargo, en general, se sabe que los métodos de primer orden tienen una convergencia muy lenta alrededor de los puntos críticos, por lo que no debería usarlos si realmente le importa la precisión. Si no puede calcular el Hessian de su objetivo analíticamente, aún puede aproximarlo (BFGS).

Fairidox
fuente