Aprendizagem profunda em Python - fundamentos

Neste capítulo, examinaremos os fundamentos do Python Deep Learning.

Modelos / algoritmos de aprendizagem profunda

Vamos agora aprender sobre os diferentes modelos / algoritmos de aprendizado profundo.

Alguns dos modelos populares de aprendizagem profunda são os seguintes -

  • Redes neurais convolucionais
  • Redes neurais recorrentes
  • Redes de crença profunda
  • Redes adversárias geradoras
  • Codificadores automáticos e assim por diante

As entradas e saídas são representadas como vetores ou tensores. Por exemplo, uma rede neural pode ter as entradas onde os valores RGB de pixel individuais em uma imagem são representados como vetores.

As camadas de neurônios que ficam entre a camada de entrada e a camada de saída são chamadas de camadas ocultas. É aqui que a maior parte do trabalho acontece quando a rede neural tenta resolver problemas. Uma análise mais detalhada das camadas ocultas pode revelar muito sobre os recursos que a rede aprendeu a extrair dos dados.

Diferentes arquiteturas de redes neurais são formadas pela escolha de quais neurônios se conectar a outros neurônios na próxima camada.

Pseudocódigo para cálculo de saída

A seguir está o pseudocódigo para calcular a saída de Forward-propagating Neural Network -

  • # node []: = matriz de nós classificados topologicamente
  • # Uma aresta de a até b significa que a está à esquerda de b
  • # Se a rede neural tiver entradas R e saídas S,
  • # então os primeiros nós R são nós de entrada e os últimos nós S são nós de saída.
  • # entrada [x]: = nós conectados ao nó x
  • # peso [x]: = pesos das arestas de entrada para x

Para cada neurônio x, da esquerda para a direita -

  • se x <= R: não fazer nada # é um nó de entrada
  • entradas [x] = [saída [i] para i na entrada [x]]
  • weighted_sum = dot_product (pesos [x], entradas [x])
  • saída [x] = ativação_função (weighted_sum)