尝试导入Keras模块Nadam时出现导入错误:
>>> from keras.optimizers import Nadam
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name Nadam
我可以导入和使用SGD,Adam等,而不是这个优化器。任何帮助表示赞赏。
我使用以下方式安装了Keras:
git clone https://github.com/fchollet/keras.git
sudo python2.7 setup.py install
我刚刚发现,如果我在安装后立即尝试使用shell导入它,那么Nadam导入就可以了。但Nadam不会导入我的脚本。那么这是一个路径问题?
答案 0 :(得分:4)
如果您可以在一个地方而不是另一个地方导入某些内容,那么导入系统肯定是一个问题。因此,请仔细检查相关变量(PYTHONPATH
,环境变量sys.modules
)以及从({{1}})导入每种情况下的模块的位置。
要获得更深入的阅读,我会引导您转到Python import system docs和an overview of common traps in the system。
您可能还在某处安装了旧版本的Keras:Nadam是a fairly recent addition(2016-05),因此这可能是导致“可以导入其他优化但不能导入此行为”的原因。
答案 1 :(得分:1)
如果你使用的是其他版本的python,可能会发生这种情况。假设您已经在版本2.7.x中全局安装了python,但是在运行脚本时,您使用的是python 3.x.在这种情况下,即使你运行python shell,你也可以导入它,但是当运行使用其他版本的python的具体脚本时,它是不可能的。
答案 2 :(得分:0)
好像你的keras包不是最新版本。通过
更新您的keras包sudo -H pip3 install git+https://github.com/fchollet/keras.git --upgrade
或
sudo -H pip3 install git+https://github.com/fchollet/keras.git --upgrade