1. EfficientDet
EfficientDet
Scalable and Efficient Object Detection
Paulo Victor dos Santos
Professor da Disciplina: Prof. Anderson
Universidade Federal de Goiás (UFG)
Goiânia, 11 de janeiro de 2021
1 / 32
2. EfficientDet
Publicação
[Submitted on 20 Nov 2019 (v1), last revised 27 Jul 2020 (this version, v7)]
EfficientDet: Scalable and Efficient Object Detection
Mingxing Tan, Ruoming Pang, Quoc V. Le
Google Research, Brain Team
Subjects: Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG);
Image and Video Processing (eess.IV)
Journal reference: Proceedings of the IEEE Conference on Computer Vision and Pattern
Recognition (2020)
2 / 32
3. EfficientDet
Problemática
O objeto de discussão
I Vários progressos foram realizados para garantir uma precisa detecção de objetos.
Porém esta tecnologia se torna cada vez mais cara. Impedindo a implantação em
aplicativos do mundo real. Exemplo: AmoebaNet-Based NAS-FPN (167M
parâmetros e 3045B FLOPs)
I Outras propostas visam modelos mais eficientes e sacrificam a acurácia.
3 / 32
4. EfficientDet
Problemática
The Question
I Is it possible to build a scalable detection architecture with both higher accuracy
and better efficiency across a wide spectrum of resource constraints (e.g., from 3B
to 300B FLOPs)?
4 / 32
5. EfficientDet
Objetivos
Propostas
Com base no paradigma em detectores de um estágio. Exemplo: SSD
I Uma rede no formato de pirâmide de recursos bidirecionais ponderados, que
permita uma fácil e rápida fusão de características em multiescala (Efficient
multi-scale feature fusion).
I Um método de dimensionamento composto e uniforme para largura, profundidade
e resolução nas redes neurais de detecção de objetos. Inspirado no trabalho:
Efficientnet: Rethinking model scaling for convolutional neural networks
5 / 32
8. EfficientDet
Metodologia - EfficientNet
Formulação do problema
I Uma camada ConvNet i pode ser definida pela função
Yi = Fi(Xi), onde:
Yi é o tensor de saída.
Fi é o operador.
Xi é o tensor de entrada no formato hHi, Wi, Cii
I Uma ConvNet N pode ser definida por uma lista de camadas compostas e
particionadas em estágio. Ex ResNet
N = Fk ~ ... ~ F2 ~ F1(X1) = ~j=1...kFj(X1) portanto:
N = ~i=1...sFLi
i (XhHi,Wi,Cii) onde:
FLi
i denota a camada Fi repetida Li vezes no estágio i
8 / 32
10. EfficientDet
Metodologia - EfficientNet
Formulação do problema
I Diferente dos projetos regulares que buscam uma arquitetura melhor. O
dimensionamento composto do modelo tenta expandir a profundidade da rede Li, a
largura Ci e a resolução (Hi, Wi). Determinando um projeto arquitetural como
linha de base Fi e sem modificar esse modelo predefinido.
I maxd,w,r Acurácia(N(d, w, r))
s.t. N(d,w,r) = ~i=1...sF̂d.L̂i
i (Xhr.Ĥi,r.Ŵi,w.Ĉii)
Memory(N) ≤ target memory
FLOPS(N) ≤ target flops
onde: d, w, r são os coeficientes para redimensionar a rede e F̂i, L̂i, Ĥi, Ŵi, Ĉi são
parâmetros predefinidos na rede base (EfficientNet-B0 baseline network).
10 / 32
11. EfficientDet
Metodologia - EfficientNet
Formulação do problema
I O artigo fala sobre as vantagens e desvantagens dos métodos convencionais, onde
apenas uma dimensão é redimensionada.
I Foi observado empiricamente que diferentes dimensões de escala não são
independentes. Para imagens de alta resolução devemos aumentar a profundidade
da rede, de modo que os campos receptivos maiores possam ajudar a capturar
recursos semelhantes que incluem mais pixels em imagens maiores. Do mesmo
modo que a largura da rede deve ser redimensionada para capturar mais padrões
refinados.
11 / 32
12. EfficientDet
Metodologia - EfficientNet
Formulação do problema
I A proposta é usar um coeficiente composto para uniformizar o redimensionamento
da rede, φ (Phi).
depth: d = αφ
with: w = βφ
resolution: r = γφ
s.t. α.β2.γ2 ≈ 2
α ≥ 1, β ≥ 1, γ ≥ 1 onde:
α, β, γ são constantes. E φ é um coeficiente que controla a quantidade de recursos
computacionais disponíveis.
I A quantidade de FLOPs de uma operação convolucional regular é proporcional a
d, w2, r2. Duplicar a largura ou a resolução, quaduplica a quantidade de FLOPs.
Enquanto duplicar a profundidade, duplica a quantidade de FLOPs.
12 / 32
13. EfficientDet
Metodologia - EfficientNet
Formulação do problema
I Primeiro passo - assumir φ = 1, fazer uma pesquisa em grade para encontrar os
melhores valores de α, β, γ, através das fórmulas de maximização da acurácia e do
método de escala composto.
α = 1.2, β = 1.1, γ = 1.15
1.2 ∗ 1.12 ∗ 1.152 = 1.92027
I Segundo passo - assumir α, β, γ como constantes e redimensionar a rede de base
com diferentes φ
13 / 32
15. EfficientDet
Trabalhos correlatos
One-Stage Detectors
I A proposta do EfficientDet seguiu o projeto de detectores de um estágio por ser
considerados simples e mais eficientes aproveitando âncoras predefinidas e mostra
que é possível alcançar eficiência e precisão com uma arquitetura de rede
otimizada.
15 / 32
16. EfficientDet
Trabalhos correlatos
Multi-Scale Feature Representations
I Uma das grandes dificuldades na detecção de objetos é a efetiva representação e
processamento de caracteristicas em multiescala. Os detectores anteriores
geralmente realizam previsões diretamente com base na hierarquia de recursos
piramidal extraída de redes backbone. Um dos trabalho pioneiros é a FPN. Sua
abordagem propõe um caminho de cima para baixo para combinar recursos de
várias escalas. Entre outros modelos que também proporam diferentes formas de
combinar características.
16 / 32
17. EfficientDet
Trabalhos correlatos
Model Scaling
I Para obter um boa precisão, alguns trabalhos recentes empregam o uso de grandes
redes backbones (ResNet, AmoebaNet, ...). Alguns trabalhos demonstram que
aumentar a quantidade de canais e repetir as redes de features podem aumentar
consideravelmente a precisão. Estas abordagens focam em um simples e limitado
redimensionamento, enquanto EfficientNet propõe um redimensionamento
composto.
17 / 32
18. EfficientDet
Metodologia
Formulação do problema
I Fusão de recursos em várias escalas (Multi-scale feature fusion) objetiva agregar
características em diferentes resoluções.
Dada uma lista de recursos multiescala
−
→
P in = (Pin
l1, Pin
l2, ...), onde Pin
li representa a
característica no nível li, o objetivo é encontrar uma transformação f que possa
agregar diferentes características e gerar um vetor de saída das novas
características
−
→
P out = f(
−
→
P in).
18 / 32
19. EfficientDet
Metodologia
Formulação do problema
A FPN utiliza top-down convencional
−
→
P in = (Pin
3 , ...Pin
7 ), onde Pin
i representa um nível
de características de resolução 1/2i da resolução original da imagem. Exemplo 640x640,
no nível 3 (640/23 = 80), enquanto no nível 7 a resolução é de 5x5.
Pout
7 = ~(Pin
7 )
Pout
6 = ~(Pin
6 + Resize(Pout
7 ))
...
Pout
3 = ~(Pin
3 + Resize(Pout
4 )) 19 / 32
20. EfficientDet
Metodologia
Formulação do problema
I PANet utiliza um caminho extra de agregação bottom-up.
I NAS-FPN emprega o uso de uma topologia de arquitetura de rede neural para
encontrar as melhores conexões cruzadas.
I Os autores identificaram que a performance e a eficiência da PANet é melhor do
que a FPN e a NAS-FPN. E proporam remover os nós que possuem apenas uma
conexão (No feature fusion), adicionar uma conexão extra da entrada original para
os nós de saída no mesmo nível (More feature less cost), e por fim tratar cada
caminho bidirecionalmente (top-down and bottom-up) repetindo a mesma camada
várias vezes(Enable more high-level features fusion).
I Com estas propostas surge a BiFPN - bidirectional feature pyramid network.
20 / 32
21. EfficientDet
Metodologia
Formulação do problema
I Ao realizar fusão com diferentes resoluções, um caminho comum é redimensionar
para a mesma resolução e somar as características. Foi observado que diferentes
resoluções contribuem desigualmente, os autores proporam uma ponderação para
cada entrada para que a rede aprenda a importância da cada entrada de
características. Baseado nesta ideia, são considerados três abordagens de fusões
ponderadas: Unbounded fusion: O =
P
i wi.Ii onde wi é um peso aprendível que
pode ser um escalar, um vetor ou um tensor. Softmax-based fusion:
O =
P
i
ewi
P
j ewj .Ii. Aplicar softmax para cada peso, onde os pesos são normalizados
com a probabilidade no valor de 0 a 1 com seu grau de importância. Fast
normalized fusion: O =
P
i
wi
+
P
j wj
.Ii, onde wi ≥ 0 é assegurada pela aplicação
de uma RELU depois de cada wi e com = 0.0001 bem pequeno para inibir
instabilidade numérica.
21 / 32
22. EfficientDet
Metodologia
Formulação do problema
I Finalmente a BiFPN estará integrada com a escala cruzada de conexões
bidirecionais e com a fusão normalizada rápida:
Ptd
6 = ~(
w1.Pin
6 +w2.Resize(Pin
7 )
w1+w2+ )
Pout
6 = ~(
´
w1.Pin
6 + ´
w2.Ptd
6 + ´
w3.Resize(Pout
5 )
´
w1+ ´
w2+ ´
w3+ ), onde Ptd
6 é a característica intermediária no
nível 6 do caminho top-down e Pout
6 é a característica de saída no nível 6 do
caminho botton-up.
22 / 32
24. EfficientDet
Metodologia
EfficientDet
I Apoiado na abordagem BiFPN, a nova família de modelos de detectores de objetos
foi nomeada EfficientDet.
I As características combinadas são usadas para gerar as classes e caixas para a rede
produzir previsão de objetos e bounding box. Os pesos de classes e de caixas são
compartilhados em todos os níveis.
I Os autores propõe a utilização do método de escala composta das dimensões para
as redes de detecção de objetos, utilizando o coeficiente composto φ para
redimensionar o backbone (utilizaram a EfficientNet).
I Foi utilizado uma busca nos valores de 1.2, 1.25, 1.3, 1.35, 1.4, 1.45 para
encontrar o melhor fator de escala para otimizar largura da BiFPN e uma utilizado
busca linear incremental para a profundidade. O melhor valor para largura foi 1.35
e para profundidade foi 3. Wbifpn = 64.(1.35φ), Dbifpn = 3 + φ.
24 / 32
25. EfficientDet
Metodologia
EfficientDet
I Box/class prediction network - são fixadas com os mesmos valores da BiFPN
Wpred = Wbifpn. Mas com aumento linear da profundidade
Dbox = Dclass = 3 + bφ/3c
I Os níveis de características são de 3 a 7 na BiFPN, e a resolução da imagem é
dividida por 27 = 128, com aumento linear da resolução pela equação
Rinput = 512 + φ.128
I Através das equações acima, foram utilizados diferentes φ
25 / 32
26. EfficientDet
Resultados
EfficientDet
I EfficientDet alcançou melhor eficiência do que os detectores atuais, partindo de 4x
- 9x menor e usando de 13x - 48x menos FLOPs.
I Os autores também testaram a performance da EfficientDet em segmentação
semântica.
I Os autores mostram os resultados da contribuição de cada objetivo proposto na
abordagem da EfficientDet, backbone e BiFpn.
26 / 32
27. EfficientDet
Resultados
EfficientDet
I EfficientDet também alcançou bons resultados em comparação com outros
modelos que utilizam conexões de escala cruzada.
I A imagem abaixo mostra a comparação da softmax e da rápida e da rápida fusão
normalizada com três diferentes detectores.
27 / 32
30. EfficientDet
Conclusão
EfficientDet
I Com base nas otimizações, uma nova família de detectores foi desenvolvida,
alcançando melhor precisão e eficiência do que a técnicas anteriores em um amplo
espectro de restrições de recursos.
I EfficientDet alcançou o estado da arte em precisão com menos parâmetros e
menos FLOPs do que outros modelos.
30 / 32