Aan de slagGa gratis aan de slag

Bouw je LSTM-model

Je hebt je tekstsequenties al voorbereid. Tijd om je LSTM-model te bouwen!

Onthoud: je sequenties hadden elk 4 woorden. Je model wordt getraind op de eerste drie woorden van elke sequentie en voorspelt het vierde woord. Je gaat een Embedding-laag gebruiken die in essentie leert om woorden om te zetten in betekenisvolle vectoren. Deze vectoren gaan vervolgens naar een eenvoudige LSTM-laag. Onze output is een Dense-laag met evenveel neuronen als woorden in de vocabulaire en met softmax-activatie. Dit doen we omdat we het meest waarschijnlijke volgende woord uit alle mogelijke woorden willen krijgen.

De omvang van de vocabulaire (het aantal unieke woorden) staat in vocab_size.

Deze oefening maakt deel uit van de cursus

Introductie tot Deep Learning met Keras

Cursus bekijken

Oefeninstructies

  • Importeer de lagen Embedding, LSTM en Dense uit tensorflow.keras layers.
  • Voeg een Embedding()-laag toe op basis van de vocabulairegrootte, die woorden omzet in vectoren van 8 getallen en sequenties van lengte 3 ontvangt.
  • Voeg een LSTM()-laag met 32 neuronen toe.
  • Voeg een verborgen Dense()-laag met 32 neuronen toe en een outputlaag met vocab_size neuronen met softmax.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Import the Embedding, LSTM and Dense layer
from tensorflow.keras.____ import ____, ____, ____

model = Sequential()

# Add an Embedding layer with the right parameters
model.add(____(input_dim = ____, input_length = ____, output_dim = ____, ))

# Add a 32 unit LSTM layer
model.add(____(____))

# Add a hidden Dense layer of 32 units and an output layer of vocab_size with softmax
model.add(Dense(____, activation='relu'))
model.add(Dense(____, activation=____))
model.summary()
Code bewerken en uitvoeren