CommencezCommencez gratuitement

L'algèbre linéaire des couches denses

Il existe deux façons de définir une couche dense dans tensorflow. La première utilise des opérations d'algèbre linéaire de bas niveau. La seconde s'appuie sur des opérations de haut niveau de keras. Dans cet exercice, nous allons utiliser la première méthode pour construire le réseau illustré dans l'image ci-dessous.

Cette image illustre un réseau neuronal avec 5 nœuds d'entrée et 3 nœuds de sortie.

La couche d'entrée comprend 3 caractéristiques — scolarité, état civil et âge — disponibles sous borrower_features. La couche cachée contient 2 nœuds et la couche de sortie contient un seul nœud.

Pour chaque couche, vous prendrez la couche précédente en entrée, initialiserez un ensemble de poids, calculerez le produit des entrées et des poids, puis appliquerez une fonction d'activation. Notez que Variable(), ones(), matmul() et keras() ont été importés de tensorflow.

Cette activité fait partie du cours

Introduction à TensorFlow en Python

Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Initialize bias1
bias1 = Variable(1.0)

# Initialize weights1 as 3x2 variable of ones
weights1 = ____(ones((____, ____)))

# Perform matrix multiplication of borrower_features and weights1
product1 = ____

# Apply sigmoid activation function to product1 + bias1
dense1 = keras.activations.____(____ + ____)

# Print shape of dense1
print("\n dense1's output shape: {}".format(dense1.shape))
Modifier et exécuter le code