Articulo de referencia

Red neuronal residual

Un bloque residual en una red residual profunda. Aquí, la conexión residual omite dos capas. Una red neuronal residual (también conocida como red residual o ResNet ) [ 1 ] es un...

Un bloque residual en una red residual profunda. Aquí, la conexión residual omite dos capas.

Una red neuronal residual (también conocida como red residual o ResNet ) [ 1 ] es una arquitectura de aprendizaje profundo en la que las capas aprenden funciones residuales con referencia a las entradas de la capa. Fue desarrollada en 2015 para el reconocimiento de imágenes y ganó el ImageNet Large Scale Visual Recognition Challenge ( ILSVRC ) de ese año. [ 2 ] [ 3 ]

Como punto de terminología, "conexión residual" se refiere al motivo arquitectónico específico deincógnitaF(incógnita)+incógnita{\displaystyle x\mapsto f(x)+x}, dóndeF{\displaystyle f}es un módulo de red neuronal arbitrario. El motivo ya se había utilizado anteriormente (véase la sección Historia para más detalles). Sin embargo, la publicación de ResNet lo popularizó ampliamente en redes de alimentación directa , apareciendo en redes neuronales aparentemente no relacionadas con ResNet.

La conexión residual estabiliza el entrenamiento y la convergencia de redes neuronales profundas con cientos de capas, y es un motivo común en redes neuronales profundas, como los modelos Transformer (por ejemplo, BERT , y los modelos GPT como ChatGPT ), el sistema AlphaGo Zero , el sistema AlphaStar y el sistema AlphaFold .

Matemáticas

Conexión residual

En un modelo de red neuronal multicapa, consideremos una subred (no residual) con un cierto número de capas apiladas (por ejemplo, 2 o 3). SeaH(incógnita;α){\displaystyle H(x;\alpha )}denotemos la subred. SupongamosH{\displaystyle H^{*}}es la salida óptima deseada de esta subred. El aprendizaje residual simplemente añadeincógnita{\displaystyle x}directamente a la salida, de modo que la salida aprendida óptima ahora se convierte enHincógnita{\displaystyle H^{*}-x}, que se interpreta como un "residuo" con respecto aincógnita{\displaystyle x}.

La operación de "sumar"incógnita{\displaystyle x}" se implementa mediante una "conexión de salto" que realiza un mapeo de identidad para conectar la entrada de la subred con su salida. Esta conexión se denomina "conexión residual" en trabajos posteriores.

DejarF(incógnita;α)=H(incógnita;a)+incógnita{\displaystyle F(x;\alpha )=H(x;a)+x}. La funciónF{\displaystyle F}A menudo se representa mediante la multiplicación de matrices intercalada con funciones de activación y operaciones de normalización (por ejemplo, normalización por lotes o normalización de capas ). En su conjunto, una de estas subredes se denomina "bloque residual". [ 1 ] Una red residual profunda se construye simplemente apilando estos bloques.

La memoria a largo y corto plazo (LSTM) tiene un mecanismo de memoria que sirve como conexión residual. [ 4 ] En una LSTM sin puerta de olvido , una entradaincógnitat{\displaystyle x_{t}}es procesado por una funciónF{\displaystyle F}y se añadió a una célula de memoriadot{\displaystyle c_{t}}, Resultando endot+1=dot+F(incógnitat){\displaystyle c_{t+1}=c_{t}+F(x_{t})}. Una LSTM con una puerta de olvido funciona esencialmente como una red de autopistas .

Para estabilizar la varianza de las entradas de las capas, se recomienda reemplazar las conexiones residuales.incógnita+F(incógnita){\displaystyle x+f(x)}conincógnita/L+F(incógnita){\displaystyle x/L+f(x)}, dóndeL{\displaystyle L}es el número total de capas residuales. [ 5 ]

Conexión de proyección

Si la funciónF{\displaystyle F}es de tipoF:RnorteRmetro{\displaystyle F:\mathbb {R} ^{n}\to \mathbb {R} ^{m}}dóndenortemetro{\displaystyle n\neq m}, entoncesF(incógnita)+incógnita{\displaystyle F(x)+x}no está definido. Para manejar este caso especial, se utiliza una conexión de proyección:

y=F(incógnita)+PAG(incógnita){\displaystyle y=F(x)+P(x)}

dóndePAG{\displaystyle P}es típicamente una proyección lineal, definida porPAG(incógnita)=METROincógnita{\displaystyle P(x)=Mx}dóndeMETRO{\displaystyle M}es unmetro×norte{\displaystyle m\times n}matriz. La matriz se entrena mediante retropropagación , al igual que cualquier otro parámetro del modelo.

propagación de la señal

La introducción de mapeos de identidad facilita la propagación de la señal tanto en sentido directo como inverso. [ 6 ]

Propagación hacia adelante

Si la salida de la{\displaystyle \ell }El bloque residual -ésimo es la entrada al(+1){\displaystyle (\ell +1)}-ésimo bloque residual (suponiendo que no hay función de activación entre bloques), entonces el(+1){\displaystyle (\ell +1)}La entrada -th es:

incógnita+1=F(incógnita)+incógnita{\displaystyle x_{\ell +1}=F(x_{\ell })+x_{\ell }}

Aplicando esta formulación de forma recursiva, por ejemplo:

incógnita+2=F(incógnita+1)+incógnita+1=F(incógnita+1)+F(incógnita)+incógnita{\displaystyle {\begin{aligned}x_{\ell +2}&=F(x_{\ell +1})+x_{\ell +1}\\&=F(x_{\ell +1})+F(x_{\ell })+x_{\ell }\end{aligned}}}

da como resultado la relación general:

incógnitaL=incógnita+i=L1F(incógnitai){\displaystyle x_{L}=x_{\ell }+\sum _{i=\ell }^{L-1}F(x_{i})}

dóndeL{\textstyle L}es el índice de un bloque residual y{\textstyle \ell }es el índice de algún bloque anterior. Esta formulación sugiere que siempre hay una señal que se envía directamente desde un bloque más superficial.{\textstyle \ell }a un bloque más profundoL{\textstyle L}.

Propagación hacia atrás

La formulación de aprendizaje residual proporciona el beneficio adicional de mitigar en cierta medida el problema del gradiente evanescente . Sin embargo, es crucial reconocer que el problema del gradiente evanescente no es la causa raíz del problema de degradación, que se aborda mediante el uso de la normalización. Para observar el efecto de los bloques residuales en la retropropagación, considere la derivada parcial de una función de pérdida.mi{\displaystyle {\mathcal {E}}}con respecto a alguna entrada de bloque residualincógnita{\displaystyle x_{\ell }}. Utilizando la ecuación anterior de propagación hacia adelante para un bloque residual posteriorL>{\displaystyle L>\ell }: [ 6 ]

miincógnita=miincógnitaLincógnitaLincógnita=miincógnitaL(1+incógnitai=L1F(incógnitai))=miincógnitaL+miincógnitaLincógnitai=L1F(incógnitai){\displaystyle {\begin{aligned}{\frac {\partial {\mathcal {E}}}{\partial x_{\ell }}}&={\frac {\partial {\mathcal {E}}}{\partial x_{L}}}{\frac {\partial x_{L}}{\partial x_{\ell }}}\\&={\frac {\partial {\mathcal {E}}}{\partial x_{L}}}\left(1+{\frac {\partial }{\partial x_{\ell }}}\sum _{i=\ell }^{L-1}F(x_{i})\right)\\&={\frac {\partial {\mathcal {E}}}{\partial x_{L}}}+{\frac {\partial {\mathcal {E}}}{\partial x_{L}}}{\frac {\partial }{\partial x_{\ell }}}\sum _{i=\ell }^{L-1}F(x_{i})\end{aligned}}}

Esta formulación sugiere que el cálculo del gradiente de una capa menos profunda,miincógnita{\textstyle {\frac {\partial {\mathcal {E}}}{\partial x_{\ell }}}}, siempre tiene un término posteriormiincógnitaL{\textstyle {\frac {\partial {\mathcal {E}}}{\partial x_{L}}}}que se añade directamente. Incluso si los gradientes de laF(incógnitai){\displaystyle F(x_{i})}Los términos son pequeños, el gradiente totalmiincógnita{\textstyle {\frac {\partial {\mathcal {E}}}{\partial x_{\ell }}}}resiste desaparecer debido al término añadidomiincógnitaL{\textstyle {\frac {\partial {\mathcal {E}}}{\partial x_{L}}}}.

Variantes de bloques residuales

Dos variantes de bloques residuales convolucionales. [ 1 ] Izquierda : un bloque básico que tiene dos capas convolucionales de 3x3. Derecha : un bloque de cuello de botella que tiene una capa convolucional de 1x1 para la reducción de dimensión, una capa convolucional de 3x3 y otra capa convolucional de 1x1 para la restauración de dimensión.

Bloque básico

Un bloque básico es el bloque de construcción más simple estudiado en la ResNet original. [ 1 ] Este bloque consta de dos capas convolucionales secuenciales de 3x3 y una conexión residual. Las dimensiones de entrada y salida de ambas capas son iguales.

Diagrama de bloques de ResNet (2015). Muestra un bloque ResNet con y sin la convolución 1x1. La convolución 1x1 (con paso) se puede usar para cambiar la forma del array, lo cual es necesario para la conexión residual a través de una capa de sobremuestreo/submuestreo.

Bloque de cuello de botella

Un bloque de cuello de botella [ 1 ] consta de tres capas convolucionales secuenciales y una conexión residual. La primera capa de este bloque es una convolución de 1×1 para la reducción de dimensionalidad (por ejemplo, a la mitad de la dimensión de entrada); la segunda capa realiza una convolución de 3×3; la última capa es otra convolución de 1×1 para la restauración de la dimensionalidad. Los modelos ResNet-50, ResNet-101 y ResNet-152 se basan en bloques de cuello de botella. [ 1 ]

Bloqueo de preactivación

El bloque residual de preactivación [ 6 ] aplica funciones de activación antes de aplicar la función residual.F{\displaystyle F}Formalmente, el cálculo de un bloque residual de preactivación se puede escribir como:

incógnita+1=F(ϕ(incógnita))+incógnita{\displaystyle x_{\ell +1}=F(\phi (x_{\ell }))+x_{\ell }}

dóndeϕ{\displaystyle \phi }Puede ser cualquier operación de activación (p. ej., ReLU ) o normalización (p. ej., LayerNorm ). Este diseño reduce el número de mapeos que no son de identidad entre bloques residuales y permite un mapeo de identidad directamente de la entrada a la salida. Este diseño se utilizó para entrenar modelos con entre 200 y más de 1000 capas, y se comprobó que superaba consistentemente a las variantes en las que la ruta residual no es una función de identidad. El ResNet de preactivación con 200 capas tardó 3 semanas en entrenarse para ImageNet en 8 GPU en 2016. [ 6 ]

Desde GPT-2 , los bloques transformadores se han implementado mayoritariamente como bloques de preactivación. Esto se suele denominar "prenormalización" en la literatura sobre modelos transformadores. [ 7 ]

La arquitectura original de Resnet-18. En la publicación original se entrenaron hasta 152 capas (como "ResNet-152"). [ 8 ]

Aplicaciones

Originalmente, ResNet fue diseñado para visión artificial . [ 1 ] [ 8 ] [ 9 ]

La arquitectura Transformer incluye conexiones residuales.

Todas las arquitecturas de transformadores incluyen conexiones residuales. De hecho, los transformadores muy profundos no pueden entrenarse sin ellas. [ 10 ]

El artículo original sobre ResNet no afirmaba estar inspirado en sistemas biológicos. Sin embargo, investigaciones posteriores han relacionado ResNet con algoritmos biológicamente plausibles. [ 11 ] [ 12 ]

Un estudio publicado en Science en 2023 [ 13 ] reveló el conectoma completo del cerebro de un insecto (específicamente el de una larva de mosca de la fruta). Este estudio descubrió "atajos multicapa" que se asemejan a las conexiones de salto en las redes neuronales artificiales, incluidas las ResNets.

Historia

Trabajos anteriores

Se observaron conexiones residuales en neuroanatomía , como Lorente de No (1938). [ 14 ] : Fig 3 McCulloch y Pitts (1943) propusieron redes neuronales artificiales y consideraron aquellas con conexiones residuales. [ 15 ] : Fig 1.h

En 1961, Frank Rosenblatt describió un modelo de perceptrón multicapa (MLP) de tres capas con conexiones de salto. [ 16 ] : 313, Capítulo 15 El modelo fue denominado "sistema de acoplamiento cruzado", y las conexiones de salto eran formas de conexiones de acoplamiento cruzado.

Durante finales de la década de 1980, las conexiones de "capa salteada" se usaban a veces en redes neuronales. Algunos ejemplos son: [ 17 ] [ 18 ] Lang y Witbrock (1988) [ 19 ] entrenaron una red de alimentación directa totalmente conectada donde cada capa se conecta salteando a todas las capas subsiguientes, como la posterior DenseNet (2016). En este trabajo, la conexión residual era de la formaincógnitaF(incógnita)+PAG(incógnita){\displaystyle x\mapsto F(x)+P(x)}, dóndePAG{\displaystyle P}es una conexión de proyección inicializada aleatoriamente. La denominaron "conexión de atajo". Un modelo de lenguaje neuronal temprano utilizó conexiones residuales y las llamó "conexiones directas". [ 20 ]

La celda de memoria a corto y largo plazo (LSTM) puede procesar datos secuencialmente y mantener su estado oculto a lo largo del tiempo. El estado de la celdadot{\displaystyle c_{t}}puede funcionar como una conexión residual generalizada.

Problema de degradación

Sepp Hochreiter descubrió el problema del gradiente evanescente en 1991 [ 21 ] y argumentó que explicaba por qué las formas predominantes de redes neuronales recurrentes en ese entonces no funcionaban para secuencias largas. Él y Schmidhuber diseñaron más tarde la arquitectura LSTM para resolver este problema, [ 4 ] [ 22 ] que tiene un "estado de celda".dot{\displaystyle c_{t}}que puede funcionar como una conexión residual generalizada. La red de autopistas (2015) [ 23 ] [ 24 ] aplicó la idea de una LSTM desplegada en el tiempo a redes neuronales de alimentación directa , dando como resultado la red de autopistas. ResNet es equivalente a una red de autopistas con compuertas abiertas.

Red neuronal recurrente básica estándar (izquierda) y desplegada (derecha)

Durante los primeros días del aprendizaje profundo, hubo intentos de entrenar modelos cada vez más profundos. Ejemplos notables incluyeron AlexNet (2012), que tenía 8 capas, y VGG-19 (2014), que tenía 19 capas. [ 25 ] Sin embargo, apilar demasiadas capas conllevó una fuerte reducción en la precisión del entrenamiento , [ 26 ] conocida como el problema de la "degradación". [ 1 ] En teoría, agregar capas adicionales para profundizar una red no debería resultar en una mayor pérdida de entrenamiento , pero esto es lo que sucedió con VGGNet . [ 1 ] Sin embargo, si las capas adicionales se pueden configurar como mapeos de identidad , entonces la red más profunda representaría la misma función que su contraparte menos profunda. Hay cierta evidencia de que el optimizador no puede aproximarse a los mapeos de identidad para las capas parametrizadas, y el beneficio de las conexiones residuales fue permitir mapeos de identidad por defecto. [ 6 ]

En 2014, el estado del arte consistía en entrenar redes neuronales profundas con entre 20 y 30 capas. [ 25 ] El equipo de investigación de ResNet intentó entrenar redes más profundas probando empíricamente diversos métodos de entrenamiento, hasta que dieron con la arquitectura ResNet. [ 27 ]

Trabajos posteriores

Wide Residual Network (2016) descubrió que usar más canales y menos capas que la ResNet original mejora el rendimiento y la eficiencia computacional de la GPU, y que un bloque con dos convoluciones de 3×3 es superior a otras configuraciones de bloques de convolución. [ 28 ]

DenseNet (2016) [ 29 ] conecta la salida de cada capa con la entrada de cada capa subsiguiente:

incógnita+1=F(incógnita1,incógnita2,,incógnita1,incógnita){\displaystyle x_{\ell +1}=F(x_{1},x_{2},\dots ,x_{\ell -1},x_{\ell })}

La profundidad estocástica [ 30 ] es un método de regularización que descarta aleatoriamente un subconjunto de capas y permite que la señal se propague a través de las conexiones de salto de identidad. También conocido como DropPath , este método regulariza el entrenamiento de modelos profundos, como los transformadores de visión . [ 31 ]

Diagrama de bloques de ResNeXt

ResNeXt (2017) combina el módulo Inception con ResNet. [ 32 ] [ 8 ]

Squeeze-and-Excitation Networks (2018) agregó módulos de compresión y excitación (SE) a ResNet. [ 33 ] Un módulo SE se aplica después de una convolución y toma un tensor de formaRH×W×do{\displaystyle \mathbb {R} ^{H\times W\times C}}(altura, anchura, canales) como entrada. Cada canal se promedia, lo que da como resultado un vector de formaRdo{\displaystyle \mathbb {R} ^{C}}Luego, este se pasa a través de un perceptrón multicapa (con una arquitectura como lineal-ReLU-lineal-sigmoide ) antes de multiplicarse por el tensor original. Ganó el ILSVRC en 2017. [ 34 ]

Referencias

  1. 1 2 3 4 5 6 7 8 9 He, Kaiming ; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2016). Aprendizaje residual profundo para el reconocimiento de imágenes (PDF) . Conferencia sobre visión por computadora y reconocimiento de patrones . arXiv : 1512.03385 . doi : 10.1109/CVPR.2016.90 .
  2. "Resultados de ILSVRC2015" . image-net.org .
  3. ^ Deng, Jia; Dong, Wei; Socher, Richard; Li, Li-Jia; Li, Kai; Li, Fei-Fei (2009). ImageNet: una base de datos de imágenes jerárquica a gran escala . Jornada sobre Visión por Computador y Reconocimiento de Patrones . doi : 10.1109/CVPR.2009.5206848 .
  4. 1 2 Sepp Hochreiter ; Jürgen Schmidhuber (1997). «Memoria larga a corto plazo» . Computación neuronal . 9 (8): 1735–1780 . doi : 10.1162/neco.1997.9.8.1735 . PMID 9377276 . S2CID 1915014 .  
  5. Hanin, Boris; Rolnick, David (2018). Cómo iniciar el entrenamiento: el efecto de la inicialización y la arquitectura (PDF) . Conferencia sobre sistemas de procesamiento de información neuronal . Vol. 31. Curran Associates, Inc. arXiv : 1803.01719 . 
  6. 1 2 3 4 5 Él, Kaiming ; Zhang, Xiangyu; Ren, Shaoqing; Sol, Jian (2016). Mapeos de identidad en redes residuales profundas (PDF) . Conferencia Europea sobre Visión por Computador . arXiv : 1603.05027 . doi : 10.1007/978-3-319-46493-0_38 .
  7. Radford, Alec; Wu, Jeffrey; Child, Rewon; Luan, David; Amodei, Dario; Sutskever, Ilya (14 de febrero de 2019). "Los modelos de lenguaje son aprendices multitarea no supervisados" (PDF) . Archivado (PDF) del original el 6 de febrero de 2021. Recuperado el 19 de diciembre de 2020 .
  8. 1 2 3 Zhang, Aston; Lipton, Zachary; Li, Mu; Smola, Alexander J. (2024). "8.6. Redes residuales (ResNet) y ResNeXt" . Sumérgete en el aprendizaje profundo . Cambridge Nueva York Puerto Melbourne Nueva Delhi Singapur: Cambridge University Press. ISBN 978-1-009-38943-3.
  9. Szegedy, Christian; Ioffe, Sergey; Vanhoucke, Vincent; Alemi, Alex (2017). Inception-v4, Inception-ResNet y el impacto de las conexiones residuales en el aprendizaje (PDF) . Conferencia AAAI sobre Inteligencia Artificial . arXiv : 1602.07261 . doi : 10.1609/aaai.v31i1.11231 .
  10. Dong, Yihe; Cordonnier, Jean-Baptiste; Loukas, Andreas (2021). La atención no es todo lo que necesitas: la atención pura pierde rango de forma exponencial doble con la profundidad (PDF) . Conferencia Internacional sobre Aprendizaje Automático . PMLR. pp. 2793–2803 . arXiv : 2103.03404 . 
  11. Liao, Qianli; Poggio, Tomaso (2016). "Acortando las brechas entre el aprendizaje residual, las redes neuronales recurrentes y la corteza visual". arXiv : 1604.03640 [ cs.LG ].
  12. Xiao, Will; Chen, Honglin; Liao, Qianli; Poggio, Tomaso (2019). Los algoritmos de aprendizaje biológicamente plausibles pueden escalar a grandes conjuntos de datos . Conferencia internacional sobre representaciones de aprendizaje . arXiv : 1811.03567 .
  13. Winding, Michael; Pedigo, Benjamin; Barnes, Christopher; Patsolic, Heather; Park, Youngser; Kazimiers, Tom; Fushiki, Akira; Andrade, Ingrid; Khandelwal, Avinash; Valdes-Aleman, Javier; Li, Feng; Randel, Nadine; Barsotti, Elizabeth; Correia, Ana; Fetter, Fetter; Hartenstein, Volker; Priebe, Carey; Vogelstein, Joshua; Cardona, Albert ; Zlatic, Marta (10 de marzo de 2023). "El conectoma del cerebro de un insecto" . Science . 379 (6636) eadd9330. bioRxiv 10.1101/2022.11.28.516756v1 . doi : 10.1126/science.add9330 . PMC 7614541 . PMID 36893230 . S2CID 254070919 .    
  14. De N, Rafael Lorente (1938-05-01). "Análisis de la actividad de las cadenas de neuronas internunciales" . Journal of Neurophysiology . 1 (3): 207– 244. doi : 10.1152/jn.1938.1.3.207 . ISSN 0022-3077 . 
  15. McCulloch, Warren S.; Pitts, Walter (1 de diciembre de 1943). "Un cálculo lógico de las ideas inmanentes en la actividad nerviosa" . The Bulletin of Mathematical Biophysics . 5 (4): 115– 133. doi : 10.1007/BF02478259 . ISSN 1522-9602 . 
  16. Rosenblatt, Frank (1961). Principios de neurodinámica. Perceptrones y la teoría de los mecanismos cerebrales (PDF) .
  17. Rumelhart, David E., Geoffrey E. Hinton y Ronald J. Williams. "Aprendizaje de representaciones internas mediante propagación de errores", Procesamiento distribuido paralelo . Vol. 1. 1986.
  18. Venables, WN; Ripley, Brain D. (1994). Modern Applied Statistics with S-Plus . Springer. pp. 261–262 . ISBN  978-3-540-94350-1.
  19. Lang, Kevin; Witbrock, Michael (1988). "Aprender a distinguir dos espirales" (PDF) . Actas de la Escuela de Verano de Modelos Conexionistas de 1988 : 52–59 .
  20. Bengio, Yoshua ; Ducharme, Réjean; Vincent, Pascal; Jauvin, Christian (2003). "Un modelo de lenguaje probabilístico neuronal" . Journal of Machine Learning Research . 3 (feb): 1137–1155 . ISSN 1533-7928 . 
  21. Hochreiter, Sepp (1991). Untersuchungen zu dynamischen neuronalen Netzen (PDF) (tesis de diploma). Universidad Técnica de Múnich , Instituto de Informática, asesor: J. Schmidhuber.
  22. Felix A. Gers; Jürgen Schmidhuber; Fred Cummins (2000). "Aprender a olvidar: predicción continua con LSTM". Neural Computation . 12 (10): 2451– 2471. CiteSeerX 10.1.1.55.5709 . doi : 10.1162/089976600300015015 . PMID 11032042 . S2CID 11598600 .   
  23. ^ Srivastava, Rupesh Kumar; Greff, Klaus; Schmidhuber, Jürgen (3 de mayo de 2015). "Redes de Carreteras". arXiv : 1505.00387 [ cs.LG ].
  24. Srivastava, Rupesh Kumar; Greff, Klaus; Schmidhuber, Jürgen (2015). Entrenamiento de redes neuronales muy profundas (PDF) . Conferencia sobre sistemas de procesamiento de información neuronal . arXiv : 1507.06228 .
  25. 1 2 Simonyan, Karen; Zisserman, Andrew (2015-04-10). "Redes neuronales convolucionales muy profundas para el reconocimiento de imágenes a gran escala". arXiv : 1409.1556 [ cs.CV ].
  26. He, Kaiming ; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2015). Profundizando en los rectificadores: superando el rendimiento a nivel humano en la clasificación de ImageNet (PDF) . Conferencia Internacional sobre Visión por Computadora . arXiv : 1502.01852 . doi : 10.1109/ICCV.2015.123 .
  27. Linn, Allison (10 de diciembre de 2015). "Investigadores de Microsoft ganan el desafío de visión artificial ImageNet" . El blog de IA . Archivado del original el 29 de enero de 2018. Consultado el 29 de junio de 2024 .
  28. Zagoruyko, Sergey; Komodakis, Nikos (23-05-2016). "Redes residuales amplias". arXiv : 1605.07146 [ cs.CV ].
  29. Huang, Gao; Liu, Zhuang; van der Maaten, Laurens; Weinberger, Kilian (2017). Redes neuronales convolucionales densamente conectadas (PDF) . Conferencia sobre visión por computadora y reconocimiento de patrones . arXiv : 1608.06993 . doi : 10.1109/CVPR.2017.243 .
  30. Huang, Gao; Sun, Yu; Liu, Zhuang; Weinberger, Kilian (2016). Redes profundas con profundidad estocástica (PDF) . Conferencia Europea sobre Visión por Computadora . arXiv : 1603.09382 . doi : 10.1007/978-3-319-46493-0_39 .
  31. Lee, Youngwan; Kim, Jonghee; Willette, Jeffrey; Hwang, Sung Ju (2022). MPViT: Multi-Path Vision Transformer for Dense Prediction (PDF) . Conferencia sobre Visión por Computadora y Reconocimiento de Patrones . pp. 7287–7296 . arXiv : 2112.11010 . doi : 10.1109/CVPR52688.2022.00714 . 
  32. Xie, Saining; Girshick, Ross; Dollar, Piotr; Tu, Zhuowen; He, Kaiming (2017). Transformaciones residuales agregadas para redes neuronales profundas (PDF) . Conferencia sobre visión por computadora y reconocimiento de patrones . págs. 1492–1500 . arXiv : 1611.05431 . doi : 10.1109/CVPR.2017.634 . 
  33. Hu, Jie; Shen, Li; Sun, Gang (2018). Redes de compresión y excitación (PDF) . Conferencia sobre visión por computadora y reconocimiento de patrones . págs. 7132–7141 . arXiv : 1709.01507 . doi : 10.1109/CVPR.2018.00745 . 
  34. Jie, Hu (2017). Redes de compresión y excitación (PDF) . Más allá del desafío de reconocimiento visual a gran escala de ImageNet, taller en CVPR 2017 (Presentación).