I am getting an import error when trying to import the Keras module Nadam:
>>> from keras.optimizers import Nadam
Traceback (most recent call last):
It could happen if you're using other version of python. Let's say, you have installed python globally with version 2.7.x, but when running your script, you're using python 3.x. In this case even you'll run python shell, you'll be able to import it, but when running concrete script which uses other version of python it wouldn't be possible.
Seems as if your keras package is not the latest version. Update your keras package by
sudo -H pip3 install git+https://github.com/fchollet/keras.git --upgrade
or
sudo -H pip3 install git+https://github.com/fchollet/keras.git --upgrade
If you can import something in one place but not another, it's definitely an issue with the import system. So, carefully check the relevant variables (sys.path
, environment variable PYTHONPATH
) and where the modules in each case are being imported from (sys.modules
).
For a more in-depth reading, I direct you to the Python import system docs and an overview of common traps in the system.
You may also have an old version of Keras installed somewhere: Nadam is a fairly recent addition (2016-05), so this may be the cause for the "can import other optimizers but not this one" behaviour.