2 votos

¿Es este "método de gradiente estocástico" diferente del algoritmo de descenso de gradiente estocástico?

En un libro de estadística computacional, encontré un método de optimización para encontrar el mínimo local de una función.

Supongamos que tenemos una función diferenciable $f: \mathbb{R}^2 \longrightarrow \mathbb{R}$ . Queremos encontrar un mínimo local $f(\theta)$ de la función. Empezando por la inicialización $\theta^{*}_i$ en lugar de utilizar el descenso de gradiente, se utiliza un método ligeramente diferente.

Dada una sucesión decreciente de números reales positivos $\alpha_i$ (i = 1,2,3,...)

Fije i = 1

  1. Muestra $\omega_i$ de una esfera unitaria uniforme
  2. Estimar la derivada direccional de $f$ en $\theta = \theta^{*}_i$ a lo largo de la dirección $\omega_i$ denotando el resultado como $f_{\omega_i}^{'}( \theta^{*}_i)$
  3. Actualización $\theta^{*}_{i+1}$ := $\theta^{*}_{i} - \alpha_if_{\omega_i}^{'}( \theta^{*}_i)\omega_i$
  4. Parar y volver $\theta^{*}_{i+1}$ si(convergente). En caso contrario aumentar i en 1 y volver a (1)

Esta pregunta se debe principalmente a la confusión terminológica que existe en los distintos libros. Creo que este algoritmo no es el algoritmo tradicional de "descenso de gradiente estocástico" al que suelen referirse los científicos especializados en aprendizaje automático.

¿Es cierto? Y si lo es, ¿cómo suelen llamarlo los estadísticos/científicos del aprendizaje automático?

4voto

user164061 Puntos 281

No conozco el nombre del algoritmo que mencionas. Parece que escalada estocástica que selecciona direcciones aleatorias o Descenso de coordenadas (aleatorio) que utiliza pasos basados en la derivada/gradiente, pero sólo a lo largo de la dirección de una única coordenada (elegida al azar).

Imagino que la ventaja de cambiar el ángulo sería evitar los patrones en zigzag que pueden producirse en el descenso por gradiente.

zigzag


El descenso de gradiente estocástico se refiere al uso de la optimización aleatoria de la función de coste, donde la aleatoriedad se crea seleccionando aleatoriamente sólo una parte de los datos para cada paso.

descenso por gradiente "normal

Descenso en pequeños pasos a lo largo de una superficie compleja. La función de coste se calcula para todos los datos juntos.

non convex

descenso por gradiente estocástico

Descenso en pequeños pasos a lo largo de una superficie simple, pero cada vez basado en un conjunto diferente (aleatorio) de puntos de datos.

En la imagen de abajo puedes ver las trayectorias de descenso para seis valores iniciales diferentes. Las cuatro imágenes corresponden a cuatro puntos diferentes de los datos (sintéticos), que crean funciones diferentes para optimizar. Los pasos de las seis trayectorias recorren cada vez una de esas cuatro superficies (cuál de las cuatro se selecciona aleatoriamente en cada paso).

stochastic gradient descent

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X