Articulo de referencia

Normalización por lotes

En las redes neuronales artificiales , la normalización por lotes (también conocida como normalización por lotes ) es una técnica de normalización que se utiliza para hacer que ...

En las redes neuronales artificiales , la normalización por lotes (también conocida como normalización por lotes ) es una técnica de normalización que se utiliza para hacer que el entrenamiento sea más rápido y estable ajustando las entradas de cada capa: recentrándolas alrededor de cero y reescalándolas a un tamaño estándar. Fue introducida por Sergey Ioffe y Christian Szegedy en 2015. [ 1 ]

Los expertos aún debaten por qué la normalización por lotes funciona tan bien. Inicialmente se pensó que abordaba el desplazamiento interno de covariables , un problema en el que la inicialización de parámetros y los cambios en la distribución de las entradas de cada capa afectan la tasa de aprendizaje de la red. [ 1 ] Sin embargo, investigaciones más recientes sugieren que no corrige este desplazamiento, sino que suaviza la función objetivo —una guía matemática que la red sigue para mejorar—, lo que mejora el rendimiento. [ 2 ] En redes muy profundas, la normalización por lotes puede causar inicialmente una explosión de gradiente severa —donde las actualizaciones de la red crecen de forma incontrolable—, pero esto se gestiona con atajos llamados conexiones de salto en redes residuales. [ 3 ] Otra teoría es que la normalización por lotes ajusta los datos manejando su tamaño y ruta por separado, acelerando el entrenamiento. [ 4 ]

Cambio de covariable interna

Cada capa de una red neuronal tiene entradas que siguen una distribución específica, la cual cambia durante el entrenamiento debido a dos factores principales: los valores iniciales aleatorios de la configuración de la red ( inicialización de parámetros ) y la variación natural de los datos de entrada. Este patrón de cambio que afecta a las entradas de las capas internas de la red se denomina desplazamiento de covariables internas . Si bien no existe una definición estricta totalmente consensuada, los experimentos demuestran que implica cambios en las medias y varianzas de estas entradas durante el entrenamiento.

La normalización por lotes se desarrolló inicialmente para abordar el cambio interno de covariables. [ 1 ] Durante el entrenamiento, a medida que se ajustan los parámetros de las capas precedentes, la distribución de las entradas a la capa actual cambia en consecuencia, de modo que la capa actual necesita reajustarse constantemente a nuevas distribuciones. Este problema es particularmente grave en redes profundas, ya que pequeños cambios en las capas ocultas menos profundas se amplifican a medida que se propagan dentro de la red, lo que resulta en un cambio significativo en las capas ocultas más profundas. La normalización por lotes se propuso para reducir estos cambios no deseados, acelerar el entrenamiento y producir modelos más fiables.

Además de abordar el posible cambio de covariables internas, la normalización por lotes ofrece varias ventajas adicionales. Permite que la red utilice una tasa de aprendizaje más alta (un ajuste que controla la velocidad de aprendizaje de la red) sin causar problemas como gradientes evanescentes o explosivos, donde las actualizaciones se vuelven demasiado pequeñas o demasiado grandes. También parece tener un efecto regularizador, mejorando la capacidad de la red para generalizar a nuevos datos, lo que reduce la necesidad de dropout , una técnica utilizada para prevenir el sobreajuste (cuando un modelo aprende demasiado bien los datos de entrenamiento y falla con datos nuevos). Adicionalmente, las redes que utilizan normalización por lotes son menos sensibles a la elección de los ajustes iniciales o las tasas de aprendizaje, lo que las hace más robustas y adaptables.

Procedimientos

Transformación

En una red neuronal, la normalización por lotes se logra mediante un paso de normalización que fija las medias y varianzas de las entradas de cada capa. Idealmente, la normalización se realizaría sobre todo el conjunto de entrenamiento, pero para utilizar este paso junto con métodos de optimización estocástica , resulta poco práctico usar la información global. Por lo tanto, la normalización se limita a cada minilote en el proceso de entrenamiento.

Usemos B para denotar un mini-lote de tamaño m del conjunto de entrenamiento completo. La media y la varianza empíricas de B podrían denotarse como

μB=1metroi=1metroincógnitai{\displaystyle \mu _{B}={\frac {1}{m}}\sum _{i=1}^{m}x_{i}}yσB2=1metroi=1metro(incógnitaiμB)2{\displaystyle \sigma _{B}^{2}={\frac {1}{m}}\sum _{i=1}^{m}(x_{i}-\mu _{B})^{2}}.

Para una capa de la red con entrada d- dimensional,incógnita=(incógnita(1),...,incógnita(d)){\displaystyle x=(x^{(1)},...,x^{(d)})}, cada dimensión de su entrada se normaliza (es decir, se recentra y se reescala) por separado,

incógnita^i(k)=incógnitai(k)μB(k)(σB(k))2+ϵ{\displaystyle {\hat {x}}_{i}^{(k)}={\frac {x_{i}^{(k)}-\mu _{B}^{(k)}}{\sqrt {\left(\sigma _{B}^{(k)}\right)^{2}+\epsilon }}}}, dóndek[1,d]{\displaystyle k\in [1,d]}y i[1,metro]{\displaystyle i\in [1,m]};μB(k){\displaystyle \mu _{B}^{(k)}}yσB(k){\displaystyle \sigma _{B}^{(k)}}son la media y la desviación estándar por dimensión, respectivamente.

ϵ{\displaystyle \epsilon }se agrega en el denominador para la estabilidad numérica y es una constante positiva arbitrariamente pequeña. La activación normalizada resultanteincógnita^(k){\displaystyle {\sombrero {x}}^{(k)}}tienen media cero y varianza unitaria, siϵ{\displaystyle \epsilon }no se tiene en cuenta. Para restaurar el poder de representación de la red, sigue un paso de transformación como

yi(k)=γ(k)incógnita^i(k)+β(k){\displaystyle y_{i}^{(k)}=\gamma ^{(k)}{\hat {x}}_{i}^{(k)}+\beta ^{(k)}},

donde los parámetrosγ(k){\displaystyle \gamma ^{(k)}}yβ(k){\displaystyle \beta ^{(k)}}Posteriormente se aprenden en el proceso de optimización.

Formalmente, la operación que implementa la normalización por lotes es una transformaciónBnorteγ(k),β(k):incógnita1...metro(k)y1...metro(k){\displaystyle BN_{\gamma ^{(k)},\beta ^{(k)}}:x_{1...m}^{(k)}\rightarrow y_{1...m}^{(k)}}llamada transformación de normalización por lotes. La salida de la transformación BNy(k)=Bnorteγ(k),β(k)(incógnita(k)){\displaystyle y^{(k)}=BN_{\gamma ^{(k)},\beta ^{(k)}}(x^{(k)})}Luego se pasa a otras capas de la red, mientras que la salida normalizada incógnita^i(k){\displaystyle {\hat {x}}_{i}^{(k)}}permanece dentro de la capa actual.

Retropropagación

La transformada BN descrita es una operación diferenciable , y el gradiente de la pérdidal{\displaystyle l} con respecto a los diferentes parámetros se pueden calcular directamente con la regla de la cadena .

Específicamente,lyi(k){\displaystyle {\frac {\partial l}{\partial y_{i}^{(k)}}}}depende de la elección de la función de activación , y el gradiente frente a otros parámetros podría expresarse como una función delyi(k){\displaystyle {\frac {\partial l}{\partial y_{i}^{(k)}}}}:

lincógnita^i(k)=lyi(k)γ(k){\displaystyle {\frac {\partial l}{\partial {\hat {x}}_{i}^{(k)}}}={\frac {\partial l}{\partial y_{i}^{(k)}}}\gamma ^{(k)}},

lγ(k)=i=1metrolyi(k)incógnita^i(k){\displaystyle {\frac {\partial l}{\partial \gamma ^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}{\hat {x}}_{i}^{(k)}},lβ(k)=i=1metrolyi(k){\displaystyle {\frac {\partial l}{\partial \beta ^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}},lσB(k)2=i=1metrolyi(k)(incógnitai(k)μB(k))(γ(k)2(σB(k)2+ϵ)3/2){\displaystyle {\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}(x_{i}^{(k)}-\mu _{B}^{(k)})\left(-{\frac {\gamma ^{(k)}}{2}}(\sigma _{B}^{(k)^{2}}+\epsilon )^{-3/2}\right)},lμB(k)=i=1metrolyi(k)γ(k)σB(k)2+ϵ+lσB(k)21metroi=1metro(2)(incógnitai(k)μB(k)){\displaystyle {\frac {\partial l}{\partial \mu _{B}^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}{\frac {-\gamma ^{(k)}}{\sqrt {\sigma _{B}^{(k)^{2}}+\epsilon }}}+{\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}{\frac {1}{m}}\sum _{i=1}^{m}(-2)\cdot (x_{i}^{(k)}-\mu _{B}^{(k)})},

ylincógnitai(k)=lincógnita^i(k)1σB(k)2+ϵ+lσB(k)22(incógnitai(k)μB(k))metro+lμB(k)1metro{\displaystyle {\frac {\partial l}{\partial x_{i}^{(k)}}}={\frac {\partial l}{\partial {\hat {x}}_{i}^{(k)}}}{\frac {1}{\sqrt {\sigma _{B}^{(k)^{2}}+\epsilon }}}+{\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}{\frac {2(x_{i}^{(k)}-\mu _{B}^{(k)})}{m}}+{\frac {\partial l}{\partial \mu _{B}^{(k)}}}{\frac {1}{m}}}.

Inferencia

Durante la etapa de entrenamiento, los pasos de normalización dependen de los minilotes para garantizar un entrenamiento eficiente y confiable. Sin embargo, en la etapa de inferencia, esta dependencia ya no es útil. En cambio, el paso de normalización en esta etapa se calcula con las estadísticas de la población de tal manera que la salida podría depender de la entrada de manera determinista. La media de la población,mi[incógnita(k)]{\displaystyle E[x^{(k)}]}y varianza,Var[incógnita(k)]{\displaystyle \operatorname {Var} [x^{(k)}]}, se calculan como:

mi[incógnita(k)]=miB[μB(k)]{\displaystyle E[x^{(k)}]=E_{B}[\mu _{B}^{(k)}]}, yVar[incógnita(k)]=metrometro1miB[(σB(k))2]{\displaystyle \operatorname {Var} [x^{(k)}]={\frac {m}{m-1}}E_{B}[\left(\sigma _{B}^{(k)}\right)^{2}]}.

Por lo tanto, las estadísticas de población constituyen una representación completa de los minilotes.

La transformación BN en el paso de inferencia se convierte así en:

y(k)=Bnorteγ(k),β(k)inf(incógnita(k))=γ(k)incógnita(k)mi[incógnita(k)]Var[incógnita(k)]+ϵ+β(k){\displaystyle y^{(k)}=BN_{\gamma ^{(k)},\beta ^{(k)}}^{\text{inf}}(x^{(k)})=\gamma ^{(k)}{\frac {x^{(k)}-E[x^{(k)}]}{\sqrt {\operatorname {Var} [x^{(k)}]+\epsilon }}}+\beta ^{(k)}},

dóndey(k){\displaystyle y^{(k)}}se pasa a las siguientes capas en lugar deincógnita(k){\displaystyle x^{(k)}}Dado que los parámetros son fijos en esta transformación, el procedimiento de normalización por lotes consiste esencialmente en aplicar una transformación lineal a la función de activación.

Teoría

Aunque la normalización por lotes se ha popularizado debido a su sólido rendimiento empírico, el mecanismo de funcionamiento del método aún no se comprende del todo. La explicación dada en el artículo original [ 1 ] era que la normalización por lotes funciona reduciendo el desplazamiento de covariables internas, pero esto ha sido cuestionado por trabajos más recientes. Un experimento [ 5 ] entrenó una red VGG-16 [ 6 ] bajo 3 regímenes de entrenamiento diferentes: estándar (sin normalización por lotes), normalización por lotes y normalización por lotes con ruido añadido a cada capa durante el entrenamiento. En el tercer modelo, el ruido tiene una media distinta de cero y una varianza distinta de la unidad, es decir, introduce explícitamente un desplazamiento de covariables. A pesar de esto, mostró una precisión similar a la del segundo modelo, y ambos tuvieron un mejor rendimiento que el primero, lo que sugiere que el desplazamiento de covariables no es la razón por la que la normalización por lotes mejora el rendimiento.

El uso de la normalización por lotes hace que los elementos de un lote dejen de ser i.i.d. , lo que puede generar dificultades en el entrenamiento debido a una estimación de gradiente de menor calidad. [ 7 ]

Suavidad

Una explicación alternativa [ 5 ] es que la mejora con la normalización por lotes se debe en cambio a la producción de un espacio de parámetros más suave y gradientes más suaves, como se formaliza mediante una constante de Lipschitz más pequeña .

Consideremos dos redes idénticas, una contiene capas de normalización por lotes y la otra no; luego se comparan los comportamientos de estas dos redes. Denotemos las funciones de pérdida comoL^{\displaystyle {\hat {L}}}yL{\displaystyle L}, respectivamente. Sea la entrada a ambas redesincógnita{\displaystyle x}y la salida seay{\displaystyle y}, para el cualy=Wincógnita{\displaystyle y=Wx}, dóndeW{\displaystyle W}son los pesos de la capa. Para la segunda red,y{\displaystyle y}Además, pasa por una capa de normalización por lotes. Denotemos la activación normalizada comoy^{\displaystyle {\hat {y}}}, que tiene media cero y varianza unitaria. Sea la activación transformadaz=γy^+β{\displaystyle z=\gamma {\hat {y}}+\beta }y supongamos queγ{\displaystyle \gamma }yβ{\displaystyle \beta }son constantes. Finalmente, denotemos la desviación estándar sobre un minilote.yj^Rmetro{\displaystyle {\hat {y_{j}}}\in \mathbb {R} ^{m}}comoσj{\displaystyle \sigma _{j}}.

Primero, se puede demostrar que la magnitud del gradiente de una red normalizada por lotes,||yiL^||{\displaystyle ||\triangledown _{y_{i}}{\hat {L}}||}, está acotado, con el límite expresado como

||yiL^||2γ2σj2(||yiL||21metro1,yiL21metroyiL,y^j2){\displaystyle ||\triangledown _{y_{i}}{\hat {L}}||^{2}\leq {\frac {\gamma ^{2}}{\sigma _{j}^{2}}}{\Bigg (}||\triangledown _{y_{i}}L||^{2}-{\frac {1}{m}}\langle 1,\triangledown _{y_{i}}L\rangle ^{2}-{\frac {1}{m}}\langle \triangledown _{y_{i}}L,{\hat {y}}_{j}\rangle ^{2}{\bigg )}}.

Dado que la magnitud del gradiente representa la Lipschitzidad de la pérdida, esta relación indica que una red normalizada por lotes podría lograr una Lipschitzidad comparativamente mayor. Nótese que el límite se vuelve más ajustado cuando el gradienteyiL^{\displaystyle \triangledown _{y_{i}}{\hat {L}}}se correlaciona con la activaciónyi^{\displaystyle {\hat {y_{i}}}}, que es un fenómeno común. La escala deγ2σj2{\displaystyle {\frac {\gamma ^{2}}{\sigma _{j}^{2}}}}Esto también es significativo, ya que la varianza suele ser grande.

En segundo lugar, la forma cuadrática del hessiano de pérdida con respecto a la activación en la dirección del gradiente puede acotarse como

(yjL^)TL^yjyj(yjL^)γ2σ2(L^yj)T(Lyjyj)(L^yj)γmetroσ2yjL,yj^||L^yj||2{\displaystyle (\triangledown _{y_{j}}{\hat {L}})^{T}{\frac {\partial {\hat {L}}}{\partial y_{j}\partial y_{j}}}(\triangledown _{y_{j}}{\hat {L}})\leq {\frac {\gamma ^{2}}{\sigma ^{2}}}{\bigg (}{\frac {\partial {\hat {L}}}{\partial y_{j}}}{\bigg )}^{T}{\bigg (}{\frac {\partial L}{\partial y_{j}\partial y_{j}}}{\bigg )}{\bigg (}{\frac {\partial {\hat {L}}}{\partial y_{j}}}{\bigg )}-{\frac {\gamma }{m\sigma ^{2}}}\langle \triangledown _{y_{j}}L,{\hat {y_{j}}}\rangle {\bigg |}{\bigg |}{\frac {\partial {\hat {L}}}{\partial y_{j}}}{\bigg |}{\bigg |}^{2}}.

La escala deγ2σj2{\displaystyle {\frac {\gamma ^{2}}{\sigma _{j}^{2}}}}indica que el hessiano de la pérdida es resistente a la varianza del mini-lote, mientras que el segundo término del lado derecho sugiere que se vuelve más suave cuando el hessiano y el producto interno no son negativos. Si la pérdida es localmente convexa , entonces el hessiano es semidefinido positivo , mientras que el producto interno es positivo sigramoj^{\displaystyle {\hat {g_{j}}}}se dirige hacia el mínimo de la pérdida. Por lo tanto, de esta desigualdad se podría concluir que el gradiente generalmente se vuelve más predictivo con la capa de normalización por lotes.

A continuación, se procede a traducir los límites relacionados con la pérdida respecto a la activación normalizada a un límite para la pérdida respecto a los pesos de la red:

gramoj^γ2σj2(gramoj2metroμgramoj2λ2yjL,y^j2){\displaystyle {\hat {g_{j}}}\leq {\frac {\gamma ^{2}}{\sigma _{j}^{2}}}(g_{j}^{2}-m\mu _{g_{j}}^{2}-\lambda ^{2}\langle \triangledown _{y_{j}}L,{\hat {y}}_{j}\rangle ^{2})}, dóndegramoj=metroaincógnita||incógnita||λ||WL||2{\displaystyle g_{j}=max_{||X||\leq \lambda }||\triangledown _{W}L||^{2}}ygramo^j=metroaincógnita||incógnita||λ||WL^||2{\displaystyle {\hat {g}}_{j}=max_{||X||\leq \lambda }||\triangledown _{W}{\hat {L}}||^{2}}.

Además de un paisaje más uniforme, se demuestra que la normalización por lotes podría resultar en una mejor inicialización con la siguiente desigualdad:

||W0W^||2||W0W||21||W||2(||W||2W,W0)2{\displaystyle ||W_{0}-{\hat {W}}^{*}||^{2}\leq ||W_{0}-W^{*}||^{2}-{\frac {1}{||W^{*}||^{2}}}(||W^{*}||^{2}-\langle W^{*},W_{0}\rangle )^{2}}, dóndeW{\displaystyle W^{*}}yW^{\displaystyle {\hat {W}}^{*}}son los pesos óptimos locales para las dos redes, respectivamente.

Algunos investigadores argumentan que el análisis anterior no puede capturar completamente el rendimiento de la normalización por lotes, ya que la demostración solo considera el autovalor más grande, o equivalentemente, una dirección en el paisaje en todos los puntos. Se sugiere que es necesario tener en cuenta el espectro de autovalores completo para realizar un análisis concluyente. [ 8 ] [ 5 ]

Medida

Dado que se hipotetiza que las capas de normalización por lotes podrían reducir el desplazamiento interno de covariables, se diseñó un experimento para medir cuantitativamente dicha reducción. En primer lugar, es necesario definir matemáticamente el concepto de desplazamiento interno de covariables. Específicamente, para cuantificar el ajuste que realizan los parámetros de una capa en respuesta a las actualizaciones de las capas anteriores, se mide la correlación entre los gradientes de la función de pérdida antes y después de que se actualicen todas las capas anteriores, ya que los gradientes podrían capturar los cambios derivados del método de entrenamiento de primer orden. Si el desplazamiento introducido por las modificaciones en las capas anteriores es pequeño, la correlación entre los gradientes sería cercana a 1.

Se calcula la correlación entre los gradientes para cuatro modelos: una red VGG estándar , [ 6 ] una red VGG con capas de normalización por lotes, una red lineal profunda (DLN) de 25 capas entrenada con descenso de gradiente por lotes completos y una red DLN con capas de normalización por lotes. Curiosamente, se muestra que los modelos VGG estándar y DLN tienen correlaciones de gradientes más altas en comparación con sus contrapartes, lo que indica que las capas adicionales de normalización por lotes no reducen el desplazamiento de covariables internas.

Gradientes evanescentes/explosivos

Aunque la normalización por lotes se introdujo originalmente para aliviar los problemas de desaparición o explosión del gradiente , una red de normalización por lotes profunda sufre de hecho una explosión del gradiente en el momento de la inicialización, independientemente de lo que utilice para la no linealidad. Por lo tanto, el panorama de optimización está muy lejos de ser suave para una red de normalización por lotes profunda inicializada aleatoriamente. Más precisamente, si la red tieneL{\displaystyle L}capas, entonces el gradiente de los pesos de la primera capa tiene norma>doλL{\displaystyle >c\lambda ^{L}}para algunosλ>1,do>0{\displaystyle \lambda >1,c>0}dependiendo únicamente de la no linealidad. Para cualquier no linealidad fija,λ{\displaystyle \lambda }disminuye a medida que aumenta el tamaño del lote. Por ejemplo, para ReLU,λ{\displaystyle \lambda }disminuye aπ/(π1)1.467{\displaystyle \pi /(\pi -1)\approx 1.467}a medida que el tamaño del lote tiende a infinito. En la práctica, esto significa que las redes de normalización de lotes profundas son imposibles de entrenar. Esto solo se soluciona mediante conexiones de salto al estilo de las redes residuales . [ 9 ]

Esta explosión de gradiente en la superficie contradice la propiedad de suavidad explicada en la sección anterior, pero en realidad son consistentes. La sección anterior estudia el efecto de insertar una única norma de lote en una red, mientras que la explosión de gradiente depende del apilamiento de normas de lote típicas de las redes neuronales profundas modernas.

Desacoplamiento

Otra posible razón del éxito de la normalización por lotes es que desacopla la longitud y la dirección de los vectores de peso y, por lo tanto, facilita un mejor entrenamiento.

Al interpretar la normalización por lotes como una reparametrización del espacio de pesos, se puede demostrar que la longitud y la dirección de los pesos están separadas y, por lo tanto, se pueden entrenar por separado. Para una unidad de red neuronal particular con entradaincógnita{\displaystyle x}y vector de pesow{\displaystyle w}, denotamos su salida comoF(w)=miincógnita[ϕ(incógnitaTw)]{\displaystyle f(w)=E_{x}[\phi (x^{T}w)]}, dóndeϕ{\displaystyle \phi }es la función de activación, y denotamosS=mi[incógnitaincógnitaT]{\displaystyle S=E[xx^{T}]}. Supongamos quemi[incógnita]=0{\displaystyle E[x]=0}y que el espectro de la matrizS{\displaystyle S}está limitado como0<μ=λmetroinorte(S){\displaystyle 0<\mu =\lambda _{min}(S)},L=λmetroaincógnita(S)<{\displaystyle L=\lambda _{max}(S)<\infty }, de tal manera queS{\displaystyle S}es simétrica definida positiva. Agregar normalización por lotes a esta unidad da como resultado:

FBnorte(w,γ,β)=miincógnita[ϕ(Bnorte(incógnitaTw))]=miincógnita[ϕ(γ(incógnitaTwmiincógnita[incógnitaTw]varincógnita[incógnitaTw]1/2)+β)]{\displaystyle f_{BN}(w,\gamma ,\beta )=E_{x}[\phi (BN(x^{T}w))]=E_{x}{\bigg [}\phi {\bigg (}\gamma ({\frac {x^{T}w-E_{x}[x^{T}w]}{var_{x}[x^{T}w]^{1/2}}})+\beta {\bigg )}{\bigg ]}}, por definición.

El término de varianza se puede simplificar de tal manera quevarincógnita[incógnitaTw]=wTSw{\displaystyle var_{x}[x^{T}w]=w^{T}Sw}. Supongamos queincógnita{\displaystyle x}tiene media cero yβ{\displaystyle \beta }puede omitirse, entonces se deduce que

FBnorte(w,γ)=miincógnita[ϕ(γincógnitaTw(wTSw)1/2)]{\displaystyle f_{BN}(w,\gamma )=E_{x}{\bigg [}\phi {\bigg (}\gamma {\frac {x^{T}w}{(w^{T}Sw)^{1/2}}}{\bigg )}{\bigg ]}}, dónde(wTSw)12{\displaystyle (w^{T}Sw)^{\frac {1}{2}}}es la norma inducida deS{\displaystyle S},||w||s{\displaystyle ||w||_{s}}.

Por lo tanto, se podría concluir queFBnorte(w,γ)=miincógnita[ϕ(incógnitaTw~)]{\displaystyle f_{BN}(w,\gamma )=E_{x}[\phi (x^{T}{\tilde {w}})]}, dóndew~=γw||w||s{\displaystyle {\tilde {w}}=\gamma {\frac {w}{||w||_{s}}}}, yγ{\displaystyle \gamma }yw{\displaystyle w}Consideremos su longitud y dirección por separado. Esta propiedad podría utilizarse para demostrar la convergencia más rápida de problemas con normalización por lotes.

Convergencia lineal

Problema de mínimos cuadrados

Con la interpretación de la reparametrización, se podría demostrar que aplicar la normalización por lotes al problema de mínimos cuadrados ordinarios logra una tasa de convergencia lineal en el descenso de gradiente, que es más rápida que el descenso de gradiente regular con una convergencia sublineal.

Denotemos el objetivo de minimizar un problema de mínimos cuadrados ordinarios como

minw~RdFOLS(w~)=minw~Rd(miincógnita,y[(yincógnitaTw~)2])=minw~Rd(2Tw~+w~TSw~){\displaystyle \min _{{\tilde {w}}\in R^{d}}f_{OLS}({\tilde {w}})=\min _{{\tilde {w}}\in R^{d}}(E_{x,y}[(y-x^{T}{\tilde {w}})^{2}])=\min _{{\tilde {w}}\in R^{d}}(2u^{T}{\tilde {w}}+{\tilde {w}}^{T}S{\tilde {w}})}, dónde=mi[yincógnita]{\displaystyle u=E[-yx]}yS=mi[incógnitaincógnitaT]{\displaystyle S=E[xx^{T}]}.

Desdew~=γw||w||s{\displaystyle {\tilde {w}}=\gamma {\frac {w}{||w||_{s}}}}, el objetivo se convierte así en

minwRd{0},γRFOLS(w,γ)=minwRd{0},γR(2γTw||w||S+γ2){\displaystyle \min _{w\in R^{d}\backslash \{0\},\gamma \in R}f_{OLS}(w,\gamma )=\min _{w\in R^{d}\backslash \{0\},\gamma \in R}{\bigg (}2\gamma {\frac {u^{T}w}{||w||_{S}+\gamma ^{2}}}{\bigg )}}donde se excluye el 0 para evitar que haya 0 en el denominador.

Dado que el objetivo es convexo con respecto aγ{\displaystyle \gamma }, su valor óptimo podría calcularse estableciendo la derivada parcial de la función objetivo frente aγ{\displaystyle \gamma }a 0. El objetivo podría simplificarse aún más a ser

minwRd{0}ρ(w)=minwRd{0}(wTTwwTSw){\displaystyle \min _{w\in R^{d}\backslash \{0\}}\rho (w)=\min _{w\in R^{d}\backslash \{0\}}{\bigg (}-{\frac {w^{T}uu^{T}w}{w^{T}Sw}}{\bigg )}}.

Nótese que esta función objetivo es una forma del cociente de Rayleigh generalizado.

ρ~(w)=wTBwwTAw{\displaystyle {\tilde {\rho }}(w)={\frac {w^{T}Bw}{w^{T}Aw}}}, dóndeBRd×d{\displaystyle B\in R^{d\times d}}es una matriz simétrica yARd×d{\displaystyle A\in R^{d\times d}}es una matriz simétrica definida positiva .

Se demuestra que la tasa de convergencia del descenso de gradiente del cociente de Rayleigh generalizado es

λ1ρ(wt+1)ρ(wt+1λ2)(1λ1λ2λ1λmetroinorte)2tλ1ρ(wt)ρ(wt)λ2{\displaystyle {\frac {\lambda _{1}-\rho (w_{t+1})}{\rho (w_{t+1}-\lambda _{2})}}\leq {\bigg (}1-{\frac {\lambda _{1}-\lambda _{2}}{\lambda _{1}-\lambda _{min}}}{\bigg )}^{2t}{\frac {\lambda _{1}-\rho (w_{t})}{\rho (w_{t})-\lambda _{2}}}}, dóndeλ1{\displaystyle \lambda _{1}}es el mayor valor propio deB{\displaystyle B},λ2{\displaystyle \lambda _{2}}es el segundo valor propio más grande deB{\displaystyle B}, yλmetroinorte{\displaystyle \lambda _{min}}es el valor propio más pequeño deB{\displaystyle B}. [ 10 ]

En nuestro caso,B=T{\displaystyle B=uu^{T}}es una matriz de rango uno, y el resultado de convergencia se puede simplificar en consecuencia. Específicamente, consideremos pasos de descenso de gradiente de la formawt+1=wtηtρ(wt){\displaystyle w_{t+1}=w_{t}-\eta _{t}\triangledown \rho (w_{t})}con tamaño de pasoηt=wtTSwt2L|ρ(wt)|{\displaystyle \eta _{t}={\frac {w_{t}^{T}Sw_{t}}{2L|\rho (w_{t})|}}}y comenzando desdeρ(w0)0{\displaystyle \rho (w_{0})\neq 0}, entonces

ρ(wt)ρ(w)(1μL)2t(ρ(w0)ρ(w)){\displaystyle \rho (w_{t})-\rho (w^{*})\leq {\bigg (}1-{\frac {\mu }{L}}{\bigg )}^{2t}(\rho (w_{0})-\rho (w^{*}))}.

Problema de aprendizaje del semiespacio

El problema del aprendizaje de semiplanos se refiere al entrenamiento del perceptrón , que es la forma más simple de red neuronal. El problema de optimización en este caso es

minw~RdFLH(w~)=miy,incógnita[ϕ(zTw~)]{\displaystyle \min _{{\tilde {w}}\in R^{d}}f_{LH}({\tilde {w}})=E_{y,x}[\phi (z^{T}{\tilde {w}})]}, dóndez=yincógnita{\displaystyle z=-yx}yϕ{\displaystyle \phi }es una función de pérdida arbitraria.

Supongamos queϕ{\displaystyle \phi }es infinitamente diferenciable y tiene una derivada acotada. Supongamos que la función objetivoFLH{\displaystyle f_{LH}}esζ{\displaystyle \zeta }- suave , y esa es una soluciónα=argramometroinorteα||F(αw)||2{\displaystyle \alpha ^{*}=argmin_{\alpha }||\triangledown f(\alpha w)||^{2}}existe y está acotado de tal manera que<α<{\displaystyle -\infty <\alpha ^{*}<\infty }También supongamosz{\displaystyle z}es una variable aleatoria normal multivariada . Con la suposición gaussiana, se puede demostrar que todos los puntos críticos se encuentran en la misma línea, para cualquier elección de función de pérdida.ϕ{\displaystyle \phi }. Específicamente, el gradiente deFLH{\displaystyle f_{LH}}podría representarse como

w~FLH(w~)=do1(w~)+do2(w~)Sw~{\displaystyle \triangledown _{\tilde {w}}f_{LH}({\tilde {w}})=c_{1}({\tilde {w}})u+c_{2}({\tilde {w}})S{\tilde {w}}}, dónde do1(w~)=miz[ϕ(1)(zTw~)]miz[ϕ(2)(zTw~)](Tw~){\displaystyle c_{1}({\tilde {w}})=E_{z}[\phi ^{(1)}(z^{T}{\tilde {w}})]-E_{z}[\phi ^{(2)}(z^{T}{\tilde {w}})](u^{T}{\tilde {w}})},do2(w~)=miz[ϕ(2)(zTw~)]{\displaystyle c_{2}({\tilde {w}})=E_{z}[\phi ^{(2)}(z^{T}{\tilde {w}})]}, yϕ(i){\displaystyle \phi ^{(i)}}es eli{\displaystyle i}-ésima derivada deϕ{\displaystyle \phi }.

Al establecer el gradiente en 0, se deduce que los puntos críticos acotadosw~{\displaystyle {\tilde {w}}_{*}}puede expresarse comow~=gramoS1{\displaystyle {\tilde {w}}_{*}=g_{*}S^{-1}u}, dóndegramo{\displaystyle g_{*}}depende dew~{\displaystyle {\tilde {w}}_{*}}yϕ{\displaystyle \phi }Al combinar esta propiedad global con el desacoplamiento de la dirección de la longitud, se podría demostrar que este problema de optimización converge linealmente.

En primer lugar, se diseña una variación del descenso de gradiente con normalización por lotes, el Descenso de Gradiente en Parametrización Normalizada (GDNP), para la función objetivo.minwRd{0},γRFLH(w,γ){\displaystyle \min _{w\in R^{d}\backslash \{0\},\gamma \in R}f_{LH}(w,\gamma )}, de modo que la dirección y la longitud de los pesos se actualizan por separado. Denotemos el criterio de parada de GDNP como

h(wt,γt)=miz[ϕ(zTw~t)](Twt)miz[ϕ(zTw~t)](Twt)2{\displaystyle h(w_{t},\gamma _{t})=E_{z}[\phi '(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})-E_{z}[\phi ''(z^{T}{\tilde {w}}_{t})](u^{T}w_{t})^{2}}.

Sea el tamaño del paso

st=s(wt,γt)=||wt||S3Lgramoth(wt,γt){\displaystyle s_{t}=s(w_{t},\gamma _{t})=-{\frac {||w_{t}||_{S}^{3}}{Lg_{t}h(w_{t},\gamma _{t})}}}.

Para cada paso, sih(wt,γt)0{\displaystyle h(w_{t},\gamma _{t})\neq 0}, luego actualice la dirección como

wt+1=wtstwF(wt,γt){\displaystyle w_{t+1}=w_{t}-s_{t}\triangledown _{w}f(w_{t},\gamma _{t})}.

Luego actualice la longitud según

γt=Bisección(Ts,F,wt){\displaystyle \gamma _{t}={\text{Bisection}}(T_{s},f,w_{t})}, dóndeBisección(){\displaystyle {\text{Bisection()}}}es el algoritmo de bisección clásico yTs{\displaystyle T_{s}}es el número total de iteraciones ejecutadas en el paso de bisección.

Denotemos el número total de iteraciones comoTd{\displaystyle T_{d}}, entonces el resultado final de GDNP es

w~Td=γTdwTd||wTd||S{\displaystyle {\tilde {w}}_{T_{d}}=\gamma _{T_{d}}{\frac {w_{T_{d}}}{||w_{T_{d}}||_{S}}}}.

El algoritmo GDNP modifica ligeramente el paso de normalización por lotes para facilitar el análisis matemático.

Se puede demostrar que en GDNP, la derivada parcial deFLH{\displaystyle f_{LH}}frente al componente de longitud converge a cero a una tasa lineal, de tal manera que

(γFLH(wt,at(Ts))22Tsζ|bt(0)at(0)|μ2{\displaystyle (\partial _{\gamma }f_{LH}(w_{t},a_{t}^{(T_{s})})^{2}\leq {\frac {2^{-T_{s}}\zeta |b_{t}^{(0)}-a_{t}^{(0)}|}{\mu ^{2}}}}, dóndeat(0){\displaystyle a_{t}^{(0)}}ybt0{\displaystyle b_{t}^{0}}son los dos puntos de partida del algoritmo de bisección a la izquierda y a la derecha, respectivamente.

Además, para cada iteración, la norma del gradiente deFLH{\displaystyle f_{LH}}con respecto aw{\displaystyle w}converge linealmente, de tal manera que

||wt||S2||FLH(wt,gramot)||S12(1μL)2tΦ2γt2(ρ(w0)ρ){\displaystyle ||w_{t}||_{S}^{2}||\triangledown f_{LH}(w_{t},g_{t})||_{S^{-1}}^{2}\leq {\bigg (}1-{\frac {\mu }{L}}{\bigg )}^{2t}\Phi ^{2}\gamma _{t}^{2}(\rho (w_{0})-\rho ^{*})}.

Combinando estas dos desigualdades, se podría obtener una cota para el gradiente con respecto aw~Td{\displaystyle {\tilde {w}}_{T_{d}}}:

||w~F(w~Td)||2(1μL)2TdΦ2(ρ(w0)ρ)+2Tsζ|bt(0)at(0)|μ2{\displaystyle ||\triangledown _{\tilde {w}}f({\tilde {w}}_{T_{d}})||^{2}\leq {\bigg (}1-{\frac {\mu }{L}}{\bigg )}^{2T_{d}}\Phi ^{2}(\rho (w_{0})-\rho ^{*})+{\frac {2^{-T_{s}}\zeta |b_{t}^{(0)}-a_{t}^{(0)}|}{\mu ^{2}}}}, de tal manera que se garantice que el algoritmo converge linealmente.

Aunque la demostración se basa en el supuesto de una entrada gaussiana, también se ha demostrado experimentalmente que GDNP podría acelerar la optimización sin esta restricción.

Redes neuronales

Consideremos un perceptrón multicapa (MLP) con una capa oculta ymetro{\displaystyle m}unidades ocultas con mapeo desde la entradaincógnitaRd{\displaystyle x\in R^{d}}a una salida escalar descrita como

Fincógnita(W~,Θ)=i=1metroθiϕ(incógnitaTw~(i)){\displaystyle F_{x}({\tilde {W}},\Theta )=\sum _{i=1}^{m}\theta _{i}\phi (x^{T}{\tilde {w}}^{(i)})}, dóndew~(i){\displaystyle {\tilde {w}}^{(i)}}yθi{\displaystyle \theta _{i}}son los pesos de entrada y salida de la unidadi{\displaystyle i}En consecuencia, yϕ{\displaystyle \phi }es la función de activación y se supone que es una función tanh .

Los pesos de entrada y salida podrían entonces optimizarse con

minW~,Θ(Fnortenorte(W~,Θ)=miy,incógnita[l(yFincógnita(W~,Θ))]){\displaystyle \min _{{\tilde {W}},\Theta }(f_{NN}({\tilde {W}},\Theta )=E_{y,x}[l(-yF_{x}({\tilde {W}},\Theta ))])}, dóndel{\displaystyle l}es una función de pérdida,W~={w~(1),...,w~(metro)}{\displaystyle {\tilde {W}}=\{{\tilde {w}}^{(1)},...,{\tilde {w}}^{(m)}\}}, yΘ={θ(1),...,θ(metro)}{\displaystyle \Theta =\{\theta ^{(1)},...,\theta ^{(m)}\}}.

Considere fijoΘ{\displaystyle \Theta }y optimizando únicamenteW~{\displaystyle {\tilde {W}}}, se puede demostrar que los puntos críticos deFnortenorte(W~){\displaystyle f_{NN}({\tilde {W}})}de una unidad oculta en particulari{\displaystyle i},w^(i){\displaystyle {\hat {w}}^{(i)}}, todos se alinean a lo largo de una línea dependiendo de la información entrante en la capa oculta, de tal manera que

w^(i)=do^(i)S1{\displaystyle {\hat {w}}^{(i)}={\hat {c}}^{(i)}S^{-1}u}, dóndedo^(i)R{\displaystyle {\hat {c}}^{(i)}\in R}es un escalar,i=1,...,metro{\displaystyle i=1,...,m}.

Este resultado podría probarse estableciendo el gradiente deFnortenorte{\displaystyle f_{NN}}a cero y resolviendo el sistema de ecuaciones.

Aplique el algoritmo GDNP a este problema de optimización alternando la optimización sobre las diferentes unidades ocultas. Específicamente, para cada unidad oculta, ejecute GDNP para encontrar el óptimo.W{\displaystyle W}yγ{\displaystyle \gamma }. Con la misma elección de criterio de parada y tamaño de paso, se deduce que

||w~(i)F(w~t(i))||S12(1μL)2tdo(ρ(w0)ρ)+2Ts(i)ζ|bt(0)at(0)|μ2{\displaystyle ||\triangledown _{{\tilde {w}}^{(i)}}f({\tilde {w}}_{t}^{(i)})||_{S^{-1}}^{2}\leq {\bigg (}1-{\frac {\mu }{L}}{\bigg )}^{2t}C(\rho (w_{0})-\rho ^{*})+{\frac {2^{-T_{s}^{(i)}}\zeta |b_{t}^{(0)}-a_{t}^{(0)}|}{\mu ^{2}}}}.

Dado que los parámetros de cada unidad oculta convergen linealmente, todo el problema de optimización tiene una tasa de convergencia lineal. [ 8 ]

Referencias

  1. 1 2 3 4 Ioffe, Sergey; Szegedy, Christian (2015). "Normalización por lotes: acelerando el entrenamiento de redes neuronales profundas mediante la reducción del desplazamiento de covariables internas". arXiv : 1502.03167 [ cs.LG ].
  2. Santurkar, Shibani; Tsipras, Dimitris; Ilyas, Andrew; Madry, Aleksander (29 de mayo de 2018). "¿Cómo ayuda la normalización por lotes a la optimización?". arXiv : 1805.11604 [ stat.ML ].
  3. Yang, Greg; Pennington, Jeffrey; Rao, Vinay; Sohl-Dickstein, Jascha; Schoenholz, Samuel S. (2019). "Una teoría de campo medio de la normalización por lotes". arXiv : 1902.08129 [ cs.NE ].
  4. Kohler, Jonas; Daneshmand, Hadi; Lucchi, Aurelien; Zhou, Ming; Neymeyr, Klaus; Hofmann, Thomas (27 de mayo de 2018). "Tasas de convergencia exponencial para la normalización por lotes: el poder del desacoplamiento longitud-dirección en la optimización no convexa". arXiv : 1805.10694 [ stat.ML ].
  5. 1 2 3 Santurkar, Shibani; Tsipras, Dimitris; Ilyas, Andrew; Madry, Aleksander (29 de mayo de 2018). "¿Cómo ayuda la normalización por lotes a la optimización?". arXiv : 1805.11604 [ stat.ML ].
  6. 1 2 Simonyan, Karen; Andrew, Zisserman (2014). "Redes neuronales convolucionales muy profundas para el reconocimiento de imágenes a gran escala". arXiv : 1409.1556 [ cs.CV ].
  7. Ba, J., Kiros, JR, & Hinton, GE (2016). Normalización de capas. ArXiv, abs/1607.06450.
  8. 1 2 Kohler, Jonas; Daneshmand, Hadi; Lucchi, Aurelien; Zhou, Ming; Neymeyr, Klaus; Hofmann, Thomas (27 de mayo de 2018). "Tasas de convergencia exponencial para la normalización por lotes: el poder del desacoplamiento longitud-dirección en la optimización no convexa". arXiv : 1805.10694 [ stat.ML ].
  9. Yang, Greg; Pennington, Jeffrey; Rao, Vinay; Sohl-Dickstein, Jascha; Schoenholz, Samuel S. (2019). "Una teoría de campo medio de la normalización por lotes". arXiv : 1902.08129 [ cs.NE ].
  10. Knyazev, Neymeyr (2003). "Una teoría geométrica para la iteración inversa precondicionada III: una estimación de convergencia corta y precisa para problemas generalizados de valores propios" . Álgebra lineal y sus aplicaciones . 358 ( 1–3 ): 95–114 . doi : 10.1016/S0024-3795(01)00461-X .

Lecturas adicionales

  • Ioffe, Sergey; Szegedy, Christian (2015). "Normalización por lotes: Aceleración del entrenamiento de redes neuronales profundas mediante la reducción del desplazamiento de covariables internas", ICML'15: Actas de la 32.ª Conferencia Internacional sobre Aprendizaje Automático - Volumen 37, julio de 2015, páginas 448-456
  • Simonyan, Karen; Zisserman, Andrew (2014). "Redes neuronales convolucionales muy profundas para el reconocimiento de imágenes a gran escala". arXiv : 1409.1556 [ cs.CV ].