keras的backend 设置 tensorflow,theano操作


Posted in Python onJune 30, 2020

win7 系统环境安装步骤:

1.首先是安装Python,建议安装anaconda

2.安装完anaconda后打开anaconda promp命令行promp,输入conda list.

可以看到已经安装的库以及版本等信息,注意此时没有keras.

3.通过 conda install keras 或 pip install keras 直接安装。(会默认的给你安装keras最新版本和所需要的theano)

4.安装完成之后,就可以打开notebook,输入import keras 检查是否成功。

5.因为windows版本的tensorflow刚刚才推出,所以目前支持性不太好。

但是keras的backend 同时支持tensorflow和theano.

并且默认是tensorflow,因此在win本上需要更改backend为theano才能运行。

这是官网的配置文档:点击打开链接

如果已经运行过一次Keras,你将在下面的目录下找到Keras的配置文件:~/.keras/keras.json

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

将文件的默认配置如下:

C:\Users\Administrator>python
Python 2.7.12 |Anaconda 4.2.0 (64-bit)| (default, Jun 29 2016, 11:07:13) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import keras
Using TensorFlow backend.
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "C:\Anaconda2\lib\site-packages\keras\__init__.py", line 2, in <module>
 from . import backend
 File "C:\Anaconda2\lib\site-packages\keras\backend\__init__.py", line 68, in <module>
 from .tensorflow_backend import *
 File "C:\Anaconda2\lib\site-packages\keras\backend\tensorflow_backend.py", line 1, in <module>
 import tensorflow as tf
ImportError: No module named tensorflow
>>> import keras
Using Theano backend.
WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to execute optimized C-implementations (for both CPU and GPU) and will default to Python implementations. Performance will be severely degraded. To remove this warning, set Theano flags cxx to an empty string.

方法一:将C:\Anaconda2\Lib\site-packages\keras\backend\__init__.py的line 27修改

# Default backend: TensorFlow.
#_BACKEND = 'tensorflow'
_BACKEND = 'theano'

然后,python-> import keras

方法二: 出现 tensorflow提示错误的话,需要修改下面的位置的内容

C:\Users\Administrator\.keras\keras.json
{
"image_dim_ordering":"tf",
"epsilon":1e-07,
"floatx":"float32",
"backend":"tensorflow"
}

{
 "image_dim_ordering": "tf", 
 "epsilon": 1e-07, 
 "floatx": "float32", 
 "backend": "theano"
}

补充知识:keras修改backend.py,完成永久配置tensorflow-gpu调用方式

编写keras程序中出现了GPU的内存问题,需要调节keras预设的tensorflow设置参数,每次都必须单独设置gpu选项比较麻烦,可以设置keras下的tensorflow_backend.py实现永久配置keras。

本人的配置:ubuntu18.04+cuda10.0+cuda7.5.1+MX150+tensorflow-gpu1.13.1

初始设置中出现内存错误。

keras依赖的config文件位置

keras的配置文件在linux下在如下的地址中,在用户账户下的隐藏文件夹中.

// 一般的安装位置

~/.local/lib/python2.7/site-packages/keras/backend

使用文件编辑器(vim,vi,nano等)打开tensorflow_backend.py文件

// 一般在文件的180行左右,修改为如下
...
else:
    if _SESSION is None:
      if not os.environ.get('OMP_NUM_THREADS'):
        config = tf.ConfigProto(allow_soft_placement=True)
        config.gpu_options.allow_growth=True
        config.gpu_options.per_process_gpu_memory_fraction=0.9
      else:
        num_thread = int(os.environ.get('OMP_NUM_THREADS'))
        config = tf.ConfigProto(intra_op_parallelism_threads=num_thread,
                    allow_soft_placement=True)
        config.gpu_options.allow_growth=True
        config.gpu_options.per_process_gpu_memory_fraction=0.9
      _SESSION = tf.Session(config=config)
    session = _SESSION
  ...

以上这篇keras的backend 设置 tensorflow,theano操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python的pdb调试命令的命令整理及实例
Jul 12 Python
分享几道你可能遇到的python面试题
Jul 24 Python
Python装饰器(decorator)定义与用法详解
Feb 09 Python
Python3 使用cookiejar管理cookie的方法
Dec 28 Python
对Python信号处理模块signal详解
Jan 09 Python
Python 实现数据结构-堆栈和队列的操作方法
Jul 17 Python
Django CSRF跨站请求伪造防护过程解析
Jul 31 Python
详解Python中的正斜杠与反斜杠
Aug 09 Python
python系列 文件操作的代码
Oct 06 Python
PyTorch中的padding(边缘填充)操作方式
Jan 03 Python
使用python的pyplot绘制函数实例
Feb 13 Python
实现Python3数组旋转的3种算法实例
Sep 16 Python
浅谈TensorFlow中读取图像数据的三种方式
Jun 30 #Python
python中 _、__、__xx__()区别及使用场景
Jun 30 #Python
Django实现内容缓存实例方法
Jun 30 #Python
Pytorch 卷积中的 Input Shape用法
Jun 29 #Python
Python闭包装饰器使用方法汇总
Jun 29 #Python
使用已经得到的keras模型识别自己手写的数字方式
Jun 29 #Python
Python接口测试环境搭建过程详解
Jun 29 #Python
You might like
php Xdebug的安装与使用详解
2013/06/20 PHP
javascript instanceof,typeof的区别
2010/03/24 Javascript
解析Jquery取得iframe中元素的几种方法
2013/07/04 Javascript
javascript实现的右下角弹窗实例
2015/04/24 Javascript
学习JavaScript设计模式之策略模式
2016/01/12 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
详解vue过滤器在v2.0版本用法
2017/06/01 Javascript
BootStrap Fileinput上传插件使用实例代码
2017/07/28 Javascript
Vue单文件组件基础模板小结
2017/08/10 Javascript
Vue单页应用引用单独的样式文件的两种方式
2018/03/30 Javascript
详解微信小程序的 request 封装示例
2018/08/21 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
vue中的循环对象属性和属性值用法
2020/09/04 Javascript
[27:53]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS iG
2014/05/26 DOTA
Python挑选文件夹里宽大于300图片的方法
2015/03/05 Python
python根据出生日期获得年龄的方法
2015/03/31 Python
Python使用chardet判断字符编码
2015/05/09 Python
详解Python 2.6 升级至 Python 2.7 的实践心得
2017/04/27 Python
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
2019/11/15 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
Pyinstaller打包Scrapy项目的实现步骤
2020/09/22 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
用CSS3将你的设计带入下个高度
2009/08/08 HTML / CSS
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
文明社区申报材料
2014/08/21 职场文书
房地产端午节活动方案
2014/08/24 职场文书
院党委组织查摆问题对照检查材料思想汇报2014
2014/10/08 职场文书
党的群众路线教育实践活动查摆问题及整改措施
2014/10/10 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
如何书写公司员工保密协议?
2019/06/27 职场文书
创业计划书之酒厂
2019/10/14 职场文书
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
Win10 Anaconda安装python-pcl
2022/04/29 Servers