Redes neurais e camadas

Introdução ao Aprendizado Profundo com o PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Camadas da rede neural

Um diagrama que representa uma rede neural com entrada, camada oculta e saída

Introdução ao Aprendizado Profundo com o PyTorch

Camadas da rede neural

Um diagrama que representa uma rede neural com entrada, camada oculta e saída

Introdução ao Aprendizado Profundo com o PyTorch

Camadas da rede neural

Um diagrama que representa uma rede neural com entrada, camada oculta e saída

Introdução ao Aprendizado Profundo com o PyTorch

Camadas da rede neural

Um diagrama que representa uma rede neural com entrada, camada oculta e saída

Introdução ao Aprendizado Profundo com o PyTorch

Nossa primeira rede neural

Um diagrama que representa uma rede neural básica com apenas entrada e saída

  • Rede totalmente conectada
  • Equivalente a um modelo linear
Introdução ao Aprendizado Profundo com o PyTorch

Criação de uma rede neural

Três nós que representam a entrada de uma rede neural

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
  • Neurônios de entrada = atributos
  • Neurônios de saída = classes
Introdução ao Aprendizado Profundo com o PyTorch

Criação de uma rede neural

Três nós representando a entrada de uma rede neural com setas apontando para frente para representar a camada linear

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
# Define our linear layer linear_layer = nn.Linear(
in_features=3,
out_features=2
)
Introdução ao Aprendizado Profundo com o PyTorch

Criação de uma rede neural

Um diagrama que representa uma rede neural básica com apenas entrada e saída

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
# Define our linear layer linear_layer = nn.Linear( in_features=3, out_features=2 )
# Pass input through linear layer output = linear_layer(input_tensor) print(output)
Introdução ao Aprendizado Profundo com o PyTorch

Criação de uma rede neural

Um diagrama que representa uma rede neural básica com apenas entrada e saída

$$ $$ $$

# Pass input through linear layer
output = linear_layer(input_tensor)
print(output)
tensor([[-0.2415, -0.1604]], 
    grad_fn=<AddmmBackward0>)
Introdução ao Aprendizado Profundo com o PyTorch

Pesos e vieses

output = linear_layer(input_tensor)

Representação de operação linear

Introdução ao Aprendizado Profundo com o PyTorch

Pesos e vieses

  • .weight
    print(linear_layer.weight)
    
Parameter containing:
tensor([[-0.4799,  0.4996,  0.1123],
        [-0.0365, -0.1855,  0.0432]], 
        requires_grad=True)

$$

  • Reflete a importância de diferentes atributos
  • .bias
    print(linear_layer.bias)
    
Parameter containing:
tensor([0.0310, 0.1537], requires_grad=True)

$$

$$

  • Fornece ao neurônio uma saída de referência
Introdução ao Aprendizado Profundo com o PyTorch

Uma rede totalmente conectada em ação

Um diagrama que representa uma rede neural básica com apenas entrada e saída

Introdução ao Aprendizado Profundo com o PyTorch

Uma rede totalmente conectada em ação

Um diagrama que representa uma rede neural básica com apenas entrada e saída

Introdução ao Aprendizado Profundo com o PyTorch

Uma rede totalmente conectada em ação

Um diagrama que representa uma rede neural básica com apenas entrada e saída

  • O atributo de umidade terá um peso mais significativo
  • O viés leva em conta as informações de referência
Introdução ao Aprendizado Profundo com o PyTorch

Vamos praticar!

Introdução ao Aprendizado Profundo com o PyTorch

Preparing Video For Download...