我已经安装了Keras,并希望将后端切换到Theano。我检查了这篇文章,但仍然不知道在哪里放置创建的json文件。此外,下面是我在Python Shell中运行import keras
时得到的错误:
使用TensorFlow后端
Traceback(最近一次调用):文件",第1行,in导入keras文件"C:Python27libsite-packageskeras__init__.py",第2行,在从。导入后端文件"C:Python27libsite-packageskerasbackend__init__.py",第64行,在从.tensorflow_backend导入*文件"C:Python27libsite-packageskerasbackendtensorflow_backend.py",第1行importterror:没有名为tensorflow的模块
当从Windows命令行运行python -c "import keras; print(keras.__version__)"
时,我得到:
使用TensorFlow后端。回溯(最近一次调用):文件",第1行,在文件中"C:Python27libsite-packageskeras__init__.py",第2行从。导入后端文件"C:Python27libsite-packageskerasbackend__init__.py",第64行,在从.tensorflow_backend导入*文件"C:Python27libsite-packageskerasbackendtensorflow_backend.py",第1行importterror:没有名为tensorflow的模块
有人能帮帮我吗?谢谢!
看完keras源代码(此处):
启动python二进制文件并执行以下操作
import os
print(os.path.expanduser('~'))
# >>> C:\Users\Sascha' # will look different for different OS
- 这应该是基本目录
- Keras将在
keras.json
所在的地方建立一个文件夹.keras
(如果它已经创建)。如果没有,就在这里创建 示例:
C:\Users\Sascha\.keras\keras.json'
在Ubuntu的情况下,以下操作对我有效:
"。Keras文件夹存在于您的主目录中,但是是隐藏的。因此,您需要取消隐藏主目录中的隐藏文件。你可以通过
查看隐藏文件- View->显示隐藏文件或
- 按ctrl + h .
现在可以看到'。在主目录下的Keras文件夹。在该文件夹中,您将看到keras。您可以根据官方文档https://keras.io/backend/
"无法找到您的keras。json文件吗?: Windows
在大多数系统上,keras。在打开Python shell并直接导入keras包本身之前,不会创建keras . json文件(以及相关的子目录)。
如果你发现~/.keras/keras。如果您的系统上不存在Keras . json文件,只需打开一个shell,(可选地)访问您的Python虚拟环境(如果您正在使用虚拟环境),然后导入Keras:
$ workon keras_tf
$ python
>>> import keras
>>> quit()
"
引用自:keras-with-tensorflow/theano-backend
使用python shell打开:
import os
with open(os.path.expanduser('~')+'\.keras\keras.json','w') as f:
new_settings = """{rn
"epsilon": 1e-07,rn
"image_data_format": "channels_last",n
"backend": "theano",rn
"floatx": "float32"rn
}"""
f.write(new_settings)
import keras
可以直接使用,
import os
os.environ['KERAS_BACKEND']='theano'
或
os.environ['KERAS_BACKEND']='tensorflow'
如果您想更改配置,可以在这里使用json: ~/.keras/keras.json
要在python 2.7中动态执行此操作,可以运行:
from keras import backend as K
import os
def set_keras_backend(backend):
if K.backend() != backend:
os.environ['KERAS_BACKEND'] = backend
reload(K)
assert K.backend() == backend
set_keras_backend("theano")
对于Linux系统,隐藏的.keras目录将在用户的主目录中创建。要观察它是否已被创建,请在主目录中运行以下命令(-a允许您查看隐藏的文件和目录)。
ls –a
如果该目录存在,那么cd进入该目录并修改keras。json文件。如果没有,那么用
创建目录 mkdir .keras
然后创建文件
touch keras.json
然后编辑该文件以进行配置更改,将后端引擎更改为Theano。
这个过程在这个视频中有完整的介绍。
官方Keras文档可能会帮助您。这个链接展示了如何更改Keras的后端。您必须更改~/.keras/keras。Json从'backend': 'tensorflow',到'backend': 'theano'。
只是为了添加这个信息丰富的帖子。我要用蟒蛇来完成任务。通过我的蟒蛇导入keras。所以keras被安装在
C:UsersusernameAppDataLocalContinuumAnaconda3Libsite-packages
site-packages中有2个文件夹:keras
&Keras-1.0.8.dist-info
.
在Keras-1.0.8.dist-info
中,有一个名为metadata.json
的文件。默认情况下,后台是Theano。所以,如果你把它改为tensorflow,你将得到tensoflow后端。
希望能帮助到有类似问题的人。
最简单的解决方案:
Google的TensorFlow是keras的默认后端,但是如果你想用theano来改变它首先,通过在python shell中导入您希望使用的备用后端,检查是否已成功安装:
if that works fine
步骤2:如果你已经安装了keras,在virtualenv中的ano然后进入virtualenv目录
e。g virtualenv/虚拟/lib/python2.7/网站/keras/后端/
打开init . py修改第27行
Default backend: TensorFlow.
_BACKEND = 'theano'
就这样了
打开python shell并导入keras
import keras as kd
在命令提示符中输入以下命令并按enter键:
%USERPROFILE%/.keras/keras.json
在打开的文本文件中更改后端并保存。
在ubuntu中你可以使用这个命令来打开keras。在vi编辑器中编辑并保存Json文件
sudo vi $HOME/.keras/keras.json
或使用以下命令打开edit
sudo gedit $HOME/.keras/keras.json