基于keras中import keras.backend as K的含义说明
原理介绍
keras是一种基于模块的高级深度学习开发框架,它并没有仅依赖于某一种高速底层张量库,而是对各种底层张量库进行高层模块封装,让底层库完成诸如张量积、卷积操作。
目前,Keras提供了三种后端实现:TensorFlow后端,Theano后端和CNTK后端。
TensorFlow是Google开发的开源符号张量操纵框架。
Theano是由蒙特利尔大学的LISA Lab开发的开源符号张量操纵框架。
CNTK是由Microsoft开发的用于深度学习的开源工具包。
含义
即可以使用抽象的Keras后端编写新代码。
下面的代码实例化输入占位符。它等同于tf.placeholder()或th.tensor.matrix(),th.tensor.tensor3()等等。
inputs = K.placeholder(shape=(2, 4, 5))
# also works:
inputs = K.placeholder(shape=(None, 4, 5))
# also works:
inputs = K.placeholder(ndim=3)
补充:keras, from keras import backend as K 报错
如果遇到from keras import backend as K 报错情况,可能是因为keras.json文件里“backend”未设置成mxnet 或者 tensorflow等。
解决方案:
1、修改Backend:找到这个文件~/.keras/keras.json
其次将其中backend后面的框架修改成mxnet或者tensorflow。
cd ~/.keras
vim keras.json
#----------------------
{ # keras.json文件内容
"image_dim_ordering": "tf",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "theano"
}
如果方案1无法解决问题,则可以尝试方案2.
2、在python代码中import keras前加入一个环境变量修改的语句
import os
os.environ['KERAS_BACKEND']='tensorflow'
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341