Steuerung des Vokabulars mit dem Tokenizer
Schauen wir uns die Funktionsweise des „ Tokenizer ” mal genauer an. In dieser Übung lernst du, wie du einen beliebigen Satz mit einem trainierten Sprachmodell ( Tokenizer) in eine Sequenz umwandeln kannst. Außerdem lernst du, wie du den Umfang des Vokabulars der „ Tokenizer “ kontrollieren kannst. Du wirst auch untersuchen, was mit Wörtern passiert, die nicht im Wortschatz enthalten sind (OOV-Wörter), wenn du den Wortschatz eines Tokenizer begrenzst.
Für diese Übung hast du das zuvor implementierte Projekt „ en_tok Tokenizer ” zur Verfügung. Die Datei „ Tokenizer “ wurde für dich importiert.
Diese Übung ist Teil des Kurses
Maschinelle Übersetzung mit Keras
Anleitung zur Übung
- Schreib den folgenden Satz mit dem Tokenizer „
en_tok” in eine Sequenz um:she likes grapefruit , peaches , and lemons . - Erstell ein neues „
Tokenizer“, „en_tok_new“ mit einem Wortschatz von 50 Wörtern und einem WortUNK, das nicht im Wortschatz ist. - Pass den neuen Tokenizer auf die Daten „
en_text“ an. - Schreib den Satz „
she likes grapefruit , peaches , and lemons .“ so um, dass er mit „en_tok_new“ zusammenhängt.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Convert the sentence to a word ID sequence
seq = ____.____(['she likes grapefruit , peaches , and lemons .'])
print('Word ID sequence: ', seq)
# Define a tokenizer with vocabulary size 50 and oov_token 'UNK'
en_tok_new = ____(num_words=____, ____=____)
# Fit the tokenizer on en_text
en_tok_new.____(____)
# Convert the sentence to a word ID sequence
seq_new = en_tok_new.____(['she likes grapefruit , peaches , and lemons .'])
print('Word ID sequence (with UNK): ', seq_new)
print('The ID 1 represents the word: ', en_tok_new.index_word[1])