今天查看代码时,看到两组torch.linspace ().repeat )生成网格,无法很好地理解。 后来查了一下,大概知道了这个函数,现在记住后稍微加深印象。
单击torch.linspace (其中在pycharm中按ctrl,然后单击linspace ) )可以查看名为inspace )的函数的整体视图
def linspace (开始: number,结束: number,steps: _int=100,*,out: Optional[Tensor]=None,dtype 3366660 device: Union[_device,str,None]=None,requires _ grad : _ bool=false ]-talse
开始(开始数字
结束:末尾的数字
steps :起点和终点之间的点数
举个例子就清楚了
t=torch.linspace (0,4,5 ) print(t ) t )的结果为
tensor([0.1 .2 .3 .4.] )简单来说,就是生成由等差数列构成的jddwk。
repeat(repeat )函数在重复的意义上可以有很多参数。 例如,repeat(x,y,z )具体来说,就是把本来的jddwk的行数变成本来的y倍,把那个列数变成本来的z倍,再把那个深度变成本来的x倍。 当然,里面的参数不仅仅是三个。 简单来说,就是在那个维度上数倍。 再举一个例子-
a=torch.linspace (0,4,5 ).repeat ) 2,1 ) print(a(a ) a ) print ) a.shape )的结果为
tensor([0.1 .2 .3 .4.],[0.1 .2 .3 .4.] ),2,5 ) 0
b=torch.linspace (0,4,5 ).repeat ) 3,2,1 ) print(b(b ) b ) print ) b.shape )的结果为
tensor([0.1 .2 .3 .4.]、[0.1 .2 .4.]、[0.1 .1 .2 .3.]、[ 0,2 .3,3 ] 用三维的不行。