Tensorflow._api.v2.train has no attribute 'AdamOptimizer'

Question:

When using

model.compile(optimizer = tf.train.AdamOptimizer(),
              loss = 'sparse_categorical_crossentropy',
              metrics=['accuracy'])

in my Jupyter Notebook the following Error pops up:

module ‘tensorflow._api.v2.train’ has no attribute ‘AdamOptimizer’

Tensorflow Version: 2.0.0-alpha0


Do you think the only possibility is to downgrade the TF version?

Asked By: MatlabNewb

||

Answers:

I haven’t tried 2.0 yet, but from what I’ve seen on the dev submit videos, you can use

model.compile(optimizer = 'adam',
           loss = 'sparse_categorical_crossentropy',
           metrics=['accuracy'])
Answered By: William G
tf.train.AdamOptimizer() => tf.optimizers.Adam()

From https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/optimizers

Answered By: Meixu Song
tf.optimizers.Adam()

Is the way to go. No reason to downgrade.
There are lots of changes in tf 2.0 compared to 1.14.
Note that the parameter-names of Adam have changed, too. e.g. beta1 is now beta_1, check the documentation in Meixu Songs link.

Answered By: Rriskit
model.compile(optimizer = tf.keras.optimizers.Adam(),
              loss = 'sparse_categorical_crossentropy',
              metrics=['accuracy'])
Answered By: ShaneCalder

I had the same error. I removed

tf.train.AdamOptimizer() 

And I wrote

tf.optimizers.Adam()

Instead.

Answered By: user12424147

It’s a minor change in upgraded version.

Please use:

model.compile(optimizer=tf.optimizers.Adam(), loss="sparse_categorical_crossentropy")

Thanks!

Answered By: Adi

It should be:

tf.compat.v1.train.AdamOptimizer()
Answered By: Faisal Buzaid

model.compile(optimizer = tf.keras.optimizers.Adam(), loss = 'sparse_categorical_crossentropy', metrics=['accuracy'])

Answered By: Musa
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.