U-Net es una arquitectura especializada de Red Neuronal Convolucional (CNN ) desarrollada originalmente para tareas de segmentación de imágenes biomédicas. Su característica estructura en forma de U permite la localización y segmentación precisas de objetos dentro de imágenes, incluso con datos de entrenamiento limitados. Presentada por Olaf Ronneberger, Philipp Fischer y Thomas Brox en su artículo de 2015"U-Net: Convolutional Networks for Biomedical Image Segmentation", U-Net se hizo rápidamente influyente más allá de su dominio inicial debido a su eficacia en diversas aplicaciones de visión por ordenador (VC) que requieren una clasificación a nivel de píxel.
Arquitectura del núcleo
La arquitectura de la Red-U consta de dos vías principales conectadas de forma que se asemejan a la letra "U": una vía de contracción (también conocida como codificador) y una vía de expansión (también conocida como decodificador).
- Ruta de contratación (codificador): Esta ruta sigue la arquitectura típica de una CNN. Consiste en aplicaciones repetidas de dos convoluciones 3x3 (convoluciones sin relleno), cada una de ellas seguida de una función de activación de Unidad Lineal Rectificada (ReLU), y luego una operación de agrupamiento máximo 2x2 con paso 2 para el muestreo descendente. En cada paso de muestreo descendente, se duplica el número de canales de características. Esta ruta capta el contexto de la imagen de entrada, reduciendo progresivamente la resolución espacial al tiempo que aumenta la información de las características.
- Ruta expansiva (decodificador): Esta ruta consiste en pasos repetidos de muestreo ascendente del mapa de características, seguido de una convolución 2x2 ("convolución ascendente") que reduce a la mitad el número de canales de características, una concatenación con el correspondiente mapa de características recortado de la ruta de contracción, y dos convoluciones 3x3, cada una seguida de un ReLU. El recorte es necesario debido a la pérdida de píxeles del borde en cada convolución. La capa final utiliza una convolución 1x1 para asignar cada vector de características al número deseado de clases. Esta ruta permite una localización precisa aumentando gradualmente la resolución de la salida y combinándola con características de alta resolución de la ruta de contracción mediante conexiones de salto. Las arquitecturas codificador-decodificador como U-Net son habituales en las tareas de segmentación.
- Conexiones de salto: La innovación clave que conecta estas dos rutas es el uso de conexiones de salto. Estas conexiones copian los mapas de características de las capas de la ruta de contracción y los concatenan con los correspondientes mapas de características de muestreo ascendente de la ruta expansiva. Esto permite al descodificador acceder directamente a las características de alta resolución aprendidas por el codificador, lo que es crucial para producir mapas de segmentación con detalles precisos.
Principales características y ventajas
El diseño de U-Net ofrece varias ventajas, sobre todo para las tareas de segmentación:
- Localización precisa: La trayectoria expansiva combinada con las conexiones de salto permite a la red generar máscaras de segmentación con un detalle muy fino.
- Eficacia con conjuntos de datos pequeños: U-Net puede entrenarse eficazmente incluso con conjuntos de datos de entrenamiento relativamente pequeños, lo que es habitual en el análisis de imágenes médicas. A menudo, junto con U-Net, se utiliza un amplio aumento de datos para enseñar a la red las invarianzas deseadas.
- Entrenamiento integral: Toda la red puede entrenarse desde las imágenes de entrada hasta los mapas de segmentación de salida directamente, lo que simplifica el proceso de entrenamiento.
- Buena generalización: Ha demostrado un gran rendimiento no sólo en imágenes médicas, sino también en otros dominios que requieren una segmentación precisa.
Aplicaciones en el mundo real
Aunque inicialmente se diseñó para la obtención de imágenes biomédicas, la arquitectura de U-Net es versátil y se ha adaptado a numerosas aplicaciones:
Distinguir la Red-U de conceptos similares
U-Net se centra principalmente en la segmentación semántica, asignando una etiqueta de clase (por ejemplo, "tumor", "carretera", "edificio") a cada píxel de una imagen. Esto difiere de:
- Segmentación de instancias: Esta tarea no sólo clasifica píxeles, sino que también distingue entre instancias individuales de objetos que pertenecen a la misma clase (por ejemplo, etiquetar el coche_1, el coche_2, el coche_3 de forma distinta). Aunque U-Net puede adaptarse para la segmentación de instancias, los modelos como Mask R-CNN suelen ser más adecuados directamente para esto.
- Detección de objetos: Consiste en identificar objetos y dibujar cuadros delimitadores a su alrededor, en lugar de clasificar cada píxel. Modelos como Ultralytics YOLO son los más avanzados para la detección de objetos, conocidos por su velocidad y precisión.
- Modelos modernos de segmentación: Aunque U-Net sigue siendo influyente, las arquitecturas más nuevas, incluidas las variantes de segmentación de modelos como Ultralytics YOLOv8 y YOLO11proporcionan potentes capacidades de segmentación, a menudo optimizadas para una inferencia más rápida en tiempo real y aprovechando los avances en el aprendizaje profundo, como los bloques transformadores o los diseños sin anclajes.