Ladění parametrů modelu
Je čas vyzkoušet různé parametry na svém modelu a zjistit, jak dobře si povede!
Funkce create_model(), kterou jsi sestavil/a v předchozím cvičení, je připravena k použití.
Protože přizpůsobení objektu RandomizedSearchCV by trvalo příliš dlouho, výsledky, které bys získal/a, jsou vypsány ve funkci show_results().
V konzoli si můžeš zkusit random_search.fit(X,y) a ověřit, že vše funguje, až dostavíš zbytek kódu — ale cvičení ti pravděpodobně vyprší časový limit (zkopíruj si kód předem, ať nepřijdeš o postup!).
Při vytváření objektu KerasClassifier nemusíš používat volitelné parametry epochs a batch_size, protože je předáváš jako params do náhodného hledání — to funguje samo od sebe.
Toto cvičení je součástí kurzu
Úvod do hlubokého učení s Keras
Pokyny k cvičení
- Importuj
KerasClassifierz wrapperů scikit-learn vtensorflow.keras. - Při vytváření instance
KerasClassifierpoužij svou funkcicreate_model. - Nastav
'relu'a'tanh'jakoactivation, hodnoty 32, 128 a 256 jakobatch_size, hodnoty 50, 100 a 200 jakoepochsalearning_rate0.1, 0.01 a 0.001. - Při sestavování objektu
RandomizedSearchCVpředej svůj převedenýmodela zvolenéparams.
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 KerasClassifier from tensorflow.keras scikit learn wrappers
from tensorflow.keras.wrappers.____ import ____
# Create a KerasClassifier
model = KerasClassifier(build_fn = ____)
# Define the parameters to try out
params = {'activation': [____, ____], 'batch_size': [____, ____, ____],
'epochs': [____, ____, ____], 'learning_rate': [____, ____, ____]}
# Create a randomize search cv object passing in the parameters to try
random_search = RandomizedSearchCV(____, param_distributions = ____, cv = KFold(3))
# Running random_search.fit(X,y) would start the search,but it takes too long!
show_results()