Glosario

Redes residuales (ResNet)

Descubre cómo las ResNets revolucionan el aprendizaje profundo resolviendo los gradientes de fuga, permitiendo redes ultradetalladas para el análisis de imágenes, la PNL y mucho más.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

Las Redes Residuales, comúnmente conocidas como ResNet, representan una innovadora arquitectura de redes neuronales convolucionales (CNN ) desarrollada por Kaiming He y sus colegas de Microsoft Research. Presentada en su artículo de 2015"Deep Residual Learning for Image Recognition" (Aprendizaje Residual Profundo para el Reconocimiento de Imágenes), ResNet aborda un importante reto del aprendizaje profundo (AD): el problema de la degradación. Este problema se produce cuando añadir más capas a una red muy profunda conduce a un mayor error de entrenamiento, en contra de la expectativa de que los modelos más profundos deberían funcionar mejor. La innovación de ResNet permitió entrenar con éxito redes sustancialmente más profundas de lo que antes era factible, avanzando significativamente el estado del arte en diversas tareas de visión por ordenador (VC).

Cómo funcionan las ResNets: Saltar Conexiones

La idea central de ResNet es la introducción de "conexiones de salto" o "conexiones de atajo". En las redes profundas tradicionales, cada capa alimenta secuencialmente a la siguiente. ResNet modifica esto permitiendo que la entrada de un bloque de capas se añada a la salida de ese bloque. Esto crea un "bloque residual" en el que las capas aprenden un mapeo residual (la diferencia entre la entrada y la salida deseada) en lugar de intentar aprender directamente todo el mapeo subyacente. Si la función óptima se acerca más a un mapeo de identidad (en el que la salida debe ser la misma que la entrada), es más fácil que la red aprenda a hacer que el residual sea cero (llevando los pesos de las capas apiladas hacia cero) que a aprender el mapeo de identidad propiamente dicho mediante capas no lineales.

Estas conexiones de salto facilitan el flujo de gradiente durante la retropropagación, mitigando el problema del gradiente evanescente que suele afectar a las redes muy profundas. Esto permite construir y entrenar eficazmente redes con cientos o incluso miles de capas, consiguiendo notables mejoras de precisión en conjuntos de datos de referencia difíciles como ImageNet.

Conceptos clave

  • Bloque residual: La unidad de construcción fundamental de una ResNet, formada por unas cuantas capas convolucionales y una conexión de salto que añade la entrada del bloque a su salida.
  • Saltar conexión (acceso directo): Una conexión directa que omite una o más capas, permitiendo un aprendizaje más fácil del flujo de gradiente y del mapeado de identidad.
  • Mapeo de identidad: Cuando una capa o bloque simplemente pasa su entrada sin cambios. Las conexiones de salto facilitan que los bloques residuales aproximen los mapeos de identidad si es necesario.
  • Problema de degradación: fenómeno por el que las redes más profundas obtienen peores resultados (mayor error de entrenamiento y de prueba) que sus homólogas menos profundas, abordado por el aprendizaje residual de ResNet.

Relevancia en la visión por ordenador

Las arquitecturas ResNet se convirtieron rápidamente en una columna vertebral estándar para muchas tareas de visión por ordenador más allá de la clasificación de imágenes, entre las que se incluyen:

  • Detección de objetos: Muchos modelos de detección, como Faster R-CNN y algunas variantes utilizadas en sistemas comparados con Ultralytics YOLO de Ultralytics (por ejemplo RT-DETR), utilizan bases ResNet para la extracción de características(glosario de Detección de Objetos).
  • Segmentación de imágenes: Arquitecturas como Mask R-CNN emplean a menudo ResNet para extraer las ricas características espaciales necesarias para la clasificación a nivel de píxel(glosario de Segmentación de Imágenes).

Su capacidad para extraer potentes características de las imágenes la convirtió en una arquitectura muy versátil y ampliamente adoptada.

Aplicaciones en el mundo real

  1. Análisis de imágenes médicas: Las ResNets se utilizan mucho en el análisis de exploraciones médicas (radiografías, TAC, IRM) para detectar anomalías como tumores o retinopatía diabética. La profundidad que permite la ResNet permite al modelo aprender patrones intrincados indicativos de enfermedades, ayudando a los radiólogos en el diagnóstico. Puedes explorar aplicaciones relacionadas en IA en Radiología y aprender más sobre el campo del análisis de imágenes médicas. Iniciativas como el programa Bridge2AI de los NIH suelen aprovechar este tipo de modelos avanzados.
  2. Conducción autónoma: Los sistemas de percepción de los coches de conducción autónoma suelen depender de arquitecturas basadas en ResNet para la detección y el reconocimiento de objetos en tiempo real de peatones, vehículos, semáforos y señales de tráfico. La robustez y precisión de los modelos ResNet profundos son cruciales para la seguridad en escenarios de conducción complejos(AI in Automotive solutions). Empresas como Waymo detallan la importancia de los sistemas de percepción robustos.

Comparación con otras arquitecturas

  • VGGNet: Aunque VGGNet demostró el beneficio de la profundidad utilizando simples convoluciones 3x3, tuvo problemas de convergencia para redes muy profundas debido a la desaparición de gradientes. ResNet abordó directamente esta limitación(blog Vision AI History, documento VGG).
  • DenseNet: Las DenseNets conectan cada capa con todas las demás de forma directa, promoviendo la reutilización de características. Esto difiere de las conexiones de salto aditivo de ResNet. Ambas pretenden mejorar el flujo de información, pero utilizan mecanismos diferentes(artículo sobre DenseNet).
  • Transformadores de Visión (ViT): Arquitecturas más recientes como ViT utilizan mecanismos de atención, divergiendo del enfoque convolucional de ResNet, y han demostrado un rendimiento competitivo o superior en muchos puntos de referencia, aunque las ResNets siguen siendo influyentes y ampliamente utilizadas.

Herramientas y aplicación

Las arquitecturas ResNet están fácilmente disponibles en los principales marcos de aprendizaje profundo como PyTorchPyTorch sitio oficialPyTorch ) y TensorFlowTensorFlow sitio oficialTensorFlow ). Los modelos preentrenados, a menudo entrenados en ImageNet, son accesibles a través de bibliotecas como torchvision, lo que permite un aprendizaje de transferencia eficaz. Plataformas comoUltralytics HUB permiten a los usuarios aprovechar diversas arquitecturas, incluidas las basadas en ResNet, para entrenar modelos personalizados y desplegarlosUltralytics documentación deUltralytics HUB). Puedes encontrar más recursos educativos sobre las CNN en Stanford CS231n o a través de cursos como los que ofrece DeepLearning.AI.

Leer todo