Las conexiones residuales son lo mismo que las "conexiones de salto". Se utilizan para permitir que los gradientes fluyan a través de una red directamente, sin pasar por funciones de activación no lineales. Las funciones de activación no lineales, por su naturaleza no lineal, hacen que los gradientes exploten o desaparezcan (dependiendo de los pesos).
Las conexiones de salto forman conceptualmente un "autobús" que fluye a lo largo de la red, y a la inversa, los gradientes también pueden fluir hacia atrás a lo largo de ella.
Cada "bloque" de las capas de la red, como las capas de conv, las agrupaciones, etc., toma los valores en un punto a lo largo del bus, y luego añade/resta valores al bus. Esto significa que los bloques afectan a los gradientes y, a la inversa, afectan también a los valores de salida. Sin embargo, existe una conexión directa a través de la red.
En realidad, las resnets ("redes residuales") aún no se conocen del todo bien. Está claro que funcionan empíricamente. Algunos trabajos muestran que son como un conjunto de redes menos profundas. Hay varias teorías :) Que no son necesariamente contradictorias. Pero en cualquier caso, una explicación de por qué funcionan exactamente está fuera del alcance de una pregunta de validación cruzada, siendo una pregunta de investigación abierta :)
Hice un diagrama de cómo veo las redes en mi cabeza, en una respuesta anterior, en Retropropagación gradual a través de las conexiones de salto de ResNet . Aquí está el diagrama que hice, reproducido:
He entendido el concepto principal, pero ¿cómo se suelen implementar estas conexiones residuales? Me recuerdan al funcionamiento de una unidad LSTM.
Entonces, imagina una red donde en cada capa tienes dos bloques de conv, en paralelo: - la entrada entra en cada bloque - las salidas se suman
Ahora, sustituye uno de esos bloques por una conexión directa. Un bloque de identidad, si quieres, o ningún bloque. Eso es una conexión residual/de omisión.
En la práctica, la unidad de conv probablemente sería dos unidades en serie, con una capa de activación en medio.