ÎncepețiÎncepe gratuit

Compararea numărului de parametri

Ai văzut că reprezentarea one-hot nu este o reprezentare bună a cuvintelor, deoarece este foarte sparsă. Folosirea stratului Embedding creează o reprezentare densă a vectorilor, însă necesită și un număr mare de parametri de învățat.

În acest exercițiu vei compara numărul de parametri al două modele – unul care folosește embeddings și altul care folosește codificarea one-hot – pentru a observa diferența.

Modelul model_onehot este deja încărcat în mediu, alături de Sequential, Dense și GRU din keras. De asemenea, parametrii vocabulary_size=80000 și sentence_len=200 sunt deja definiți.

Acest exercițiu face parte din cursul

Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Vezi cursul

Instrucțiuni pentru exercițiu

  • Importă stratul Embedding din keras.layers.
  • La stratul de embedding, folosește dimensiunea vocabularului plus unu ca dimensiune de intrare și dimensiunea propoziției ca lungime de intrare.
  • Compilează modelul.
  • Afișează rezumatul modelului cu embedding.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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.____
Editează și rulează codul