Налаштування параметрів моделі
Час спробувати різні параметри вашої моделі й подивитися, наскільки добре вона працює!
Функція create_model(), яку ви створили у попередній вправі, уже готова до використання.
Оскільки навчання об'єкта RandomizedSearchCV займе надто багато часу, результати, які ви мали б отримати, виводяться у функції show_results().
Ви можете самостійно спробувати random_search.fit(X,y) у консолі, щоб переконатися, що все працює після того, як побудуєте решту, але, ймовірно, отримаєте перевищення ліміту часу у вправі (тож спершу скопіюйте свій код, якщо спробуєте це, інакше можете втратити прогрес!).
Вам не потрібно використовувати необов'язкові параметри epochs і batch_size під час створення об'єкта KerasClassifier, адже ви передаєте їх як params у випадковий пошук, і це вже працює.
Ця вправа є частиною курсу
Вступ до Deep Learning з Keras
Інструкції до вправи
- Імпортуйте
KerasClassifierіз оболонок scikit_learn уtensorflow.keras. - Використайте вашу функцію
create_modelпід час створення екземпляраKerasClassifier. - Задайте
'relu'і'tanh'якactivation, 32, 128 і 256 якbatch_size, 50, 100 і 200 якepochs, а такожlearning_rate0.1, 0.01 і 0.001. - Передайте перетворену
modelі обраніparams, коли створюєте об'єктRandomizedSearchCV.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()