Ajustar los parámetros del modelo
¡Es hora de probar distintos parámetros en tu modelo y ver cómo rinde!
La función create_model() que construiste en el ejercicio anterior está lista para que la uses.
Como ajustar el objeto RandomizedSearchCV tardaría demasiado, los resultados que obtendrías se imprimen en la función show_results().
Puedes probar random_search.fit(X,y) en la consola para comprobar que funciona después de haber montado todo lo demás, pero probablemente se agote el tiempo del ejercicio (así que copia tu código antes si lo intentas o podrías perder tu progreso).
No necesitas usar los parámetros opcionales epochs y batch_size al construir tu objeto KerasClassifier, ya que se los pasas como params a la búsqueda aleatoria y así ya funciona.
Este ejercicio forma parte del curso
Introducción al Deep Learning con Keras
Instrucciones del ejercicio
- Importa
KerasClassifierdesde los wrappers de scikit_learn entensorflow.keras. - Usa tu función
create_modelal instanciar tuKerasClassifier. - Establece
'relu'y'tanh'comoactivation; 32, 128 y 256 comobatch_size; 50, 100 y 200epochs; ylearning_ratede 0.1, 0.01 y 0.001. - Pasa tu
modelconvertido y losparamselegidos al crear tu objetoRandomizedSearchCV.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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()