Attributeerror: module ‘keras.optimizers’ has no attribute ‘adam’

Attributeerror module 'keras.optimizers' has no attribute 'adam'

attributeerror: module ‘keras.optimizers’ has no attribute ‘adam’  error occurs mainly because Keras is officially an integral part of TensorFlow 2.0 version and the import statement is not compatible with TensorFlow 2.0 syntax. To make it simpler in understanding, Suppose you have installed TensorFlow 2.0 but the syntax that you are invoking is an old version compatible. Meaning the Keras import is explicit. This is not expected, You should use Keras as a submodule of TensorFlow only.

In this article, We will see how to import properly the keras.

attributeerror: module ‘keras.optimizers’ has no attribute ‘adam’ : Solution –

The solution will be around only import statements. So let’s start the journey.

Solution 1 : Changing inline import statement –

Since keras is now sub- module of tensorFlow 2.0 , Hence the proper way to import keras.optimizers is below.


The statement is just an example but we need to change all inline imports. This is a little time-consuming but memory efficient.

Solution 2 :Import entire keras module from tensorflow –

In this solution, we can import the complete tensorflow keras module at once rather than importing it inline. Here is the code for this.

from tensorflow import keras
attributeerror module keras.optimizers has no attribute adam
attributeerror module keras.optimizers has no attribute adam

Since Keras was always popular for high-level implementation of deep learning model creation. At One end it is too easy on syntax While On the other hand, it gives full control over deep learning algorithms by flexible parameters. In TensorFlow 1.x , the full control over layers and parameters were there but creating deep learning neural network was little complex. Hence In TensorFlow 2.o, Developer integrates Keras as an official package into TensorFlow 2.0.

Similar Errors :

1.importerror: cannot import name ‘adam’ from ‘keras.optimizers’

2.Importerror: cannot import name ‘to_categorical’ from ‘keras.utils’ (Solved)

3.Importerror: cannot import name ‘to_categorical’ from ‘keras.utils’ (Solved)

4.Keras Deep Learning Tutorial: Build A Good Model in 5 Steps


Data Science Learner Team


Join our list

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.

Thank you for signup. A Confirmation Email has been sent to your Email Address.

Something went wrong.

Meet Abhishek ( Chief Editor) , a data scientist with major expertise in NLP and Text Analytics. He has worked on various projects involving text data and have been able to achieve great results. He is currently manages, where he and his team share knowledge and help others learn more about data science.
Thank you For sharing.We appreciate your support. Don't Forget to LIKE and FOLLOW our SITE to keep UPDATED with Data Science Learner