1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Úvod do deep learningu v Pythonu

Connected

Cvičení

Změna parametrů optimalizace

Teď si vyzkoušíš optimalizaci v praxi. Budeme testovat model se třemi různými hodnotami learning rate: velmi nízkou, velmi vysokou a „akorát správnou". Po spuštění cvičení si prohlédni výsledky – pamatuj, že čím nižší hodnota ztrátové funkce, tím lépe.

Pro toto cvičení jsme předem načetli prediktory a cílové hodnoty z tvých předchozích klasifikačních modelů (předpovídaly přežití na Titaniku). Aby bylo srovnání fér, měla by optimalizace pokaždé začínat od nuly. Proto jsme připravili funkci get_new_model(), která vytvoří nový, neoptimalizovaný model.

Pokyny

100 XP
  • Importuj SGD z tensorflow.keras.optimizers.
  • Vytvoř seznam learning rates, které chceš otestovat, a pojmenuj ho lr_to_test. Hodnoty v něm by měly být .000001, 0.01 a 1.
  • Pomocí cyklu for procházej hodnoty v lr_to_test:
    • Pomocí funkce get_new_model() sestav nový, neoptimalizovaný model.
    • Vytvoř optimizer my_optimizer pomocí konstruktoru SGD() s argumentem lr=lr.
    • Zkompiluj model. Parametr optimizer nastav na SGD objekt, který jsi vytvořil/a výše, a protože jde o klasifikační úlohu, použij pro parametr loss hodnotu 'categorical_crossentropy'.
    • Natrénuj model na datech predictors a target.