LoslegenKostenlos loslegen

Den Text für die Ausgabe vorbereiten

In dieser Übung machst du die Ausgangstexte fertig, die für das Übersetzungsmodell gebraucht werden. Du musst nicht nur den Text in Indexsequenzen umwandeln, sondern auch jeden Index mit One-Hot-Encoding versehen.

Die englischen Texte werden in die Variable „ en_sentences “ geladen, der passende Tokenizer in die Variable „ output_tokenizer “ und die Größe des englischen Vokabulars in „ en_vocab_size “.

Außerdem gibt's schon eine Funktion, die die ersten Schritte der Umwandlung der Ausgabesprache macht (also die Umwandlung von Texten in eine Folge von Indizes). Die Funktion wird als „ transform_text_to_sequences() “ in die Umgebung geladen und hat zwei Parameter: „ sentences “, der eine Liste von Sätzen in Englisch erwartet, und „ tokenizer “, der ein angepasstes „ Tokenizer “-Objekt aus dem Modul „ keras.preprocessing.text “ erwartet.

numpy wird als „ np “ geladen.

Diese Übung ist Teil des Kurses

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

Kurs anzeigen

Anleitung zur Übung

  • Gib die Variablen „ en_sentences “ und „ output_tokenizer “ an die Funktion „ transform_text_to_sequences() “ weiter, um die Variable „ Y “ zu initialisieren.
  • Verwende die Funktion „ to_categorical() “, um die Sätze als One-Hot-Kodierung zu kodieren. Verwende die Variable „ en_vocab_size “ als Anzahl der Klassen.
  • Wandle die temporäre Liste in ein NumPy-Array um und formiere sie so, dass sie die gleiche Form wie „ (num_sentences, sentences_len, en_vocab_size) “ hat.
  • Druck den Rohtext und den umgewandelten Text aus.

Interaktive Übung

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

# Initialize the variable
Y = transform_text_to_sequences(____, ____)

# Temporary list
ylist = list()
for sequence in Y:
  	# One-hot encode sentence and append to list
    ylist.append(____(sequence, num_classes=____))

# Update the variable
Y = np.array(ylist).reshape(____, Y.shape[1], en_vocab_size)

# Print the raw sentence and its transformed version
print("Raw sentence: {0}\nTransformed: {1}".format(____, Y[0]))
Code bearbeiten und ausführen