Llegué muy tarde al juego, pero quería publicar para reflejar algunos desarrollos actuales en redes neuronales convolucionales con respecto a omitir conexiones .
Un equipo de investigación de Microsoft ganó recientemente el concurso ImageNet 2015 y publicó un informe técnico de aprendizaje residual profundo para el reconocimiento de imágenes que describe algunas de sus ideas principales.
Una de sus principales contribuciones es este concepto de capas residuales profundas . Estas capas residuales profundas usan conexiones de salto . Utilizando estas capas residuales profundas, pudieron entrenar una red de convulsión de 152 capas para ImageNet 2015. Incluso entrenaron una red de convulsión de más de 1000 capas para el CIFAR-10.
El problema que los motivó es el siguiente:
Cuando las redes más profundas pueden comenzar a converger, se expone un problema de degradación : con el aumento de la profundidad de la red, la precisión se satura (lo que puede no ser sorprendente) y luego se degrada rápidamente. Inesperadamente, dicha degradación no es causada por el sobreajuste , y agregar más capas a un modelo adecuadamente profundo conduce a un mayor error de entrenamiento ...
La idea es que si tomas una red "superficial" y simplemente apilas en más capas para crear una red más profunda, el rendimiento de la red más profunda debería ser al menos tan bueno como la red poco profunda ya que la red más profunda podría aprender exactamente la poca profundidad red estableciendo las nuevas capas apiladas en capas de identidad (en realidad sabemos que es muy poco probable que esto suceda sin métodos arquitectónicos anteriores o métodos de optimización actuales). Observaron que este no era el caso y que el error de entrenamiento a veces empeoraba cuando apilaban más capas sobre un modelo menos profundo.
Por lo tanto, esto los motivó a usar conexiones de omisión y usar las llamadas capas residuales profundas para permitir que su red aprenda desviaciones de la capa de identidad, de ahí el término residual , residual aquí que se refiere a la diferencia de la identidad.
Implementan conexiones de omisión de la siguiente manera:
F( x ) : = H ( x ) - xF( x ) + x = H ( x )F( x )H (x)
De esta manera, el uso de capas residuales profundas a través de conexiones de omisión permite que sus redes profundas aprendan capas de identidad aproximadas, si eso es lo que es óptimo, u óptimo localmente. De hecho, afirman que sus capas residuales:
Mostramos mediante experimentos (Fig. 7) que las funciones residuales aprendidas en general tienen respuestas pequeñas
En cuanto a por qué exactamente esto funciona, no tienen una respuesta exacta. Es muy poco probable que las capas de identidad sean óptimas, pero creen que el uso de estas capas residuales ayuda a precondicionar el problema y que es más fácil aprender una nueva función dada una referencia / referencia de comparación con el mapeo de identidad que aprender una "desde cero" sin usar la línea base de identidad. Quién sabe. Pero pensé que sería una buena respuesta a tu pregunta.
Por cierto, en retrospectiva: la respuesta de sashkello es aún mejor, ¿no?