Keras是一个快速构建深度学习网络的框架。Keras其本身并不处理如张量乘法、卷积等底层操作,这些操作依赖于“后端引擎”。Keras提供了三种后端引擎Theano/Tensorflow/CNTK,并将其函数统一封装,使得用户可以以同一个接口调用不同后端引擎的函数。

通常 Keras 是默认 Tensorflow 为后端引擎。

修改Keras引擎有如下三种方式:

方法一:

修改用户目录下的 .keras/keras.json 文件,默认配置如下:


{
    "image_data_format": "channels_last",
    "epsilon": 1e-07,
    "floatx": "float32",
    "backend": "tensorflow"
}

注意:

1)如果该目录下没有该文件,你可以手动创建一个;

2)windows下在 %USERPROFILE% 下,linux下在 $Home 下 的.keras/keras.json文件;

3)将backend字段的值改写为你需要使用的后端:theano或tensorflow或者CNTK,即可完成后端的切换

方法二:

定义环境变量KERAS_BACKEND来覆盖上面配置文件中定义的后端

windows下一般通过如下方式添加:

Linux下一般可以通过如下方式设定(一般在home目录.bashrc文件中定义或者直接在终端定义):

export KERAS_BACKEND=tensorflow

方法三:

我们直接在python脚本中import模块前使用os模块设置环境变量


# 下面语句添加在keras前
import os
os.environ["KERAS_BACKEND"] = "tensorflow"

参考资料:

1.https://keras.io/

2.https://keras-cn.readthedocs.io/en/latest/backend/