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 对象内存占用
Jul 15 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
Python引用类型和值类型的区别与使用解析
Oct 17 Python
python爬取亚马逊书籍信息代码分享
Dec 09 Python
python中的单引号双引号区别知识点总结
Jun 23 Python
python实现将视频按帧读取到自定义目录
Dec 10 Python
python获取引用对象的个数方式
Dec 20 Python
解决jupyter notebook显示不全出现框框或者乱码问题
Apr 09 Python
Python内置函数locals和globals对比
Apr 28 Python
keras 获取某层输出 获取复用层的多次输出实例
May 23 Python
python实现学生管理系统开发
Jul 24 Python
Python 数据科学 Matplotlib图库详解
Jul 07 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字符串替换函数substr_replace()用法实例
2015/03/17 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
Laravel学习教程之从入口到输出过程详解
2017/08/27 PHP
JavaScript的eval JSON object问题
2009/11/15 Javascript
JavaScript 面向对象的 私有成员和公开成员
2010/05/13 Javascript
实现局部遮罩与关闭原理及代码
2013/02/04 Javascript
JavaScript对象创建及继承原理实例解剖
2013/02/28 Javascript
JQuery在页面中添加和除移DOM示例代码
2013/06/24 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
js简单实现交换Li的值
2014/05/22 Javascript
JavaScript实现可拖拽的拖动层Div实例
2015/08/05 Javascript
Javascript基础知识盲点总结之函数
2016/05/15 Javascript
javascript作用域、作用域链(菜鸟必看)
2016/06/16 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
微信小程序实现录音功能
2019/11/22 Javascript
element中el-container容器与div布局区分详解
2020/05/13 Javascript
教你如何在Django 1.6中正确使用 Signal
2014/06/22 Python
python基于mysql实现的简单队列以及跨进程锁实例详解
2014/07/07 Python
python利用有道翻译实现&quot;语言翻译器&quot;的功能实例
2017/11/14 Python
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
Python使用matplotlib填充图形指定区域代码示例
2018/01/16 Python
python修改txt文件中的某一项方法
2018/12/29 Python
python库matplotlib绘制坐标图
2019/10/18 Python
python中Lambda表达式详解
2019/11/20 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
基于Python实现全自动下载抖音视频
2020/11/06 Python
python自动生成证件号的方法示例
2021/01/14 Python
Jeep牧马人、切诺基和自由人零配件:4 Wheel Drive Hardware
2017/07/02 全球购物
Lands’ End英国官方网站:高质量男女服装
2017/10/07 全球购物
俄罗斯极限运动网上商店:Board Shop №1
2020/12/18 全球购物
结构工程研究生求职信
2013/10/13 职场文书
爱牙日活动总结
2014/08/29 职场文书
2014高中生入党思想汇报范文
2014/09/13 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
2016年综治和平安建设宣传月活动总结
2016/04/01 职场文书