Qual é a diferença entre o Inception v2 e o Inception v3?

18

O artigo Aprofundando as convoluções descreve o GoogleNet, que contém os módulos originais:

insira a descrição da imagem aqui

A mudança para o início v2 foi que eles substituíram as convoluções 5x5 por duas convoluções 3x3 sucessivas e aplicaram o pool:

insira a descrição da imagem aqui

Qual é a diferença entre o Inception v2 e o Inception v3?

Martin Thoma
fonte
É simplesmente normalização em lote? Ou o Inception v2 já possui normalização em lote?
Martin Thoma 24/11
github.com/SKKSaikia/CNN-GoogLeNet Este repositório contém todas as versões do GoogLeNet e suas diferenças. De uma chance.
Amartya Ranjan Saikia

Respostas:

22

No artigo Normalização em lote , Sergey et al, 2015. propôs a arquitetura Inception-v1 , que é uma variante do GoogleNet, no documento Aprofundando as convoluções e, enquanto isso, eles introduziram a Normalização de Lotes na Iniciação (BN-Inception).

A principal diferença para a rede descrita em (Szegedy et al., 2014) é que as camadas convolucionais 5x5 são substituídas por duas camadas consecutivas de convoluções 3x3 com até 128 filtros.

E no artigo Repensando a arquitetura de criação para visão computacional , os autores propuseram o Inception-v2 e o Inception-v3.

No Inception-v2 , eles introduziram a fatoração (fatorar convoluções em convoluções menores) e algumas pequenas alterações no Inception-v1.

Observe que nós fatoramos a convolução 7x7 tradicional em três convoluções 3x3

Quanto ao Inception-v3 , é uma variante do Inception-v2 que adiciona BN-auxiliar.

BN auxiliar refere-se à versão em que a camada totalmente conectada do classificador auxiliar também é normalizada, não apenas convoluções. Estamos nos referindo ao modelo [Inception-v2 + BN auxiliar] como Inception-v3.

daoliker
fonte
3

ao lado do que foi mencionado por daoliker

O início v2 utilizou a convolução separável como primeira camada de profundidade 64

citação de papel

Nosso modelo empregou convolução separável com multiplicador de profundidade 8 na primeira camada convolucional. Isso reduz o custo computacional enquanto aumenta o consumo de memória no tempo de treinamento.

por que isso é importante? porque foi descartada na v3 e v4 e na ressnet inicial, mas reintroduzida e muito usada na mobilenet posteriormente.

Muayyad Alsadi
fonte
1

A resposta pode ser encontrada no artigo Aprofundando com convoluções: https://arxiv.org/pdf/1512.00567v3.pdf

Verifique a Tabela 3. O início v2 é a arquitetura descrita no documento Aprofundando com Convoluções. O Inception v3 é a mesma arquitetura (pequenas alterações) com algoritmo de treinamento diferente (RMSprop, regularizador de suavização de etiqueta, adicionando um cabeçote auxiliar com norma de lote para melhorar o treinamento etc.).

Sid M
fonte
1

Na verdade, as respostas acima parecem estar erradas. Na verdade, foi uma grande confusão com a nomeação. No entanto, parece que foi corrigido no artigo que apresenta o Inception-v4 (consulte: "Inception-v4, Inception-ResNet e o impacto das conexões residuais na aprendizagem"):

A arquitetura convolucional profunda do Inception foi introduzida como GoogLeNet em (Szegedy et al. 2015a), aqui chamado Inception-v1. Posteriormente, a arquitetura do Inception foi refinada de várias maneiras, primeiro pela introdução da normalização em lote (Ioffe e Szegedy 2015) (Inception-v2). Posteriormente, por idéias adicionais de fatoração na terceira iteração (Szegedy et al. 2015b), que serão referidas como Inception-v3 neste relatório.

desa
fonte