使用tensorflow根据输入更改tensor shape


Posted in Python onJune 23, 2020

涉及随机数以及类RNN的网络构建常常需要根据输入shape,决定中间变量的shape或步长。

tf.shape函数不同于tensor.shape.as_list()函数,后者返回的是常值list,而前者返回的是tensor。

使用tf.shape函数可以使得中间变量的tensor形状随输入变化,不需要在构建Graph的时候指定。但对于tf.Variable,因为需要提前分配固定空间,其shape无法通过上诉方法设定。

实例代码如下:

a = tf.placeholder(tf.float32,[None,])
b = tf.random_normal(tf.concat([tf.shape(a),[2,]],axis=0))

补充知识:pytorch中model=model.to(device)用法

这代表将模型加载到指定设备上。

其中,device=torch.device("cpu")代表的使用cpu,而device=torch.device("cuda")则代表的使用GPU。

当我们指定了设备之后,就需要将模型加载到相应设备中,此时需要使用model=model.to(device),将模型加载到相应的设备中。

将由GPU保存的模型加载到CPU上。

将torch.load()函数中的map_location参数设置为torch.device('cpu')

device = torch.device('cpu')
model = TheModelClass(*args, **kwargs)
model.load_state_dict(torch.load(PATH, map_location=device))

将由GPU保存的模型加载到GPU上。确保对输入的tensors调用input = input.to(device)方法。

device = torch.device("cuda")
model = TheModelClass(*args, **kwargs)
model.load_state_dict(torch.load(PATH))
model.to(device)

将由CPU保存的模型加载到GPU上。确保对输入的tensors调用input = input.to(device)方法。map_location是将模型加载到GPU上,model.to(torch.device('cuda'))是将模型参数加载为CUDA的tensor。最后保证使用.to(torch.device('cuda'))方法将需要使用的参数放入CUDA。

device = torch.device("cuda")
model = TheModelClass(*args, **kwargs)
model.load_state_dict(torch.load(PATH, map_location="cuda:0")) # Choose whatever GPU device number you want
model.to(device)

以上这篇使用tensorflow根据输入更改tensor shape就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用wxPython开发的一个简易笔记本程序实例
Feb 08 Python
简单介绍Python2.x版本中的cmp()方法的使用
May 20 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
Python爬虫包 BeautifulSoup  递归抓取实例详解
Jan 28 Python
利用Python实现Windows下的鼠标键盘模拟的实例代码
Jul 13 Python
python实现事件驱动
Nov 21 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
​如何愉快地迁移到 Python 3
Apr 28 Python
Python3的unicode编码转换成中文的问题及解决方案
Dec 10 Python
pytorch 实现在一个优化器中设置多个网络参数的例子
Feb 20 Python
django form和field具体方法和属性说明
Jul 09 Python
python实现将中文日期转换为数字日期
Jul 14 Python
pytorch 计算ConvTranspose1d输出特征大小方式
Jun 23 #Python
Android Q之气泡弹窗的实现示例
Jun 23 #Python
pytorch判断是否cuda 判断变量类型方式
Jun 23 #Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
Jun 23 #Python
python如何查看安装了的模块
Jun 23 #Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
Jun 23 #Python
Python dict的常用方法示例代码
Jun 23 #Python
You might like
PHP实现克鲁斯卡尔算法实例解析
2014/08/22 PHP
Linux系统下php获得系统分区信息的方法
2015/03/30 PHP
php打包网站并在线压缩为zip
2016/02/13 PHP
详谈php静态方法及普通方法的区别
2016/10/04 PHP
javascript操作excel生成报表示例
2014/05/08 Javascript
javascript实现tab切换的四种方法
2015/11/05 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
Angular 4 指令快速入门教程
2017/06/07 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
详解ES6中的 Set Map 数据结构学习总结
2018/11/06 Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
2019/04/23 jQuery
vue使用websocket的方法实例分析
2019/06/22 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
python 中的divmod数字处理函数浅析
2017/10/17 Python
完美解决Pycharm无法导入包的问题 Unresolved reference
2018/05/18 Python
在NumPy中创建空数组/矩阵的方法
2018/06/15 Python
利用python GDAL库读写geotiff格式的遥感影像方法
2018/11/29 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
python将字典内容写入json文件的实例代码
2020/08/12 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
芭比波朗加拿大官方网站:Bobbi Brown Cosmetics CA
2020/11/05 全球购物
this关键字的作用
2016/01/30 面试题
高中生学习生活的自我评价
2013/11/27 职场文书
大学生自荐信
2013/12/11 职场文书
五好党支部事迹材料
2014/02/06 职场文书
阿德的梦教学反思
2014/02/06 职场文书
上班玩游戏检讨书
2014/02/07 职场文书
教研处工作方案
2014/05/26 职场文书
物业保安岗位职责
2014/07/02 职场文书
玄武湖导游词
2015/02/05 职场文书
财政局个人总结
2015/03/04 职场文书
在校证明模板
2015/06/17 职场文书
2015年电气技术员工作总结
2015/07/24 职场文书
2016公务员年度考核评语
2015/12/01 职场文书