Bonjour à tous,
J'utilise les versions les plus recentes de keras et tensorflow, et visiblement il y a un probleme avec l'ajustement des poids du model,
J'utilise Adam, mais j'ai essayé avec SGD et le resultat est le meme,
mon code :
que j'utilise Adam de tensorflow.keras.optimizers.Adam ou de tensorflow.optimizers.Adam, l'erreur est la memeCode:from tensorflow.keras.optimizers import Adam def jecompile(self,learning_rate=0.0001): optimizer= Adam(learning_rate=learning_rate) mse_loss=tf.keras.losses.MeanSquaredError() self.model.compile(optimizer=optimizer, loss=mse_loss)
L'erreur :
De ce que j'ai cru comprendre, l methode get_update() n'existe plus pour keras 2.x c'est pourquoi il ne supporte pas l'appel de : updates = self.optimizer.get_updates(Code:File C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training_v1.py:2282, in Model._make_train_function(self) 2279 with backend.get_graph().as_default(): 2280 with backend.name_scope("training"): 2281 # Training updates -> 2282 updates = self.optimizer.get_updates( 2283 params=self._collected_trainable_weights, 2284 loss=self.total_loss, 2285 ) 2286 # Unconditional updates 2287 updates += self.get_updates_for(None) AttributeError: 'Adam' object has no attribute 'get_updates'
Pourtant cet appel n'est pas de moi mais issu du code du package keras 2.11.0
Merci à vousCode:import tensorflow print(tensorflow.__version__) import keras print(keras.__version__) >2.11.0 >2.11.0
-----