El algoritmo de retropropagación (backprop) comienza desde la capa de salida. Entonces sí, el error de salida se incluye en backprop pero no directamente. Está relacionado con la función de pérdida L en uso.
Por ejemplo, una pérdida al cuadrado:
[matemáticas] L_ {s} = \ frac {1} {2} (y- \ hat {y}) ^ 2 [/ matemáticas]
- ¿Por qué en cualquier máquina eléctrica la corriente aumenta cuando aumenta la carga de esa máquina?
- ¿Cuáles son las ventajas y desventajas de la traducción automática estadística y basada en reglas?
- Cómo combinar clasificador basado en reglas y SVM
- Cómo comenzar con el modelado predictivo
- ¿Cuál es el mejor marco de aprendizaje profundo que puedo usar para clasificar las imágenes de resonancia magnética? ¿Keras es adecuado para eso?
donde [math] \ hat {y} [/ math] = salida real, [math] y [/ math] = salida esperada
La derivada de [math] L_ {s} [/ math] con respecto a [math] \ hat {y} [/ math] viene dada por:
[matemáticas] \ frac {\ partial L_ {s}} {\ partial \ hat {y}} = (\ hat {y} -y) [/ math]
El término de error [math] (\ hat {y} -y) [/ math] se factoriza automáticamente cuando encadena las derivadas hacia la capa de entrada.
Si la pérdida no es el error al cuadrado, entonces el término del error será diferente. Por ejemplo, si usamos la pérdida de la bisagra
[matemáticas] L_ {h} = max (0,1-y \ hat {y}) [/ matemáticas]
para [matemáticas] y \ en [-1,1] [/ matemáticas]
La derivada se convierte
[matemáticas] \ frac {\ partial L_ {h}} {\ partial \ hat {y}} = \ begin {cases} -y, & \ text {if} y \ hat {y} <1 \\ 0, & \ text {de lo contrario} \ end {cases} [/ math]
La forma en que el error se propaga hacia atrás en este caso es extraña.
Por lo tanto, no tiene que incluir explícitamente el error de salida en el algoritmo de backprop, el encadenamiento de derivados lo hará por usted.
Espero que esto ayude.