Keras import error Nadam
Asked Answered
M

3

12

I am getting an import error when trying to import the Keras module Nadam:

>>> from keras.optimizers import Nadam
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name Nadam

I can import and use SGD, Adam, etc, just not this optimizer. Any help appreciated.

I installed Keras using:

git clone https://github.com/fchollet/keras.git
sudo python2.7 setup.py install

I have just found that, if I try to import it using the shell immediately after installation, the Nadam import works. But Nadam won't import in my script. So it's a path issue?

Michalemichalski answered 6/8, 2016 at 23:51 Comment(3)
How did you install Keras? from source? using pip? if so, which version?Mohammadmohammed
check out the paths then: sys.path and sys.modules (see where the modules are loaded from) - in the "shell" and in your script.Valuation
The question thus cannot be answered other than by directing you to the Python import system docs so you can troubleshoot the issue (i didn't find a decent guide specifically for troubleshooting, so the docs appear to be enough for the general folk).Valuation
V
5

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.

Valuation answered 31/8, 2016 at 13:8 Comment(0)
D
1

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.

Disbar answered 6/9, 2016 at 14:18 Comment(0)
W
0

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
Wherewithal answered 8/1, 2017 at 5:59 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.