Inizia subitoInizia gratis

Confronto del numero di parametri

Hai visto che la rappresentazione one-hot non è una buona rappresentazione delle parole perché è molto sparsa. Usare il livello Embedding crea una rappresentazione densa dei vettori, ma richiede anche molti parametri da apprendere.

In questo esercizio confronterai il numero di parametri di due modelli che usano embeddings e codifica one-hot per vedere la differenza.

Il modello model_onehot è già caricato nell'ambiente, così come Sequential, Dense e GRU da keras. Infine, anche i parametri vocabulary_size=80000 e sentence_len=200 sono già caricati.

Questo esercizio fa parte del corso

Reti Neurali Ricorrenti (RNN) per il Language Modeling con Keras

Visualizza corso

Istruzioni dell'esercizio

  • Importa il livello Embedding da keras.layers.
  • Nel livello di embedding, usa la dimensione del vocabolario più uno come dimensione di input e la dimensione della frase come lunghezza di input.
  • Compila il modello.
  • Stampa il riepilogo del modello con embedding.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Import the embedding layer
from tensorflow.keras.layers import ____

# Create a model with embeddings
model = Sequential(name="emb_model")
model.add(Embedding(input_dim=____, output_dim=wordvec_dim, input_length=____, trainable=True))
model.add(GRU(128))
model.add(Dense(1))
model.____(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

# Print the summaries of the one-hot model
model_onehot.summary()

# Print the summaries of the model with embeddings
model.____
Modifica ed esegui il codice