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
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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])