关于Theano和Tensorflow多GPU使用问题


Posted in Python onJune 19, 2020

我使用的是tensorflow-gpu (1.2.1)和Theano (0.9.0),2个4G显存Nvidia Quadro M2000 GPU。

1. theano: ValueError: Could not infer context from inputs

THEANO_FLAGS="contexts=dev0->cuda0;dev1->cuda1,gpuarray.preallocate=0.95,mode=FAST_RUN,floatX=float32,on_unused_input=warn" python config.py

ERROR (theano.gof.opt): SeqOptimizer apply <theano.gpuarray.opt.GraphToGPU object at 0xdfe69210>
ERROR: SeqOptimizer apply <theano.gpuarray.opt.GraphToGPU object at 0xdfe69210>
ERROR (theano.gof.opt): Traceback:
ERROR: Traceback:
ERROR (theano.gof.opt): Traceback (most recent call last):
 File "/usr/lib/python2.7/site-packages/theano/gof/opt.py", line 235, in apply
  sub_prof = optimizer.optimize(fgraph)
 File "/usr/lib/python2.7/site-packages/theano/gof/opt.py", line 87, in optimize
  ret = self.apply(fgraph, *args, **kwargs)
 File "/usr/lib/python2.7/site-packages/theano/gpuarray/opt.py", line 322, in apply
  target = infer_context_name(*fgraph.inputs)
 File "/usr/lib/python2.7/site-packages/theano/gpuarray/basic_ops.py", line 122, in infer_context_name
  raise ValueError("Could not infer context from inputs")
ValueError: Could not infer context from inputs

theano不能自动支持多GPU,需要自己指定一个,只能在一个上面跑, 需要指定一个设备device=cuda0。

支持多GPU, 需要自己编程,参考http://deeplearning.net/software/theano/tutorial/using_multi_gpu.html#

2. tensorflow: ResourceExhaustedError: OOM when allocating tensor with

theano: MemoryError: Error allocating 1440000000 bytes of device memory (out of memory).

说明GPU内存不够,要调小输入或网络单元。

3. theano切换成新的GPU backend

WARNING (theano.sandbox.cuda): The cuda backend is deprecated and will be removed in the next release (v0.10)

theano 0.9.0从cuda backend切换gpuarray backend,需要安装python2-Cython-0.25+和libgpuarray-0.6.3+, 然后通过gpuarray.preallocate来指定。

补充知识:pytorch网络输入图片通道在前在后(channel_first和channel_last)的问题

刚开始学习pytorch卷积神经网络的时候,网络输入要求是(batch,3,32,32),我们如果想要测试自己电脑上的图片格式为(32,32,3)。即网络要求channel_first,本地图片是channel_last,此时我们只需要使用numpy中的np.transpose()函数调整下通道的顺序即可。

代码如下:

import numpy as np
import cv2
path = r"C:\Users\X_man\Desktop\image\cat.jpg"
image = cv2.imread(path,0)
image = cv2.resize(image,(32,32))
image = cv2.cvtColor(image,cv2.COLOR_GRAY2BGR)
print(image.shape)

(32,32,3)

image = np.transpose(image,(2,0,1))
print(image.shape)

(3,32,32)

以上这篇关于Theano和Tensorflow多GPU使用问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
基于进程内通讯的python聊天室实现方法
Jun 28 Python
Python使用QRCode模块生成二维码实例详解
Jun 14 Python
Python设计模式之解释器模式原理与用法实例分析
Jan 10 Python
django 使用全局搜索功能的实例详解
Jul 18 Python
Python 依赖库太多了该如何管理
Nov 08 Python
pandas中的数据去重处理的实现方法
Feb 10 Python
AUC计算方法与Python实现代码
Feb 28 Python
python实现凯撒密码、凯撒加解密算法
Jun 11 Python
keras 读取多标签图像数据方式
Jun 12 Python
详解基于Scrapy的IP代理池搭建
Sep 29 Python
python中Matplotlib绘制直线的实例代码
Jul 04 Python
Python字符串的转义字符
Apr 07 Python
如何对python的字典进行排序
Jun 19 #Python
浅谈Python中的继承
Jun 19 #Python
python程序需要编译吗
Jun 19 #Python
python中round函数如何使用
Jun 19 #Python
keras实现theano和tensorflow训练的模型相互转换
Jun 19 #Python
Keras 切换后端方式(Theano和TensorFlow)
Jun 19 #Python
python中怎么表示空值
Jun 19 #Python
You might like
在PWS上安装PHP4.0正式版
2006/10/09 PHP
PHP伪静态页面函数附使用方法
2008/06/20 PHP
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
PHP Web木马扫描器代码分享
2015/09/06 PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
2016/04/20 PHP
PHP结合Vue实现滚动底部加载效果
2017/12/17 PHP
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
AngularJS基础 ng-copy 指令实例代码
2016/08/01 Javascript
jquery+css实现侧边导航栏效果
2017/06/12 jQuery
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
Vue中props的使用详解
2018/06/15 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解
2019/03/28 Javascript
Python守护进程(daemon)代码实例
2015/03/06 Python
Python处理JSON时的值报错及编码报错的两则解决实录
2016/06/26 Python
Python 3.x 连接数据库示例(pymysql 方式)
2017/01/19 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
2018/10/11 Python
Python3 单行多行万能正则匹配方法
2019/01/07 Python
python 多个参数不为空校验方法
2019/02/14 Python
python 将dicom图片转换成jpg图片的实例
2020/01/13 Python
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
Footshop乌克兰:运动鞋的最大选择
2019/12/01 全球购物
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
门卫班长岗位职责
2013/12/15 职场文书
大学生自我评价范文分享
2014/02/21 职场文书
网吧最新创业计划书范文
2014/03/27 职场文书
幼儿园老师寄语
2014/04/03 职场文书
局领导领导班子四风对照检查材料
2014/09/27 职场文书
2014年施工员工作总结
2014/11/18 职场文书
收入证明怎么写
2015/06/12 职场文书
投诉信格式范文
2015/07/02 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
2019新员工试用期转正申请书3篇
2019/08/13 职场文书