我正在尝试在 Ubuntu 16.04 LTS 上为 Python3.5
设置 keras
深度学习库,并使用 Tensorflow
作为后端。我安装了 Python2.7
和 Python3.5
。我已经安装了 Anaconda
并在它的帮助下 Tensorflow
、numpy
、scipy
、pyyaml
。之后我用命令安装了 keras
sudo python setup.py install
虽然可以看到 /usr/local/lib/python3.5/dist-packages/Keras-1.1.0-py3.5.egg
目录,但是不能使用 keras
库。当我尝试在 python 中导入它时,它会说
ImportError: No module named 'keras'
我曾尝试使用pip3
安装keras
,但得到了相同的结果。
我做错了什么?有什么想法吗?
最佳答案
诊断
如果你安装了 pip
(在你使用 Python 3.5 之前你应该安装它),列出已安装的 Python 包,如下所示:
$ pip list | grep -i keras
Keras (1.1.0)
如果没有看到Keras,说明之前的安装失败或者不完整(这个lib有这个依赖:numpy(1.11.2),PyYAML(3.12),scipy(0.18.1),六(1.10 .0) 和 Theano (0.8.2)。)
查阅 pip.log
以了解问题所在。
您还可以像这样显示您的 Python 路径:
$ python3 -c 'import sys, pprint; pprint.pprint(sys.path)'
['',
'/Library/Frameworks/Python.framework/Versions/3.5/lib/python35.zip',
'/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5',
'/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/plat-darwin',
'/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/lib-dynload',
'/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages']
确保 Keras 库出现在 /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages
路径中(Ubuntu 上的路径不同)。
如果没有,请尝试卸载它,然后重试安装:
$ pip uninstall Keras
使用虚拟环境
使用和污染系统范围的 Python 是个坏主意。我推荐使用 virtualenv(参见 guide)。
最好的用法是创建一个 virtualenv
目录(例如在您的家中),并将您的 virtualenvs 存储在:
cd virtualenv/
virtualenv -p python3.5 py-keras
source py-keras/bin/activate
pip install -q -U pip setuptools wheel
然后安装 Keras:
pip install keras
你得到:
$ pip list
Keras (1.1.0)
numpy (1.11.2)
pip (8.1.2)
PyYAML (3.12)
scipy (0.18.1)
setuptools (28.3.0)
six (1.10.0)
Theano (0.8.2)
wheel (0.30.0a0)
但是,您还需要安装额外的库,例如 Tensorflow:
$ python -c "import keras"
Using TensorFlow backend.
Traceback (most recent call last):
...
ImportError: No module named 'tensorflow'
TesnsorFlow 的安装指南在这里:https://www.tensorflow.org/versions/r0.11/get_started/os_setup.html#pip-installation
关于python - 安装后无法导入keras,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39930952/