LoslegenKostenlos loslegen

Anzahl der Parameter im Vergleich

Du hast gesehen, dass die One-Hot-Darstellung keine gute Darstellung für Wörter ist, weil sie sehr spärlich ist. Mit der „ Embedding “-Schicht kriegt man eine dichte Darstellung der Vektoren, aber es müssen auch viele Parameter gelernt werden.

In dieser Übung vergleichst du die Anzahl der Parameter zweier Modelle, die die Codierungen „ embeddings “ und „ one-hot “ verwenden, um den Unterschied zu erkennen.

Das Modell „ model_onehot “ ist schon in der Umgebung geladen, genauso wie „ Sequential “, „ Dense “ und „ GRU “ von keras. Zum Schluss werden auch die Parameter „ vocabulary_size=80000 “ und „ sentence_len=200 “ geladen.

Diese Übung ist Teil des Kurses

Rekursive neuronale Netze (RNNs) für die Sprachmodellierung mit Keras

Kurs anzeigen

Anleitung zur Übung

  • Importiere die Ebene „ Embedding “ von keras.layers.
  • Nimm auf der Einbettungsebene die Vokabulargröße plus eins als Eingabedimension und die Satzgröße als Eingabelänge.
  • Das Modell zusammenstellen.
  • Druck die Zusammenfassung des Modells mit Einbettung aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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.____
Code bearbeiten und ausführen