使用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 相关文章推荐
Windows下安装python MySQLdb遇到的问题及解决方法
Mar 16 Python
利用Python实现Windows定时关机功能
Mar 21 Python
tensorflow 获取变量&打印权值的实例讲解
Jun 14 Python
Python参数解析模块sys、getopt、argparse使用与对比分析
Apr 02 Python
Python datetime包函数简单介绍
Aug 28 Python
Django框架 Pagination分页实现代码实例
Sep 04 Python
python rsa实现数据加密和解密、签名加密和验签功能
Sep 18 Python
Django 创建后台,配置sqlite3教程
Nov 18 Python
python+adb命令实现自动刷视频脚本案例
Apr 23 Python
python dict乱码如何解决
Jun 07 Python
详解在Python中使用Torchmoji将文本转换为表情符号
Jul 27 Python
python批量创建变量并赋值操作
Jun 03 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 的ArrayAccess接口 像数组一样来访问你的PHP对象
2010/10/12 PHP
php设计模式 Observer(观察者模式)
2011/06/26 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
php常用hash加密函数
2014/11/22 PHP
Laravel 5 框架入门(二)构建 Pages 的管理功能
2015/04/09 PHP
php判断是否连接上网络的方法实例详解
2016/12/14 PHP
javascript基础知识大全 便于大家学习,也便于我自己查看
2012/08/17 Javascript
JS实现鼠标单击与双击事件共存
2014/03/08 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
微信小程序 简单教程实例详解
2017/01/13 Javascript
nodejs中使用HTTP分块响应和定时器示例代码
2017/03/19 NodeJs
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
使用Python发送各种形式的邮件的方法汇总
2015/11/09 Python
Numpy数组的保存与读取方法
2018/04/04 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
python连接mongodb密码认证实例
2018/10/16 Python
浅谈Python基础—判断和循环
2019/03/22 Python
python对常见数据类型的遍历解析
2019/08/27 Python
基于Django框架的权限组件rbac实例讲解
2019/08/31 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
利用Python小工具实现3秒钟将视频转换为音频
2019/10/29 Python
django model object序列化实例
2020/03/13 Python
详解如何用HTML5 Canvas API控制图片的缩放变换
2016/03/22 HTML / CSS
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
美国创意之家:BulbHead
2017/07/12 全球购物
MADE荷兰:提供原创设计师家具
2018/04/03 全球购物
新西兰最大的连锁超市:Countdown
2020/06/04 全球购物
军训鉴定表自我鉴定
2014/02/13 职场文书
2014班子“三严三实”对照检查材料思想汇报
2014/09/18 职场文书
2014年向国旗敬礼活动总结
2014/09/27 职场文书
销售员工作检讨书(推荐篇)
2014/10/18 职场文书
五四青年节比赛演讲稿
2015/03/18 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android
CSS实现切角+边框+投影+内容背景色渐变效果
2021/11/01 HTML / CSS