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创建文件时去掉非法字符的方法

windows系统中文件名不能包含 \ / : * ? " < > |想要创建必须过滤掉这些字符 def setFileTitle(self,title):...

python连接mongodb密码认证实例

如下所示: from pymongo import MongoClient #建立和数据库系统的连接,指定host及port参数 client = MongoClient('loca...

Python定义一个跨越多行的字符串的多种方法小结

Python定义一个跨越多行的字符串的多种方法小结

方法一: >>> str1 = '''Le vent se lève, il faut tenter de vivre. 起风了,唯有努力生存。 (纵有疾风起,人...

Pandas DataFrame数据的更改、插入新增的列和行的方法

Pandas DataFrame数据的更改、插入新增的列和行的方法

一、更改DataFrame的某些值 1、更改DataFrame中的数据,原理是将这部分数据提取出来,重新赋值为新的数据。 2、需要注意的是,数据更改直接针对DataFrame原数据更改,...

Python读取txt文件数据的方法(用于接口自动化参数化数据)

Python读取txt文件数据的方法(用于接口自动化参数化数据)

小试牛刀: 1.需要python如何读取文件 2.需要python操作list 3.需要使用split()对字符串进行分割 代码运行截图 : 代码(copy) #encoding=...