Identity Mapping
Explora o mapeamento de identidade em deep learning. Aprende como as skip connections evitam gradientes desvanecentes para potenciar redes neuronais como o Ultralytics YOLO26.
Em matemática e álgebra linear, um mapa de identidade ou matriz identidade é uma função que retorna exatamente o mesmo valor que foi usado como sua entrada. No contexto de inteligência artificial (IA) e deep learning, identity mapping refere-se a uma técnica arquitetônica específica usada para passar dados de entrada diretamente para camadas subsequentes de uma rede neural convolucional (CNN) sem quaisquer transformações não lineares. Este conceito foi fortemente popularizado pela introdução de Residual Networks (ResNet) em 2015, que revolucionou a forma como modelos profundos de visão computacional (CV) são estruturados e treinados.
Link to this sectionComo o Identity Mapping funciona#
Redes neurais profundas frequentemente sofrem com o problema do vanishing gradient. Durante a retropropagação, os sinais de erro usados para atualizar os pesos da rede tornam-se exponencialmente menores à medida que viajam para trás através das camadas, impedindo que as camadas iniciais aprendam efetivamente. O identity mapping resolve isso criando "skip connections" ou "shortcut connections".
Em vez de forçar camadas sequenciais a aprender um mapeamento inteiramente novo e não referenciado, elas são projetadas para aprender uma função residual. Matematicamente, se a entrada para um bloco é x, a camada aprende uma transformação F(x). O identity mapping adiciona a entrada original x diretamente à saída dessa transformação, resultando na saída final F(x) + x. Isso garante que, mesmo em redes extremamente profundas, os gradientes possam fluir livremente diretamente através do model backbone. Organizações de pesquisa de IA renomadas como Google DeepMind e OpenAI frequentemente aproveitam esses atalhos arquitetônicos para estabilizar o treinamento em modelos fundamentais massivos.
Link to this sectionIdentity Mapping vs. Identity Preservation#
É crucial distinguir o identity mapping da identity preservation, que possui nome semelhante.
Enquanto o identity mapping é um recurso de codificação estrutural de uma rede neural projetado para otimizar o fluxo de treinamento de machine learning (ML), a identity preservation é uma tarefa de visão computacional distinta. A identity preservation foca em manter a consistência visual de uma pessoa ou objeto específico em diferentes quadros de vídeo no rastreamento de objetos ou em imagens geradas em fluxos de trabalho de IA generativa.
Link to this sectionAplicações no Mundo Real#
O identity mapping serve como o bloco de construção fundamental para muitos modelos de alta precisão usados em produção hoje:
- Detecção Avançada de Objetos: Arquiteturas modernas em tempo real, incluindo o mais recente Ultralytics YOLO26, utilizam blocos residuais avançados que contêm identity maps dentro de suas camadas de extração de características. Isso permite que realizem detecção precisa e de alta velocidade em ambientes complexos como direção autônoma sem degradar o desempenho à medida que a profundidade da rede aumenta.
- Modelos de Classificação de Imagens: Arquiteturas de visão de última geração, extensivamente documentadas em repositórios acadêmicos como arXiv e a IEEE Xplore Digital Library, baseiam-se em identity mappings para treinar com sucesso modelos com centenas de camadas. Frameworks de alto nível como TensorFlow usam esses atalhos para extrair características hierárquicas altamente complexas de conjuntos de dados massivos.
Link to this sectionImplementando Identity Mapping no PyTorch#
Ao construir redes neurais personalizadas, frameworks de deep learning como PyTorch fornecem ferramentas nativas para implementar esses atalhos sem esforço. Você pode usar explicitamente o módulo PyTorch nn.Identity ou simplesmente aplicar a adição matemática dentro do seu forward pass do nn.Module.
O trecho a seguir demonstra um bloco residual básico utilizando um identity map. Observe que desenvolvedores que utilizam a Ultralytics Platform baseada em nuvem para gerenciamento de conjuntos de dados e treinamento de modelos se beneficiam automaticamente dessas estruturas arquitetônicas altamente otimizadas por trás das cenas.
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)





