neste post, vou discutir arquiteturas comumente usadas para redes convolucionais. Como você verá, quase todas as arquiteturas CNN seguem os mesmos princípios gerais de design de aplicação sucessiva de camadas convolucionais à entrada, descendo periodicamente as dimensões espaciais enquanto aumenta o número de mapas de recursos.,enquanto as arquiteturas de rede clássicas eram compostas simplesmente de camadas convolucionais empilhadas, arquiteturas modernas exploram novas e inovadoras maneiras de construir camadas convolucionais de uma forma que permite uma aprendizagem mais eficiente. Quase todas essas arquiteturas são baseadas em uma unidade repetível que é usada em toda a rede.estas arquitecturas servem de orientações gerais de concepção que os profissionais da aprendizagem de máquinas se adaptarão para resolver várias tarefas de visão de computador., Estas arquiteturas servem como extrativores de recursos ricos que podem ser usados para a classificação de imagens, detecção de objetos, segmentação de imagens, e muitas outras tarefas mais avançadas.
Clássico arquiteturas de rede (incluídos para fins de histórico)
- LeNet-5
- AlexNet
- VGG 16
Modernas arquiteturas de rede
- Início
- ResNet
- ResNeXt
- DenseNet
LeNet-5
Yann Lecun do LeNet-5 modelo foi desenvolvido em 1998 para identificar manuscritas dígitos do código postal de reconhecimento no serviço postal., Este modelo pioneiro introduziu em grande parte a rede neural convolucional como a conhecemos hoje.
Arquitetura
camadas convolucionais usam um subconjunto dos canais da camada anterior para cada filtro para reduzir a computação e forçar uma quebra de simetria na rede. As camadas de subamostragem utilizam uma forma de agrupamento médio.
Parâmetros: 60,000
Papel: Gradiente-aprendizagem aplicado ao reconhecimento do documento
AlexNet
AlexNet foi desenvolvido por Alex Krizhevsky et al. em 2012 para competir na competição ImageNet., A arquitetura geral é bastante semelhante à LeNet-5, embora este modelo seja consideravelmente maior. O sucesso deste modelo (que teve o primeiro lugar na competição ImageNet 2012) convenceu muita da comunidade de visão computacional a dar uma olhada séria na aprendizagem profunda para tarefas de visão computacional.
Arquitetura
Parâmetros: 60 milhões de euros
Papel: ImageNet Classificação com Profunda Convolucionais Redes Neurais
VGG-16
O VGG de rede, introduzido em 2014, oferece aprofundar ainda mais simples variante da convolucionais estruturas discutido acima., No momento da sua introdução, este modelo era considerado muito profundo.
Architecture
Parameters: 138 million
Paper: Very Deep convolucional Networks for Large-Scale Image Recognition
Inception (GoogLeNet)
In 2014, researchers at Google introduced the Inception network which took first place in the 2014 ImageNet competition for classification and detection challenges.
O modelo é composto por uma unidade básica referida como uma “célula inicial” na qual realizamos uma série de convoluções em escalas diferentes e subsequentemente agregamos os resultados., Para salvar o cálculo, convoluções 1×1 são usadas para reduzir a profundidade do canal de entrada. Para cada célula, aprendemos um conjunto de filtros 1×1, 3×3 e 5×5 que podem aprender a extrair recursos em escalas diferentes da entrada. Max pooling também é usado, embora com” mesmo ” enchimento para preservar as dimensões para que a saída possa ser adequadamente concatenada.estes investigadores publicaram um artigo de acompanhamento que introduziu alternativas mais eficientes à célula inicial original., Convoluções com grandes filtros espaciais (como 5×5 ou 7×7) são benéficas em termos de sua expressividade e capacidade de extrair recursos em uma escala maior, mas a computação é desproporcionalmente cara. Os pesquisadores apontaram que uma convolução 5×5 pode ser mais barata representada por dois filtros 3×3 empilhados.
enquanto que um filtro de $ 5 \vezes 5 \vezes c $ requer$ 25C $ parâmetros, dois$ 3 \vezes 3 \vezes c $ Filtros apenas requerem$ 18c $ parâmetros. A fim de representar com mais precisão um filtro 5×5, não devemos usar quaisquer ativações não lineares entre as duas camadas 3×3., No entanto, descobriu-se que ” a ativação linear era sempre inferior ao uso de unidades lineares retificadas em todos os estágios da fatoração.”
também foi mostrado que convoluções 3×3 poderiam ser desconstruídas em sucessivas convoluções 3×1 e 1×3.
generalizando esta visão, podemos calcular de forma mais eficiente uma convolução de $N \vezes n$ Como uma convolução de $1 \vezes n$ seguida de uma convolução de $N \vezes 1$.
Arquitetura
A fim de melhorar o desempenho geral da rede, Duas saídas auxiliares são adicionadas em toda a rede., Mais tarde foi descoberto que a primeira saída auxiliar não tinha nenhum efeito discernível na qualidade final da rede. A adição de saídas auxiliares beneficiou principalmente o desempenho final do modelo, convergindo em um valor ligeiramente melhor do que a mesma arquitetura de rede sem um ramo auxiliar. Acredita-se que a adição de saídas auxiliares teve um efeito regularizador na rede.
uma versão revista e mais profunda da rede inicial que tira partido das células iniciais mais eficientes é mostrada abaixo.,
Parâmetros: 5 milhões (V1) e 23 milhões (V3)
Artigos:
- Indo mais a fundo com circunvoluções
- Repensar a Preliminar de Arquitetura para a Visão de Computador
ResNet
Profundo residual de redes foi uma ideia revolucionária, que permitiu o desenvolvimento de muito mais profundo redes (de centenas de camadas como oposição a dezenas de camadas).
é um princípio geralmente aceite de que as redes mais profundas são capazes de aprender funções e representações mais complexas da entrada que devem conduzir a um melhor desempenho., No entanto, muitos pesquisadores observaram que a adição de mais camadas eventualmente teve um efeito negativo no desempenho final. Este comportamento não foi intuitivamente esperado, como explicado pelos autores abaixo.
vamos considerar uma arquitectura mais rasa e a sua contrapartida mais profunda que lhe acrescenta mais camadas. Existe uma solução por construção para o modelo mais profundo: as camadas adicionadas são mapeamento de identidade, e as outras camadas são copiadas do modelo learned shallower., A existência desta solução construída indica que um modelo mais profundo não deve produzir erros de formação superiores aos da sua contraparte mais fraca. Mas os experimentos mostram que nossos atuais solucionadores na mão são incapazes de encontrar soluções que são comparavelmente boas ou melhores do que a solução construída (ou incapazes de fazê-lo em tempo viável).,
Este fenômeno é referido pelos autores como o problema de degradação – aludindo ao fato de que, embora melhores técnicas de inicialização de parâmetros e normalização de lotes permitam a convergência de redes mais profundas, elas muitas vezes convergem a uma taxa de erro mais alta do que suas contrapartes mais fracas. No limite, simplesmente empilhando mais camadas degrada o desempenho final do modelo.,
os autores propõem uma solução para este problema de degradação introduzindo blocos residuais em que camadas intermediárias de um bloco aprendem uma função residual com referência à entrada do bloco. Você pode pensar nesta função residual como um passo de refinamento em que aprendemos a ajustar o mapa de recursos de entrada para recursos de maior qualidade. Isto se compara com uma rede” simples ” na qual cada camada é esperada para aprender novos e distintos mapas de recursos., No caso de não ser necessário nenhum refinamento, as camadas intermediárias podem aprender a ajustar gradualmente seus pesos em direção a zero, de modo que o bloco residual representa uma função de identidade.nota: mais tarde descobriu-se que uma ligeira modificação da unidade original proposta oferece um melhor desempenho, permitindo que gradientes se propagem através da rede durante o treinamento.,
Ampla residual de redes
Embora o original ResNet papel focado na criação de uma arquitetura de rede para permitir que estruturas mais profundas, aliviando o problema de degradação, outros pesquisadores já apontaram que o aumento da rede de largura (profundidade do canal) pode ser uma forma mais eficiente de expansão da capacidade total da rede.cada bloco colorido de camadas representa uma série de convoluções da mesma dimensão., O mapeamento de recursos é periodicamente desmontado por convolução estriada acompanhada por um aumento na profundidade do canal para preservar a complexidade de tempo por camada. Linhas pontilhadas denotam conexões residuais nas quais projetamos a entrada através de uma convolução 1×1 para corresponder às dimensões do novo bloco.
O diagrama acima visualiza a arquitectura ResNet 34., Para o modelo ResNet 50, nós simplesmente substituímos cada bloco residual de duas camadas por um bloco de três camadas que usa convoluções 1×1 para reduzir e, posteriormente, restaurar a profundidade do canal, permitindo uma carga computacional reduzida ao calcular a convolução 3×3.,
Parâmetros: 25 milhões de euros (ResNet 50)
Artigos:
- Profundo Residual de Aprendizagem para Reconhecimento de Imagem
- Identidade Mapeamentos em Profunda Residual Redes
- Ampla Residual Redes
O ResNeXt arquitetura é uma extensão do fundo residual de rede que substitui o padrão residual bloco com que aproveita um “split-transformar-série de estratégia” (ie. caminhos ramificados dentro de uma célula) usados nos modelos iniciais., Simplesmente, em vez de executar circunvoluções sobre a completa funcionalidade de entrada de mapa, o bloco de entrada é projetado em uma série de inferior (canal) dimensional representações do que nós, separadamente, aplique algumas convolucionais filtros antes de se fundir os resultados.
esta ideia é bastante semelhante às convoluções de grupo, que foi uma ideia proposta no documento AlexNet como uma forma de compartilhar a computação de convolução através de duas GPUs. Ao invés de criar filtros com a profundidade total do canal de entrada, a entrada é dividida em grupos com cada um como mostrado abaixo.,
foi descoberto que o uso de convoluções agrupadas levou a um grau de especialização entre grupos onde grupos separados focados em diferentes características da imagem de entrada.
o artigo ResNeXt refere-se ao número de ramos ou grupos como a cardinalidade da célula ResNeXt e realiza uma série de experimentos para entender ganhos de desempenho relativo entre o aumento da cardinalidade, profundidade e largura da rede. Os experimentos mostram que o aumento da cardinalidade é mais eficaz em beneficiar o desempenho do modelo do que aumentar a largura ou profundidade da rede., Os experimentos também sugerem que ” conexões residuais são úteis para otimização, enquanto transformações agregadas são (úteis para) representações mais fortes.”
Architecture
The ResNeXt architecture simply mimicks the ResNet models, replacing the ResNet blocks for the ResNeXt block.
Paper: Aggregated Residual Transformations for Deep Neural Networks
DenseNet
the idea behind dense convolucional networks is simple: it may be useful to reference feature maps from earlier in the network., Assim, o mapa de características de cada camada é concatenado à entrada de cada camada sucessiva dentro de um bloco denso. Isso permite que camadas posteriores dentro da rede para alavancar diretamente as características de camadas anteriores, incentivando a reutilização de recursos dentro da rede. Os autores afirmam, ” concatenando mapas de recursos aprendidos por diferentes camadas aumenta a variação na entrada de camadas subsequentes e melhora a eficiência.”
Quando me deparei pela primeira vez com este modelo, imaginei que teria um número absurdo de parâmetros para suportar as densas conexões entre camadas., No entanto, como a rede é capaz de usar diretamente qualquer mapa de recursos anteriores, os autores descobriram que eles poderiam trabalhar com profundidades de canal de saída muito pequenas (ie. 12 filtros por camada), reduzindo enormemente o número total de parâmetros necessários. Os autores referem – se ao número de filtros usados em cada camada convolucional como uma “taxa de crescimento”, $k$, uma vez que cada camada sucessiva terá $k$ mais canais do que os últimos (como resultado de acumular e concatenar todas as camadas anteriores para a entrada).,
quando comparado com modelos ResNet, os DenseNets são relatados para obter um melhor desempenho com menos complexidade.
Arquitetura
para a maioria dos experimentos no artigo, os autores imitaram a arquitetura do modelo ResNet geral, simplesmente trocando no bloco denso como a unidade repetida.parâmetros:
- 0, 8 milhões (DenseNet-100, k=12)
- 15.,3 milhões (DenseNet-250, k=24)
- 40 milhões de euros (DenseNet-190, k=40)
Papel: Densamente Conectadas Convolucionais Redes
Vídeo: CVPR 2017 o Prémio de Melhor artigo: Densamente Conectadas Convolucionais Redes
Deixe uma resposta