Modelos e plataformas de IA
YOLOv7: O Algoritmo de Detecção de Objetos Mais Avançado?

6 de julho de 2022 será marcado como um marco na história da IA, pois foi nesse dia que o YOLOv7 foi lançado. Desde seu lançamento, o YOLOv7 tem sido o tópico mais quente na comunidade de desenvolvedores de Visão Computacional, e por boas razões. O YOLOv7 já está sendo considerado um marco na indústria de detecção de objetos.
Logo após a publicação do artigo do YOLOv7, ele se tornou o modelo de detecção de objetos em tempo real mais rápido e preciso. Mas como o YOLOv7 supera seus antecessores? O que torna o YOLOv7 tão eficiente em realizar tarefas de visão computacional?
Neste artigo, vamos tentar analisar o modelo YOLOv7 e tentar encontrar a resposta para por que o YOLOv7 está se tornando o padrão da indústria. Mas antes de podermos responder a isso, precisamos ter uma visão geral da história da detecção de objetos.
O que é Detecção de Objetos?
A detecção de objetos é uma ramificação da visão computacional que identifica e localiza objetos em uma imagem ou arquivo de vídeo. A detecção de objetos é o bloco de construção de numerousas aplicações, incluindo carros autônomos, vigilância monitorada e até robótica.
Um modelo de detecção de objetos pode ser classificado em duas categorias diferentes, detecção de um único disparo, e detecção de múltiplos disparos.
Detecção de Objetos em Tempo Real
Para entender realmente como o YOLOv7 funciona, é essencial entender o objetivo principal do YOLOv7, “Detecção de Objetos em Tempo Real”. A detecção de objetos em tempo real é um componente-chave da visão computacional moderna. Os modelos de detecção de objetos em tempo real tentam identificar e localizar objetos de interesse em tempo real.

Os modelos de detecção de objetos em tempo real são essencialmente um passo à frente dos modelos de detecção de imagens convencionais. Enquanto o primeiro é usado para rastrear objetos em arquivos de vídeo, o segundo localiza e identifica objetos dentro de um quadro estático, como uma imagem.
Como resultado, os modelos de detecção de objetos em tempo real são muito eficientes para análise de vídeo, veículos autônomos, contagem de objetos, rastreamento de múltiplos objetos e muito mais.
O que é YOLO?
YOLO ou “Você Só Olha Uma Vez” é uma família de modelos de detecção de objetos em tempo real. O conceito YOLO foi introduzido pela primeira vez em 2016 por Joseph Redmon e se tornou o assunto da cidade quase instantaneamente porque era muito mais rápido e mais preciso do que os algoritmos de detecção de objetos existentes.

O conceito fundamental que o algoritmo YOLO propõe é usar uma rede neural de ponta a ponta usando caixas delimitadoras e probabilidades de classe para fazer previsões em tempo real. O YOLO foi diferente do modelo de detecção de objetos anterior, pois propôs uma abordagem diferente para realizar a detecção de objetos, reaproveitando classificadores.
A mudança de abordagem funcionou, pois o YOLO logo se tornou o padrão da indústria, e a diferença de desempenho entre ele e outros algoritmos de detecção de objetos em tempo real foi significativa. Mas por que o YOLO foi tão eficiente?
Como o YOLO Funciona?
Existem três etapas que explicam como um algoritmo YOLO funciona.
Reformulando a Detecção de Objetos como um Problema de Regressão Único
O algoritmo YOLO tenta reformular a detecção de objetos como um problema de regressão único, incluindo pixels de imagem, probabilidades de classe e coordenadas de caixas delimitadoras. Portanto, o algoritmo só precisa olhar para a imagem uma vez para prever e localizar os objetos-alvo nas imagens.
Raciocínio da Imagem Globalmente
Além disso, quando o algoritmo YOLO faz previsões, ele raciocina a imagem globalmente. É diferente das técnicas baseadas em propostas de região e técnicas de deslizamento, pois o algoritmo YOLO vê a imagem completa durante o treinamento e teste no conjunto de dados e é capaz de codificar informações contextuais sobre as classes e como elas aparecem.
Antes do YOLO, o Fast R-CNN era um dos algoritmos de detecção de objetos mais populares, que não conseguia ver o contexto maior na imagem porque costumava confundir patches de fundo em uma imagem com um objeto.
Geralizando a Representação de Objetos
Finalmente, o algoritmo YOLO também visa generalizar as representações de objetos em uma imagem. Como resultado, quando um algoritmo YOLO foi executado em um conjunto de dados com imagens naturais e testado para os resultados, o YOLO superou os modelos R-CNN existentes por uma grande margem.
YOLOv7: O que há de Novo?
Agora que temos uma compreensão básica do que são modelos de detecção de objetos em tempo real e o que é o algoritmo YOLO, é hora de discutir o algoritmo YOLOv7.
Otimizando o Processo de Treinamento
O algoritmo YOLOv7 não apenas tenta otimizar a arquitetura do modelo, mas também visa otimizar o processo de treinamento. Ele visa usar módulos e métodos de otimização para melhorar a precisão da detecção de objetos, fortalecendo o custo de treinamento, mantendo o custo de interferência.
Atribuição de Rótulo Coarse to Fine Lead Guided
O algoritmo YOLOv7 planeja usar uma nova atribuição de rótulo Coarse to Fine Lead Guided em vez da atribuição de rótulo dinâmico convencional.
Reparametrização do Modelo
A reparametrização do modelo é um conceito importante na detecção de objetos, e seu uso é geralmente seguido por alguns problemas durante o treinamento.
Escalabilidade Estendida e Composta
O algoritmo YOLOv7 também introduz os métodos de escalabilidade estendida e composta para utilizar e usar efetivamente os parâmetros e cálculos para detecção de objetos em tempo real.

YOLOv7: Trabalho Relacionado
Detecção de Objetos em Tempo Real
O YOLO é atualmente o padrão da indústria, e a maioria dos detectores de objetos em tempo real implantam algoritmos YOLO e FCOS (Fully Convolutional One-Stage Object-Detection).
- Arquitetura de rede mais forte e rápida.
- Método eficaz de integração de recursos.
- Método de detecção de objetos preciso.
- Função de perda robusta.
- Método de atribuição de rótulo eficaz.
- Método de treinamento eficaz.
O algoritmo YOLOv7 não usa aprendizado auto-supervisionado e métodos de destilação que frequentemente requerem grandes quantidades de dados.
Reparametrização do Modelo
As técnicas de reparametrização do modelo são consideradas como uma técnica de ensemble que combina vários módulos computacionais em uma etapa de interferência.
Escalabilidade do Modelo
A escalabilidade do modelo é o processo de dimensionar um modelo existente para que se ajuste a diferentes dispositivos de computação.

A figura acima compara as redes de agregação de camadas eficientes estendidas (E-ELAN) de diferentes modelos.
Arquitetura YOLOv7
O modelo YOLOv7 usa os modelos YOLOv4, YOLO-R e YOLOv4 escalados como base.
Rede de Agregação de Camadas Eficientes Estendida ou E-ELAN
A E-ELAN é o bloco de construção fundamental do modelo YOLOv7 e é derivada de modelos existentes sobre eficiência de rede.

A figura acima fala sobre a escalabilidade do modelo para modelos baseados em concatenação.
Bolsa de Freebies Treinável
Uma bolsa de freebies é um termo que os desenvolvedores usam para descrever um conjunto de métodos ou técnicas que podem alterar a estratégia de treinamento ou custo.
Convolução Re-Parametrizada Planejada
O algoritmo YOLOv7 usa caminhos de propagação de gradiente para determinar como combinar idealmente uma rede com a convolução re-parametrizada.

A imagem acima representa um modelo re-parametrizado planejado.
Grossa para Auxiliar e Fina para Perda de Lead
A supervisão profunda é uma ramificação da ciência da computação que frequentemente encontra uso no processo de treinamento de redes profundas.

A figura acima explica o uso de uma bolsa de freebies treinável no algoritmo YOLOv7.
Outras Bolsas de Freebies Treináveis
Além das mencionadas acima, o algoritmo YOLOv7 usa outras bolsas de freebies, embora elas não tenham sido originalmente propostas por eles.
- Normalização de Lote em Tecnologia Conv-Bn-Ativação: Essa estratégia é usada para conectar uma camada convolucional diretamente à camada de normalização de lote.
- Conhecimento Implícito no YOLOR: O YOLOv7 combina a estratégia com o mapa de características convolucional.
- Modelo EMA: O modelo EMA é usado como um modelo de referência final no YOLOv7, embora seu uso principal seja no método do professor médio.
YOLOv7: Experimentos
Configuração Experimental
O algoritmo YOLOv7 usa o conjunto de dados Microsoft (MSFT ) COCO para treinar e validar seu modelo de detecção de objetos.

A figura acima compara a linha de base do modelo YOLOv7 com outros modelos de detecção de objetos.
Comparação com Modelos de Detecção de Objetos de Estado da Arte

A figura acima mostra os resultados quando o YOLOv7 é comparado com modelos de detecção de objetos de estado da arte para GPUs móveis e gerais.
Estudo de Ablação: Método de Escalabilidade Composta Proposto

A figura acima compara os resultados de usar diferentes estratégias para dimensionar o modelo.
Modelo Re-Parametrizado Proposto
Para verificar a generalidade de seu modelo re-parametrizado proposto, o algoritmo YOLOv7 usa-o em modelos baseados em resíduos e concatenação para verificação.

A figura abaixo mostra a configuração detalhada do RepConv planejado e do ELAN empilhado em 3 camadas.
Perda Auxiliar Proposta para Cabeça Auxiliar
Para a perda auxiliar para a cabeça auxiliar, o modelo YOLOv7 compara a atribuição de rótulo independente para a cabeça auxiliar e a cabeça de lead.

A figura acima contém os resultados do estudo sobre a perda auxiliar proposta.
Resultados do YOLOv7
Com base nos experimentos acima, aqui estão os resultados do desempenho do YOLOv7 em comparação com outros algoritmos de detecção de objetos.

A figura acima compara o modelo YOLOv7 com outros algoritmos de detecção de objetos.
Aqui estão algumas observações adicionais dos resultados e desempenho do YOLOv7.
- O YOLOv7-Tiny é o modelo mais pequeno da família YOLO, com mais de 6 milhões de parâmetros.
- O modelo YOLOv7 tem mais de 37 milhões de parâmetros e supera modelos com mais parâmetros, como o YOLov4.
- O modelo YOLOv7 tem a maior taxa de mAP e FPS na faixa de 5 a 160 FPS.
Conclusão
O YOLO ou “Você Só Olha Uma Vez” é o modelo de detecção de objetos de estado da arte na visão computacional moderna.
O modelo YOLOv7 é a última adição à família YOLO e é o algoritmo YOLO mais poderoso até o momento.












