Como as arquiteturas de gargalo funcionam em redes neurais?

21

Definimos uma arquitetura de gargalo como o tipo encontrado no artigo da ResNet , em que [duas camadas de conv3 3x3] são substituídas por [uma conv de 1x1, uma conv de 3x3 e outra conv. De 1x1].insira a descrição da imagem aqui

Entendo que as camadas 1x1 conv são usadas como uma forma de redução de dimensão (e restauração), explicada em outro post . No entanto, não estou claro por que essa estrutura é tão eficaz quanto o layout original.

Algumas boas explicações podem incluir: Qual o comprimento da passada e em que camadas? Quais são as dimensões de entrada e saída de exemplo de cada módulo? Como os mapas de recursos de 56x56 são representados no diagrama acima? Os 64-d se referem ao número de filtros, por que isso difere dos filtros de 256-d? Quantos pesos ou FLOPs são usados ​​em cada camada?

Qualquer discussão é muito apreciada!

derekchen14
fonte
Eu acho que pode ajudar na generalização e prevenção de excesso de adaptação. Mas isso é apenas uma lembrança vaga.
Chris

Respostas:

5

A arquitetura de gargalo é usada em redes muito profundas devido a considerações computacionais.

Para responder suas perguntas:

  1. Os mapas de recursos de 56x56 não são representados na imagem acima. Esse bloco é obtido de um ResNet com tamanho de entrada 224x224. 56x56 é a versão reduzida da entrada em alguma camada intermediária.

  2. 64-d refere-se ao número de mapas de recursos (filtros). A arquitetura de gargalo tem 256-d, simplesmente porque é destinada a redes muito mais profundas, que possivelmente levam uma imagem de maior resolução como entrada e, portanto, requerem mais mapas de recursos.

  3. Consulte esta figura para obter os parâmetros de cada camada de gargalo no ResNet 50.

Newstein
fonte
1
Para futuros leitores, devo mencionar que acho que as convs 1x1 têm passo = 1 e pad = 0, para preservar (LxA) 56x56. Da mesma forma, as convs 3x3 têm stride = 1 e pad = 1 para preservar o tamanho também.
derekchen14
Ainda não entendi. Parece que ambos têm a mesma quantidade de parâmetros; nesse caso, eu ainda não entendo o propósito da camada de gargalo.
precisa saber é o seguinte
-1

Eu realmente acho que o segundo ponto da resposta de Newstein é enganador.

O 64-dou 256-ddeve se referir ao número de canais do mapa de recursos de entrada - não ao número de mapas de recursos de entrada.

Considere o bloco "gargalo" (à direita da figura) na pergunta do OP como um exemplo:

  • 256-dsignifica que temos um único mapa de recursos de entrada com dimensão n x n x 256. O 1x1, 64na figura significa 64 filtros , cada um é 1x1e tem 256canais ( 1x1x256).
  • Então, aqui podemos ver que a convolução de um único filtro ( 1x1x256) com um mapa de recursos de entrada ( n x n x 256) nos dá n x nsaída.
  • Agora, temos 64filtros, portanto, empilhando as saídas, a dimensão do mapa do recurso de saída é n x n x 64.

Editado:

  • @ Michael Chernick: Ok, então isso seria uma resposta parcial, pois tentei corrigir a resposta aceita. Você pode analisar minha resposta parcial e me informar se eu entendi corretamente?
Acender
fonte
Independentemente da reputação, você não deve usar respostas para comentários.
Michael R. Chernick