Modificare le dimensioni del batch
Hai visto che i modelli vengono di solito addestrati in batch di dimensione fissa. Più è piccolo il batch, più aggiornamenti dei pesi avrai per epoca, ma con il rovescio della medaglia di una discesa del gradiente più instabile. Soprattutto se il batch è troppo piccolo e non rappresentativo dell'intero set di addestramento.
Vediamo come diverse dimensioni del batch influenzano l'accuratezza di un semplice modello di classificazione binaria che separa punti rossi da blu.
Userai un batch size pari a uno, aggiornando i pesi una volta per campione nel tuo set di addestramento a ogni epoca. Poi userai l'intero insieme di dati, aggiornando i pesi solo una volta per epoca.
Questo esercizio fa parte del corso
Introduzione al Deep Learning con Keras
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Get a fresh new model with get_model
model = ____
# Train your model for 5 epochs with a batch size of 1
model.fit(X_train, y_train, epochs=____, ____=____)
print("\n The accuracy when using a batch of size 1 is: ",
model.evaluate(X_test, y_test)[1])