Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Keras import error Nadam

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?

like image 609
Chris Parry Avatar asked Aug 06 '16 23:08

Chris Parry


2 Answers

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.

like image 164
ivan_pozdeev Avatar answered Sep 18 '22 22:09

ivan_pozdeev


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.

like image 24
turkus Avatar answered Sep 20 '22 22:09

turkus