Kontrolowanie słownika za pomocą Tokenizera
Przyjrzyjmy się bliżej działaniu obiektu Tokenizer. W tym ćwiczeniu nauczysz się, jak przekonwertować dowolne zdanie na sekwencję przy użyciu wytrenowanego Tokenizera. Poznasz też sposób kontrolowania rozmiaru słownika Tokenizera. Sprawdzisz ponadto, co dzieje się ze słowami spoza słownika (OOV – out-of-vocabulary), gdy ograniczysz jego rozmiar.
Na potrzeby tego ćwiczenia udostępniono ci Tokenizer o nazwie en_tok, który zaimplementowałeś wcześniej. Tokenizer został już zaimportowany.
To ćwiczenie jest częścią kursu
Tłumaczenie maszynowe z Keras
Instrukcje do ćwiczenia
- Przekonwertuj następujące zdanie na sekwencję przy użyciu wcześniejszego Tokenizera
en_tok:she likes grapefruit , peaches , and lemons . - Utwórz nowy
Tokenizero nazwieen_tok_newz rozmiarem słownika równym 50 i tokenem dla słów spoza słownika ustawionym naUNK. - Dopasuj nowy tokenizer do danych
en_text. - Przekonwertuj zdanie
she likes grapefruit , peaches , and lemons .na sekwencję przy użyciuen_tok_new.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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])