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

importerror_ cannot import name 'adam' from 'keras.optimizers'

importerror: cannot import name ‘adam’ from ‘keras.optimizers’ error occurs because of using keras import in the place of tensorflow.keras imports . See, Since Keras is one of the most popular High-level deep-learning libraries. Later on TensorFlow 2.0 version, Google Tensorflow Team released an encapsulated keras library. The main reason why they do it is to make Tensorflow more developer-friendly. In this article, we will explore the cause practically with code. We will also explore the fixes for them.

importerror: cannot import name ‘adam’ from ‘keras.optimizers’ – ( Cause )-

In the above introduction, we have fundamentally understood why this importerror comes. But in this section, we will practically see the scenarios.

Problem 1: Wrong Imports –

Firstly, Here we will see how wrongly import impacts an error. Let’s see the code piece.

from keras.optimizers import Adam 
importerror cannot import name 'adam' from 'keras.optimizers'
importerror cannot import name ‘adam’ from ‘keras.optimizers’

The correct way to Import (Fix ) –

It’s really simple, All we need to add the TensorFlow module as a prefix to the Keras module. It signifies that we are invoking the submodule Keras from TensorFlow. For instance –

from tensorflow.keras.optimizers import Adam 

It’s like very common –

cannot import name 'adam' from 'keras.optimizers'
cannot import name ‘adam’ from ‘keras.optimizers’


Problem 2: Case Sensitivity of “Adam “-

Secondly, if we use Adam optimizer in different case folding, It will go through the same error. The other “Adam” case folds are “adam” and “ADAM”.

Let’s see with an example-

from tensorflow.keras.optimizers import adam 
import name 'adam' from 'keras.optimizers' cause case sensitivity
import name ‘adam’ from ‘keras.optimizers’ cause case sensitivity

The correct way to Case Sensitivity  Adam Optimizer(Fix ) –

We have already seen this syntax piece. This time we will only focus on the Adam keyword.

from tensorflow.keras.optimizers import Adam 

Additional Information –


Q 1 -What is Adam optimizer in Keras?
Adam is a stochastic gradient descent optimizer that works on adaptive estimations. Gradient descent is useful in adjusting the weights in hidden layers. it is computationally more complex to Adam optimizer.


Q-2 How do I import Keras optimizer?

from tensorflow.keras.optimizers import {optimizer_name}

However, Here we can configure optimizer_name as per the scenario.

Moreover, For more detail on the Tensorflow optimizer, Please go through this official documentation. Deep Learning is too easy with TensorFlow and adam optimizer is one of the best choices to optimize the neural network parameters. In conclusion, I hope this article is helpful to you. Please update us if you face any concerns.


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