Uma Feature Pyramid Network (FPN) é uma arquitetura de rede neural projetada para extrair mapas de características multiescala para detecção de objetos e outras tarefas de visão computacional. Introduzida por Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan e Serge Belongie em seu artigo de 2017 "Feature Pyramid Networks for Object Detection", a FPN aborda o desafio de detectar objetos em escalas variadas construindo uma pirâmide de mapas de características com informações semânticas ricas em cada nível. Ela se tornou um componente fundamental em muitos detectores modernos, como Faster R-CNN e Mask R-CNN, e é amplamente utilizada em aplicações de Machine learning e Deep learning.
A ideia central da FPN é aproveitar as representações de características hierárquicas e multiescala inerentes de uma rede neural convolucional (tipicamente uma espinha dorsal como ResNet) e aprimorá-las com um caminho de cima para baixo que propaga características semânticas de alto nível para resoluções mais baixas. Isso é alcançado por meio de conexões laterais que mesclam os mapas de características correspondentes do caminho de baixo para cima, permitindo que a rede produza características fortes em cada escala. Como resultado, a FPN melhora o desempenho de detecção, especialmente para objetos pequenos, sem aumentar significativamente o custo computacional.
Arquitetura
A FPN consiste em dois caminhos principais: um caminho de baixo para cima e um caminho de cima para baixo. O caminho de baixo para cima é a rede convolucional padrão de alimentação direta (ex.: ResNet) que calcula mapas de características em múltiplas escalas, tipicamente com passos de 4, 8, 16 e 32 pixels em relação à imagem de entrada. Esses mapas de características são denotados como C2, C3, C4 e C5, correspondendo às saídas dos últimos blocos residuais em cada estágio.
O caminho de cima para baixo gera mapas de características de resolução mais alta por meio de amostragem ascendente de características espacialmente mais grosseiras, mas semanticamente mais fortes, das camadas superiores. Cada mapa de características amostrado é então mesclado com o mapa de características correspondente de baixo para cima por meio de uma camada convolucional 1x1 (para reduzir as dimensões dos canais) seguida de adição elemento a elemento. O resultado mesclado é passado por uma convolução 3x3 para produzir o mapa de características final para aquela escala, denotado como P2, P3, P4 e P5. Esses mapas de características são usados para detecção de objetos, com cada nível responsável por detectar objetos de uma determinada faixa de tamanho.
Aplicações
A FPN foi amplamente adotada em estruturas de detecção de objetos. No Faster R-CNN, a FPN é usada como extrator de características para a Rede de Proposta de Regiões (RPN) e para o classificador baseado em ROI subsequente, permitindo que o modelo lide efetivamente com objetos de tamanhos variados. O Mask R-CNN estende a FPN para segmentação de instâncias, usando as características multiescala para gerar máscaras de segmentação. A FPN também beneficia outras tarefas, como segmentação semântica e detecção de pontos-chave, onde o contexto multiescala é crucial.
Além da detecção, a FPN inspirou arquiteturas semelhantes em outros domínios, como U-Net para segmentação de imagens biomédicas, que também emprega um codificador-decodificador simétrico com conexões de salto. No entanto, o design específico da FPN de conexões laterais e fusão de cima para baixo provou ser particularmente eficaz para tarefas de detecção.
Variantes e Melhorias
Várias variantes da FPN foram propostas para aprimorar sua eficiência e precisão. Por exemplo, a BiFPN (Rede de Pirâmide de Características Bidirecional) usada no EfficientDet introduz fusão de características bidirecional ponderada, permitindo que a rede aprenda a importância de diferentes características de entrada. Outra variante, a PANet (Rede de Agregação de Caminhos), adiciona uma aumento de caminho adicional de baixo para cima para encurtar o caminho de informação entre características de baixo e alto nível. Essas melhorias impulsionaram o estado da arte em detecção de objetos em benchmarks como COCO.
Impacto e Legado
A FPN teve um impacto duradouro no campo da visão computacional. Sua introdução marcou uma mudança do uso de características de escala única para pirâmides de características multiescala, que agora é prática padrão em arquiteturas de detecção. O artigo foi citado milhares de vezes e influenciou pesquisas subsequentes em design de rede residual e fusão de características. Os princípios da FPN também são aplicados em outras áreas, como estratégias de aumento de dados que simulam variações de escala durante o treinamento.
Em resumo, a Feature Pyramid Network é uma inovação arquitetônica fundamental que possibilita detecção robusta de objetos multiescala, e sua influência se estende por muitos sistemas de visão modernos.