Quelle est la différence entre fit () et fit_generator () dans Keras?

Réponses:

16

En keras, fit()est très similaire à la méthode d'ajustement de sklearn, où vous passez un tableau d'entités en tant que valeurs x et ciblez en tant que valeurs y. Vous passez votre ensemble de données entier à la fois dans la méthode fit. Utilisez-le également si vous pouvez charger des données entières dans votre mémoire (petit ensemble de données).

Dans fit_generator(), vous ne passez pas directement les x et y, ils proviennent plutôt d'un générateur . Comme il est écrit dans la documentation keras , générateur est utilisé lorsque vous voulez éviter les données en double lors de l' utilisation multitraitement. C'est à des fins pratiques, lorsque vous avez un grand ensemble de données.

Voici un lien pour en savoir plus à ce sujet-

Une chose que vous devez savoir sur Keras si vous prévoyez de former un modèle d'apprentissage en profondeur sur un grand ensemble de données

Pour référence, vous pouvez consulter ce livre - https://github.com/hktxt/bookshelf/blob/master/Computer%20Science/Deep%20Learning%20with%20Python%2C%20Fran%C3%A7ois%20Chollet.pdf

Ankit Seth
la source
Salut Ankit, votre lien deeplearningitalia.com/wp-content/uploads/2017/12/… ne fonctionne pas. Avez-vous un lien de travail.
Chidu Murthy
@ChiduMurthy Merci pour l'info. J'ai édité le lien.
Ankit Seth
Selon la documentation, nous pouvons également passer des générateurs pour adapter la méthode. Donc je ne comprends toujours pas pourquoi nous avons besoin d'une méthode fit_generator distincte? tensorflow.org/api_docs/python/tf/keras/Model#fit
alyaxey
0

Il y a plus que la différence entre Keras fitet ce qui paraît fit.generatorà l'œil nu. J'avais un ensemble de données parfaitement appris par le modèle à l'aide fit.generator. Comme l'ensemble de données n'a pas été trop grand , je décidé de changer de fitlieu de fit.generator. À ma grande surprise, la courbe d'apprentissage était partout. J'ai dû recommencer à zéro. Devinez la façon dont les dégradés sont mis à jour dans chaque fonction diffère de manière significative. Il faut se méfier.

agcala
la source