Réseaux de neurones et couches

Introduction au Deep Learning avec PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Couches d'un réseau de neurones

Schéma d'un réseau de neurones avec entrée, couche cachée et sortie

Introduction au Deep Learning avec PyTorch

Couches d'un réseau de neurones

Schéma d'un réseau de neurones avec entrée, couche cachée et sortie

Introduction au Deep Learning avec PyTorch

Couches d'un réseau de neurones

Schéma d'un réseau de neurones avec entrée, couche cachée et sortie

Introduction au Deep Learning avec PyTorch

Couches d'un réseau de neurones

Schéma d'un réseau de neurones avec entrée, couche cachée et sortie

Introduction au Deep Learning avec PyTorch

Notre premier réseau de neurones

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

  • Réseau entièrement connecté
  • Équivalent à un modèle linéaire
Introduction au Deep Learning avec PyTorch

Concevoir un réseau de neurones

Trois nœuds représentant l'entrée d'un réseau de neurones

# 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]])
  • Neurones d'entrée = caractéristiques
  • Neurones de sortie = classes
Introduction au Deep Learning avec PyTorch

Concevoir un réseau de neurones

Trois nœuds en entrée d'un réseau de neurones avec des flèches vers l'avant représentant la couche linéaire

# 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
)
Introduction au Deep Learning avec PyTorch

Concevoir un réseau de neurones

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

# 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)
Introduction au Deep Learning avec PyTorch

Concevoir un réseau de neurones

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

$$ $$ $$

# Pass input through linear layer
output = linear_layer(input_tensor)
print(output)
tensor([[-0.2415, -0.1604]], 
    grad_fn=<AddmmBackward0>)
Introduction au Deep Learning avec PyTorch

Poids et biais

output = linear_layer(input_tensor)

Représentation d'une opération linéaire

Introduction au Deep Learning avec PyTorch

Poids et biais

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

$$

  • Reflète l'importance des différentes caractéristiques
  • .bias
    print(linear_layer.bias)
    
Parameter containing:
tensor([0.0310, 0.1537], requires_grad=True)

$$

$$

  • Donne au neurone une sortie de base
Introduction au Deep Learning avec PyTorch

Réseau entièrement connecté en action

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

Introduction au Deep Learning avec PyTorch

Réseau entièrement connecté en action

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

Introduction au Deep Learning avec PyTorch

Réseau entièrement connecté en action

Schéma d'un réseau de neurones de base avec seulement entrée et sortie

  • La caractéristique « humidité » aura un poids plus important
  • Le biais tient compte de l'information de base
Introduction au Deep Learning avec PyTorch

Passons à la pratique !

Introduction au Deep Learning avec PyTorch

Preparing Video For Download...