Aan de slagGa gratis aan de slag

De dense-laagoperatie gebruiken

We hebben nu gezien hoe je dense lagen in tensorflow definieert met lineaire algebra. In deze oefening slaan we de lineaire algebra over en laten we keras de details uitwerken. Zo kunnen we onderstaand netwerk bouwen — met 2 verborgen lagen en 10 features — met minder code dan we nodig hadden voor het netwerk met 1 verborgen laag en 3 features.

This image depicts an neural network with 10 inputs nodes and 1 output node.

Om dit netwerk te bouwen, moeten we drie dense lagen definiëren. Elke laag neemt de vorige laag als input, vermenigvuldigt die met gewichten en past een activatiefunctie toe. Let op: de inputdata is al gedefinieerd en beschikbaar als een 100x10-tensor: borrower_features. Daarnaast is de module keras.layers beschikbaar.

Deze oefening maakt deel uit van de cursus

Introductie tot TensorFlow in Python

Cursus bekijken

Oefeninstructies

  • Zet dense1 op een dense laag met 7 outputnodes en een sigmoid-activatiefunctie.
  • Definieer dense2 als een dense laag met 3 outputnodes en een sigmoid-activatiefunctie.
  • Definieer predictions als een dense laag met 1 outputnode en een sigmoid-activatiefunctie.
  • Print de shapes van dense1, dense2 en predictions in die volgorde met de methode .shape. Waarom hebben elk van deze tensors 100 rijen?

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Define the first dense layer
dense1 = keras.layers.Dense(____, activation='____')(borrower_features)

# Define a dense layer with 3 output nodes
dense2 = ____

# Define a dense layer with 1 output node
predictions = ____

# Print the shapes of dense1, dense2, and predictions
print('\n shape of dense1: ', dense1.shape)
print('\n shape of dense2: ', ____.shape)
print('\n shape of predictions: ', ____.shape)
Code bewerken en uitvoeren