Utilizzare un Keras Tuner per l’ottimizzazione degli iperparametri di un modello TensorFlow

Usare Keras Tuner per ottimizzare gli iperparametri di un modello TensorFlow

Foto di Will Francis su Unsplash

Uso del Tuner Iperband con Codice Completo

TensorFlow può essere altamente efficiente, ma il processo di ricerca dei parametri giusti può essere molto faticoso e tedioso. D’altra parte, non sarà altrettanto valido senza i parametri giusti. Tutti i miei tutorial precedenti su TensorFlow hanno mostrato risultati molto buoni. Ma ho presentato solo la mia ultima versione, dove ho trovato i migliori risultati. Mi sono serviti molti tentativi per trovare i parametri ottimali per ottenere buoni risultati.

La libreria Keras ha uno strumento interessante chiamato Keras Tuner che può essere molto utile per trovare gli iperparametri giusti. In questo articolo, lavoreremo su un progetto, svilupperemo un modello completo e vedremo come funziona la ricerca degli iperparametri con il Keras Tuner nel progetto.

Il prerequisito per questo tutorial è che si sappia già come lavorare con Keras e TensorFlow.

Se hai bisogno di aiuto per imparare su modelli TensorFlow e Keras, sentiti libero di dare un’occhiata ad alcuni dei miei tutorial precedenti. Ho fornito i link alla fine di questo articolo.

Inoltre, è necessario installare keras_tuner. Ho utilizzato un notebook di Google Colab per questo progetto e ho usato questa riga di codice per l’installazione:

!pip install keras_tuner

Ora iniziamo il progetto. Ecco gli import necessari:

import tensorflow as tffrom keras.models import Sequentialfrom tensorflow.keras.layers import BatchNormalizationfrom keras.layers.convolutional import Conv2Dfrom keras.layers.convolutional import MaxPooling2Dfrom keras.layers.core import Activationfrom keras.layers.core import Flattenfrom keras.layers.core import Dropoutfrom keras.layers.core import Densefrom keras import backend as Kfrom sklearn.preprocessing import LabelBinarizerfrom sklearn.metrics import classification_reportfrom keras.optimizers import SGDfrom keras.datasets import cifar10import matplotlib.pyplot as pltimport numpy as np%matplotlib inline

Ora svilupperemo alcune funzioni che verranno utilizzate nel modello. Prima di tutto, la funzione model_build. Nel modello build, viene utilizzata una rete neurale convoluzionale della struttura Mini VGG network. Se non sei molto familiare con questo tipo di struttura, ti prego di controllare…