使用tensorflow根据输入更改tensor shape

 更新时间:2020年06月23日 11:26:03   作者:silent56_th  
这篇文章主要介绍了使用tensorflow根据输入更改tensor shape,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

涉及随机数以及类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实现一个函数版的名片管理系统过程解析

    这篇文章主要介绍了python实现一个函数版的名片管理系统过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python实现批量将word转换成pdf

    Python实现批量将word转换成pdf

    这篇文章主要为大家详细介绍了如何利用Python实现批量将word文档转换成pdf文件,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-08-08
  • pytorch实现seq2seq时对loss进行mask的方式

    pytorch实现seq2seq时对loss进行mask的方式

    今天小编就为大家分享一篇pytorch实现seq2seq时对loss进行mask的方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 举例讲解Django中数据模型访问外键值的方法

    举例讲解Django中数据模型访问外键值的方法

    这篇文章主要介绍了举例讲解Django中数据模型访问外键值的方法,Django是最具人气的Python web开发框架,需要的朋友可以参考下
    2015-07-07
  • Django切换数据库和迁移数据详解

    Django切换数据库和迁移数据详解

    这篇文章主要介绍了Django切换数据库和迁移数据详解的相关资料,需要的朋友可以参考下
    2022-11-11
  • Python和Perl绘制中国北京跑步地图的方法

    Python和Perl绘制中国北京跑步地图的方法

    当你在一个城市,穿越大街小巷,跑步跑了几千公里之后,一个显而易见的想法是,我到底和之前比快了多少,跑量有何变化,如果能把在这个城市的所有路线全部画出来,会是怎样的景象呢,接下来通过本文给大家介绍Python和Perl绘制中国北京跑步地图的方法,需要的朋友参考下
    2016-03-03
  • 如何使用PyCharm将代码上传到GitHub上(图文详解)

    如何使用PyCharm将代码上传到GitHub上(图文详解)

    这篇文章主要介绍了如何使用PyCharm将代码上传到GitHub上(图文详解),文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python标准库学习之psutil内存详解

    Python标准库学习之psutil内存详解

    本篇文章给大家介绍一个Python标准库中的psutil模块,它是一个跨平台库,下面来学习一下器常用的功能及使用方法吧,有需要的同学可以借鉴参考下
    2021-09-09
  • Python 语句的表达式和缩进

    Python 语句的表达式和缩进

    本篇文章将会使大家了解Python 语句、表达式以及它们之间的区别。还包含几个示例来更清楚地解释这个概念。接下来,我们将解释如何在 Python 编程中使用多行语句和缩进,需要的朋友可以参考一下
    2021-09-09
  • 用Python脚本来删除指定容量以上的文件的教程

    用Python脚本来删除指定容量以上的文件的教程

    这篇文章主要介绍了用Python脚本来删除指定容量以上的文件的教程,是Python操作文件的一个简单实践,需要的朋友可以参考下
    2015-05-05

最新评论