U-Net es una arquitectura de red neuronal convolucional diseñada para la segmentación de imágenes, presentada por Olaf Ronneberger, Philipp Fischer y Thomas Brox en 2015. La arquitectura presenta una estructura simétrica de codificador-decodificador con conexiones de salto, que permite una localización precisa mientras se preserva la información contextual. U-Net fue desarrollada originalmente para la segmentación de imágenes biomédicas, pero desde entonces ha sido ampliamente adoptada en diversos campos, incluidos la visión por computadora y el modelado generativo. Su diseño ha influido en numerosas arquitecturas posteriores y sigue siendo un punto de referencia en tareas de segmentación.
Arquitectura
La arquitectura U-Net consta de dos caminos principales: un camino de contracción (codificador) y un camino de expansión (decodificador), que juntos forman una estructura en forma de U. El camino de contracción sigue el diseño típico de una red convolucional, con aplicaciones repetidas de dos convoluciones de 3x3, cada una seguida de una unidad lineal rectificada (ReLU) y una operación de agrupación máxima de 2x2 con paso 2 para el submuestreo. En cada paso de submuestreo, el número de canales de características se duplica, lo que permite a la red capturar características cada vez más abstractas mientras reduce la resolución espacial.
El camino de expansión, por el contrario, realiza un sobremuestreo del mapa de características, seguido de una convolución de 2x2 que reduce a la mitad el número de canales de características. Esto se concatena luego con el mapa de características recortado correspondiente del camino de contracción, formando conexiones de salto. La concatenación combina características de alta resolución del codificador con las características del decodificador sobremuestreadas, lo que permite una localización precisa. Luego se aplican dos convoluciones de 3x3, cada una seguida de una ReLU. En la capa final, una convolución de 1x1 mapea el vector de características al número deseado de clases.
Una modificación clave en U-Net es el gran número de canales de características en la parte de sobremuestreo, lo que permite a la red propagar información contextual a capas de mayor resolución. El camino de expansión es más o menos simétrico al camino de contracción, lo que resulta en la característica arquitectura en forma de U. La red solo utiliza la parte válida de cada convolución, lo que significa que no se aplica relleno, lo que conduce a una ligera reducción en las dimensiones espaciales en cada paso. Para manejar las regiones fronterizas, el contexto faltante se extrapola reflejando la imagen de entrada en los límites. El artículo original también sugirió una estrategia de mosaico para imágenes grandes, donde los mosaicos superpuestos se procesan de forma independiente y luego se unen, lo que permite el manejo de imágenes de alta resolución que de otro modo excederían la memoria de la GPU.
Entrenamiento y Aumento de Datos
U-Net se entrena mediante descenso de gradiente estocástico, con una función de pérdida que combina la entropía cruzada con un esquema de ponderación para enfatizar los píxeles de los bordes. El mapa de pesos se precalcula para separar objetos que se tocan de la misma clase, lo que es particularmente útil en la segmentación biomédica donde las células a menudo se superponen. Se emplea el aumento de datos para aumentar el tamaño efectivo del conjunto de entrenamiento, incluyendo deformaciones elásticas y rotaciones, que son especialmente relevantes para imágenes biomédicas donde tales variaciones son comunes. Este enfoque permite a U-Net lograr una alta precisión incluso con relativamente pocas muestras de entrenamiento, como se demostró en el artículo original con la segmentación de estructuras neuronales en imágenes de microscopía electrónica.
Aplicaciones
U-Net se ha aplicado extensamente en la segmentación de imágenes biomédicas, incluida la segmentación de órganos y sistemas corporales en tomografías computarizadas (TC) y resonancias magnéticas (RM). Ejemplos específicos incluyen la segmentación de imágenes cerebrales en el desafío BRATS y la segmentación del hígado. Más allá de la imagen biomédica, U-Net se ha utilizado para tareas como la regresión píxel a píxel en el pansharpening, donde mejora la resolución espacial de imágenes satelitales multiespectrales. También se ha empleado en el análisis de micrografías de materiales en ciencias físicas. Se han desarrollado variaciones de U-Net para la reconstrucción de imágenes médicas, y la arquitectura se ha adaptado para datos 3D, como la U-Net 3D para la segmentación volumétrica a partir de anotaciones dispersas. Otra variante notable es TernausNet, que utiliza un codificador VGG11 preentrenado en ImageNet para mejorar el rendimiento en tareas de segmentación.
Influencia en Modelos Generativos
La arquitectura U-Net también ha encontrado un uso significativo en modelos generativos, particularmente en modelos de difusión. En estos modelos, U-Net sirve como la columna vertebral para la eliminación iterativa de ruido de imágenes, donde aprende a predecir el ruido añadido a una imagen en cada paso del proceso de difusión. Esta tecnología subyace a muchos sistemas modernos de generación de imágenes, incluidos DALL-E, Midjourney y Stable Diffusion. La capacidad de U-Net para preservar detalles finos mientras captura el contexto global la hace muy adecuada para esta tarea. En este contexto, la U-Net a menudo se modifica para incorporar incrustaciones de tiempo y mecanismos de atención para manejar los niveles de ruido variables y modelar dependencias de largo alcance.
Desarrollos Recientes y Extensiones
U-Net ha inspirado numerosas extensiones y mejoras arquitectónicas. Attention U-Net introduce compuertas de atención para enfocarse en características relevantes, mientras que U-Net++ (U-Net anidada) añade conexiones de salto densas para mejorar el flujo de gradientes. U-Net Residual incorpora bloques residuales para facilitar el entrenamiento de redes más profundas. La arquitectura también se ha combinado con transformadores, como en TransUNet, que integra un codificador de transformador para capturar el contexto global. En el contexto de los modelos de difusión, las variantes de U-Net con capas de atención se han convertido en el estándar. Además, ha habido interés en modelos U-Net basados en campos receptivos para la segmentación de imágenes médicas, con el objetivo de optimizar el equilibrio entre la información local y global. La arquitectura continúa siendo un tema de investigación activa, con esfuerzos en curso para mejorar la eficiencia, la precisión y la adaptabilidad a nuevos dominios.
Véase También
- Red neuronal convolucional
- Segmentación de imágenes
- Modelo de difusión
- Codificador-decodificador
- Conexión de salto
- Imagen biomédica
- Red generativa adversarial
- Aprendizaje profundo
Referencias
- Ronneberger, O., Fischer, P., & Brox, T. (2015). U-Net: Convolutional Networks for Biomedical Image Segmentation. In Medical Image Computing and Computer-Assisted Intervention (MICCAI).
- Shelhamer, E., Long, J., & Darrell, T. (2014). Fully Convolutional Networks for Semantic Segmentation. In CVPR.
- Çiçek, Ö., Abdulkadir, A., Lienkamp, S. S., Brox, T., & Ronneberger, O. (2016). 3D U-Net: Learning Dense Volumetric Segmentation from Sparse Annotation. In MICCAI.
- Iglovikov, V., & Shvets, A. (2018). TernausNet: U-Net with VGG11 Encoder Pre-Trained on ImageNet for Image Segmentation. arXiv preprint.
- Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. In NeurIPS.