Identity Mapping
Explora el mapeo de identidad en el aprendizaje profundo. Aprende cómo las conexiones de salto evitan el desvanecimiento de gradientes para potenciar redes neuronales como Ultralytics YOLO26.
En mathematics y en álgebra lineal, una aplicación identidad o identity matrix es una función que devuelve exactamente el mismo valor que se utilizó como entrada. En el contexto de la artificial intelligence (AI) y el deep learning, la identidad de mapeo hace referencia a una técnica arquitectónica específica utilizada para pasar los datos de entrada directamente a las capas posteriores de una convolutional neural network (CNN) sin ninguna transformación no lineal. Este concepto fue muy popularizado por la introducción de las Residual Networks (ResNet) en 2015, lo que revolucionó la forma en que se estructuran y entrenan los modelos profundos de computer vision (CV).
Cómo funciona el mapeo de identidad#
Las redes neuronales profundas sufren frecuentemente del problema del vanishing gradient. Durante la propagación hacia atrás, las señales de error utilizadas para actualizar los pesos de la red se vuelven exponencialmente más pequeñas a medida que viajan hacia atrás a través de las capas, lo que evita que las capas iniciales aprendan de manera efectiva. El mapeo de identidad resuelve esto creando "conexiones de salto" o "conexiones de atajo" ("skip connections" o "shortcut connections").
En lugar de obligar a las capas secuenciales a aprender un mapeo completamente nuevo y sin referencias, están diseñadas para aprender una función residual. Matemáticamente, si la entrada a un bloque es x, la capa aprende una transformación F(x). El mapeo de identidad añade la entrada original x directamente al resultado de esa transformación, lo que da como resultado la salida final F(x) + x. Esto garantiza que, incluso en redes extremadamente profundas, los gradientes puedan fluir sin impedimentos directamente a través del model backbone. Las organizaciones de investigación de IA reputadas como Google DeepMind y OpenAI aprovechan con frecuencia estos atajos arquitectónicos para estabilizar el entrenamiento en modelos fundacionales masivos.
Mapeo de identidad vs. Preservación de identidad#
Es fundamental distinguir el mapeo de identidad de la identity preservation, que tiene un nombre similar.
Mientras que el mapeo de identidad es una característica de codificación estructural de una red neuronal diseñada para optimizar el flujo de entrenamiento de machine learning (ML), la preservación de la identidad es una computer vision task distinta. La preservación de la identidad se centra en mantener la consistencia visual de una persona u objeto específico en diferentes fotogramas de vídeo en el seguimiento de objetos o en imágenes generadas en flujos de trabajo de IA generativa.
Aplicaciones en el mundo real#
El mapeo de identidad sirve como el bloque de construcción fundamental para muchos modelos altamente precisos utilizados hoy en producción:
- Advanced Object Detection: Las arquitecturas modernas en tiempo real, incluido el último Ultralytics YOLO26, utilizan bloques residuales avanzados que contienen mapas de identidad dentro de sus capas de extracción de características. Esto les permite realizar detecciones de alta velocidad y precisión en entornos complejos como la autonomous driving sin degradar el rendimiento a medida que aumenta la profundidad de la red.
- Image Classification Models: Las arquitecturas de visión de última generación, ampliamente documentadas en repositorios académicos como arXiv y la IEEE Xplore Digital Library, confían en los mapeos de identidad para entrenar con éxito modelos con cientos de capas. Los frameworks de alto nivel como TensorFlow utilizan estos atajos para extraer características jerárquicas altamente complejas de conjuntos de datos masivos.
Implementación del mapeo de identidad en PyTorch#
Al construir redes neuronales personalizadas, los frameworks de deep learning como PyTorch proporcionan herramientas nativas para implementar estos atajos sin esfuerzo. Puedes utilizar explícitamente el módulo PyTorch nn.Identity o simplemente aplicar la suma matemática dentro de tu paso hacia adelante (nn.Module forward pass).
El siguiente fragmento demuestra un bloque residual básico que utiliza un mapa de identidad. Ten en cuenta que los desarrolladores que utilizan la Ultralytics Platform basada en la nube para la gestión de conjuntos de datos y el entrenamiento de modelos se benefician automáticamente de estas estructuras arquitectónicas altamente optimizadas bajo el capó.
import torch.nn as nn
class ResidualBlock(nn.Module):
def __init__(self, channels):
super().__init__()
# A simple convolutional layer for feature extraction
self.conv = nn.Conv2d(channels, channels, kernel_size=3, padding=1)
# Explicit identity mapping module
self.identity = nn.Identity()
def forward(self, x):
# The block output is the sum of the learned features and the identity map
return self.conv(x) + self.identity(x)





