pytorch中tensor.expand()和tensor.expand_as()函数详解

yipeiwu_com7年前Python基础

tensor.expend()函数

>>> import torch
>>> a=torch.tensor([[2],[3],[4]])
>>> print(a.size())
torch.Size([3, 1])
>>> a.expand(3,2)
tensor([[2, 2],
    [3, 3],
    [4, 4]])
>>> a
tensor([[2],
    [3],
    [4]])

可以看出expand()函数括号里面为变形后的size大小,而且原来的tensor和tensor.expand()是不共享内存的。

tensor.expand_as()函数

>>> b=torch.tensor([[2,2],[3,3],[5,5]])
>>> print(b.size())
torch.Size([3, 2])
>>> a.expand_as(b)
tensor([[2, 2],
    [3, 3],
    [4, 4]])
>>> a
tensor([[2],
    [3],
    [4]])

可以看出,b和a.expand_as(b)的size是一样大的。且是不共享内存的。

以上这篇pytorch中tensor.expand()和tensor.expand_as()函数详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python执行get提交的方法

本文实例讲述了python执行get提交的方法。分享给大家供大家参考。具体如下: import sys, urllib2, urllib def addGETdata(url, da...

使用numpy和PIL进行简单的图像处理方法

如下所示: from PIL import Image import numpy as np # 反相 # a = np.array(Image.open("test.jpg"))...

Windows上使用virtualenv搭建Python+Flask开发环境

关于virtualenv: VirtualEnv用于在一台机器上创建多个独立的Python虚拟运行环境,多个Python环境相互独立,互不影响,它能够: 1.在没有权限的情况下安装新套件...

python编码最佳实践之总结

相信用python的同学不少,本人也一直对python情有独钟,毫无疑问python作为一门解释性动态语言没有那些编译型语言高效,但是python简洁、易读以及可扩展性等特性使得它大受青...

python正则表达式的使用

python的正则是通过re模块的支持 匹配的3个函数 match :只从字符串的开始与正则表达式匹配,匹配成功返回matchobject,否则返回none; re.match(patt...