Qual'è la differenza tra fit()
e fit_generator()
in Keras?
Quando dovrei usare fit()
vs fit_generator()
?
Qual'è la differenza tra fit()
e fit_generator()
in Keras?
Quando dovrei usare fit()
vs fit_generator()
?
Risposte:
In keras, fit()
è molto simile al metodo di adattamento di sklearn, in cui si passa array di funzioni come valori x e si target come valori y. Passa l'intero set di dati contemporaneamente nel metodo di adattamento. Inoltre, usalo se puoi caricare interi dati nella tua memoria (piccolo set di dati).
In fit_generator()
, non passi direttamente xey, invece provengono da un generatore . Come è scritto nella documentazione di Keras , il generatore viene utilizzato quando si desidera evitare dati duplicati quando si utilizza il multiprocessing. Questo è a scopo pratico, quando si dispone di un set di dati di grandi dimensioni.
Ecco un link per capire di più su questo-
Per riferimento è possibile controllare questo libro- https://github.com/hktxt/bookshelf/blob/master/Computer%20Science/Deep%20Learning%20with%20Python%2C%20Fran%C3%A7ois%20Chollet.pdf
C'è di più nella differenza tra Keras fit
e fit.generator
di quello che sembra. Ho avuto un set di dati che è stato perfettamente appreso dal modello usando fit.generator
. Dato che il set di dati non era troppo grande, ho deciso di cambiare fit
invece di fit.generator
. Con mia sorpresa, la curva di apprendimento era dappertutto. Ho dovuto iniziare a sintonizzare da zero. Indovina il modo in cui i gradienti vengono aggiornati in ciascuna funzione differisce in modo abbastanza significativo. Attenzione.