Část 1: Model pro obrácení textu – enkodér
Vytvoření jednoduchého modelu pro obrácení textu je skvělý způsob, jak pochopit mechaniku architektur enkodér–dekodér a způsob, jakým jsou propojeny. Teď implementuješ část enkodéru takového modelu.
Implementace enkodéru je rozdělena do dvou cvičení. V tomto cvičení definuješ pomocnou funkci words2onehot(). Funkce words2onehot() by měla přijmout seznam slov a slovník word2index a převést seznam slov na pole one-hot vektorů. Slovník word2index je dostupný v pracovním prostoru.
Toto cvičení je součástí kurzu
Machine Translation with Keras
Pokyny k cvičení
- Převeď slova na ID pomocí slovníku
word2indexuvnitř funkcewords2onehot(). - Převeď ID slov na one-hot vektory o délce
3(pomocí argumentunum_classes) a vrať výsledné pole. - Zavolej funkci
words2onehot()se slovyI,likeacatsa výsledek přiřaď do proměnnéonehot. - Vypiš slova a jejich odpovídající one-hot vektory pomocí funkcí
print()azip(). Funkcezip()umožňuje iterovat přes více seznamů najednou.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
import numpy as np
def words2onehot(word_list, word2index):
# Convert words to word IDs
word_ids = [____[w] for w in ____]
# Convert word IDs to onehot vectors and return the onehot array
onehot = ____(____, num_classes=3)
return ____
words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])