O que significa Backbone em Redes Neurais?

Mova sua mãozinha para fazer uma fortuna, dê um joinha!

1. Introdução

As redes neurais são algoritmos de aprendizado de máquina que podemos usar em muitas aplicações, como classificação de imagens, reconhecimento de objetos, previsão de padrões complexos, linguagem de processamento e muito mais. Os principais blocos de construção de uma rede neural são camadas e nós.

Algumas arquiteturas de redes neurais possuem mais de cem camadas e várias partes lógicas que resolvem diferentes subproblemas. Uma dessas partes é o backbone da rede neural.

Neste tutorial, descreveremos o que é um tronco e os tipos de troncos mais populares.

2. Rede neural

Redes neurais são algoritmos explicitamente projetados para serem inspirados por redes neurais biológicas. Inicialmente, o objetivo era criar um sistema artificial que funcionasse de forma semelhante ao cérebro humano. Neurônios e camadas são os principais blocos de construção das redes neurais.

De acordo com os tipos de camadas e neurônios, as redes neurais são divididas principalmente em três categorias:

  • Rede neural totalmente conectada (rede neural regular)
  • rede neural convolucional
  • rede neural recorrente

Por exemplo, as redes neurais convolucionais funcionam melhor com imagens, enquanto as redes neurais recorrentes funcionam melhor com dados do tipo sequência. Para explicar o que um backbone representa em uma rede neural, vamos pegar o exemplo de um backbone em uma rede neural convolucional. Além disso, na maioria dos casos na literatura, o backbone está no contexto de redes neurais convolucionais.

3. Redes Neurais Convolucionais

Uma rede neural convolucional (CNN) é uma rede neural artificial que usamos principalmente para classificar imagens, localizar objetos e extrair recursos de imagens, como bordas ou cantos. As CNNs são bem-sucedidas porque podem processar grandes quantidades de dados, como imagens, vídeos e texto.

Essas redes usam operações de convolução para processar dados de entrada. As CNNs podem aprender diferentes recursos quando alimentadas com uma imagem. Por exemplo:

  • As camadas iniciais da rede aprendem características de baixo nível, como linhas, pontos, curvas, etc.
  • Camadas no meio da rede aprendem objetos construídos sobre feições de baixo nível.
  • A camada superior pode entender os recursos de alto nível com base nos recursos da camada anterior e concluir as tarefas atribuídas.

Além disso, também é possível utilizar redes pré-treinadas treinadas com dados diferentes. Isso se deve às técnicas de aprendizagem por transferência. Por exemplo, uma rede neural aprende alguns padrões em um conjunto de dados e, com alguns ajustes, eles podem ser usados ​​em outro conjunto de dados. Obviamente, quanto mais semelhantes os conjuntos de dados, melhores os resultados que podemos esperar.

4. Backbone em rede neural

除了图像分类,更复杂的 CNN 架构可以解决不同的计算机视觉任务,例如对象检测或分割。多亏了迁移学习,我们可以在另一个最初为图像分类训练的 CNN 之上构建用于对象检测的架构。在这种情况下,我们使用 CNN 作为特征提取器,它实际上是对象检测模型的骨干:

alt

通常,术语主干是指将输入数据处理为某种特征表示的特征提取网络。这些特征提取网络通常在更简单的任务上作为独立网络表现良好,因此,我们可以将它们用作更复杂模型中的特征提取部分。 我们可以将许多流行的 CNN 架构用作神经网络的主干。其中一些包括:

  • VGGs——包括具有 16 层和 19 层的 VGG-16 和 VGG-19 卷积网络。它们在许多任务中被证明是有效的,尤其是在图像分类和目标检测方面。
  • ResNets – 或残差神经网络由卷积层和池化层块之间的跳跃连接或循环单元组成。 ResNet-50 和 ResNet 101 的一些流行版本在对象检测和语义分割任务中很常见。
  • Inception v1 – GoogleNet 是最常用的卷积神经网络之一,作为许多计算机科学应用的支柱,包括视频摘要和动作识别。

5. 总结

本文[1]中,我们描述了主干在神经网络中代表什么以及最受欢迎的主干是什么。大多数情况下,我们在计算机视觉中使用主干。它代表了一种流行的 CNN,具有用于更复杂的神经网络架构的特征提取功能。

Reference

[1]

Source: https://www.baeldung.com/cs/neural-network-backbone#backbone-in-neural-network

本文由 mdnice 多平台发布

Acho que você gosta

Origin blog.csdn.net/swindler_ice/article/details/131237047
Recomendado
Clasificación