¿Cómo se usa la pérdida de peso para la regularización en las redes neuronales?

La disminución de peso [1] se define como la multiplicación de cada peso en el descenso del gradiente en cada época por un factor [matemático] \ lambda [/ matemático] menor que uno y mayor que cero.

Esta técnica es equivalente a introducir un término de regularización [matemática] L_ {2} [/ matemática] en la función de costo que se desea optimizar.

Verifiquemos esta afirmación con una regresión lineal simple [2].

Para simplificar aún más las cosas, supongamos que no hay intercepción .

En esta configuración, la función de costo es [matemática] f (a): = \ frac {1} {2n} \ sum_ {i = 0} ^ {n} (y_ {i} -ax_ {i}) ^ {2 } [/ math] donde [math] a [/ math] es el parámetro a encontrar (el [math] 2 [/ math] no es necesario pero hace que el cálculo sea más conveniente).

Aplicando la pendiente de gradiente (después de calcular la derivada de [matemáticas] f [/ matemáticas]) para encontrar [matemáticas] a [/ matemáticas] da (el índice [matemáticas] m [/ matemáticas] indica la época mth):

[matemáticas] a_ {m + 1} = a_ {m} – \ alpha \ frac {1} {2n} \ sum_ {i = 0} ^ {n} (- 2x_ {i} (y_ {i} -a_ { m} x_ {i}) = a_ {m} + \ alpha \ frac {1} {n} \ sum_ {i = 0} ^ {n} x_ {i} (y_ {i} -a_ {m} x_ { i}) = a_ {m} + \ alpha B-a_ {m} \ alpha C [/ math]

donde [matemáticas] B: = \ sum_ {i = 0} ^ {n} x_ {i} y_ {i} [/ matemáticas] y [matemáticas] C: = \ sum_ {i = 0} ^ {n} x_ { i} ^ {2} [/ matemáticas]

Después de “suficientes” iteraciones (esto se entiende por [matemática] m -> + \ infty [/ matemática]) y suponiendo que [matemática] a_ {m} [/ matemática] converge hacia [matemática] \ hat {a} [/ matemáticas], uno tiene la siguiente ecuación:

[matemáticas] \ hat {a} = \ hat {a} + \ alpha B- \ hat {a} \ alpha C [/ math]

Se resuelve con [matemáticas] \ hat {a} = \ frac {B} {C} [/ matemáticas] (suponiendo que [matemáticas] C [/ matemáticas] no es [matemáticas] 0 [/ matemáticas])

Ahora, si multiplicamos [math] a_ {m} [/ math] por [math] \ lambda [/ math] en cada iteración, la solución [math] \ hat {a} _ {\ lambda} [/ math] resuelve :

[matemáticas] \ hat {a} _ {\ lambda} = \ lambda (\ hat {a} _ {\ lambda} + \ alpha B- \ hat {a} _ {\ lambda} \ alpha C) = \ lambda \ alfa B + \ hat {a} _ {\ lambda} \ lambda (1- \ alpha C) [/ math]

Así

[matemáticas] \ hat {a} _ {\ lambda} = \ frac {\ lambda \ alpha B} {(1- \ lambda) + \ lambda \ alpha C} [/ math]

Deje [math] \ gamma _ {\ lambda}: = \ frac {1- \ lambda} {\ lambda \ alpha} [/ math] (bien definido desde [math] \ alpha [/ math] y [math] \ lambda [ / matemáticas] no son iguales a [matemáticas] 0 [/ matemáticas])

Finalmente, [math] \ hat {a} _ {\ lambda} = \ frac {B} {C + \ gamma _ {\ lambda}} [/ math]

Esta es la pendiente óptima de una regresión lineal simple (sin intercepción) con un termómetro de regularización [matemática] L_ {2} [/ matemática] [matemática] \ gamma _ {\ lambda} [/ matemática]. Consulte esta página de Wikipedia [3] para obtener más detalles.

Esto, si se implementa con éxito, se opone al sobreajuste [4].

Espero que esto haya sido útil.

Notas al pie

[1] Metacademia

[2] Regresión lineal simple – Wikipedia

[3] Regularización de Tikhonov – Wikipedia

[4] Sobreajuste – Wikipedia

La disminución de peso en general es un paso previo que obliga a los pesos de la red a estar más cerca de 0. Las redes neuronales más dispersas tienden a generalizarse mejor, mientras que los pesos demasiado grandes suelen ser un problema.

Sin embargo, en la mayoría de los casos, WD aumenta el rendimiento solo un poco. Otras técnicas de regularización como DropOut y Batch Normalization suelen dar un mejor efecto.