Začněte nyníZačněte zdarma

Předzpracování dat v Kerasu

Druhým nejdůležitějším modulem Kerasu je keras.preprocessing. Uvidíš, jak využít jeho klíčové moduly a funkce k přípravě surových dat do správného vstupního formátu. Keras nabízí nástroje, které nahrazují slovníkový přístup, který sis osvojil/a dříve.

Modul keras.preprocessing.text.Tokenizer použiješ k vytvoření slovníku slov pomocí metody .fit_on_texts() a k převodu textů na numerická id reprezentující index každého slova ve slovníku pomocí metody .texts_to_sequences().

Poté použiješ funkci .pad_sequences() z modulu keras.preprocessing.sequence, aby měly všechny sekvence stejnou délku (což model vyžaduje) – krátké texty se doplní nulami a dlouhé se oříznou.

Toto cvičení je součástí kurzu

Rekurentní neuronové sítě (RNN) pro jazykové modelování s Keras

Zobrazit kurz

Pokyny k cvičení

  • Importuj Tokenizer a pad_sequences z příslušných modulů.
  • Natrénuj objekt tokenizer na vzorových datech uložených v proměnné texts.
  • Převeď texty na sekvence numerických indexů pomocí metody .texts_to_sequences().
  • Srovnej délku textů jejich doplněním (paddingem).

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 relevant classes/functions
from tensorflow.keras.preprocessing.text import ____
from tensorflow.keras.preprocessing.sequence import ____

# Build the dictionary of indexes
tokenizer = Tokenizer()
tokenizer.fit_on_texts(____)

# Change texts into sequence of indexes
texts_numeric = tokenizer.____(texts)
print("Number of words in the sample texts: ({0}, {1})".format(len(texts_numeric[0]), len(texts_numeric[1])))

# Pad the sequences
texts_pad = ____(texts_numeric, 60)
print("Now the texts have fixed length: 60. Let's see the first one: \n{0}".format(texts_pad[0]))
Upravit a spustit kód