(1)torch.linspace((start, end, steps=100,dtype=None) 返回一个一维的tensor start:开始值; end:结束值; steps:分割的点数,默认是100; dtype:返回值(张量)的数据类型; 例子:
torch.linspace(3,10,5)
tensor([ 3.0000, 4.7500, 6.5000, 8.2500, 10.0000])
(2)torch.repeat(n,n,n,) n是该维度复制多少次 1.n的个数与a维度相同,对应维度复制n次
a = torch.tensor([[1, 2, 3],
[1, 2, 3]])
b = a.repeat(2, 2)
print(b.shape)
2.n的个数超过a的维度数 将a在前扩充维度,对应为1,在进行对应复制。
a = torch.tensor([[1, 2, 3],
[1, 2, 3]])
b = a.repeat(1, 2, 1)
print(b.shape)
(3)切片 [a🅱?c] a为起始位(从0开始排序) b为结束位(b取不到;b是负数,表示从后往前数,最后一位是-1) c是步长(正数从前往后,负数从后往前) […,a] 表示取最里层的第a个元素,其他维度正常 这样赋值后,比原来的少一个维度; 如果取多个数据如:[…,:a]则维度不变 [a,…] 表示取第一个维度的第a个元素,其他同上; (4)torch.index_select(input, dim, index, out=None) input(Tensor):表示被选择的tensor dim(int):表示是在哪个维度做选择。为1表示,在列上做选择。为0表示在行上做选择。 index(LongTensor):表示需要选择出的行或者列。 它是一个数组为Long形的tensor。 参数out(Tensor, optional):表示的输出到到哪个tensor上去,该参数可选。 x为输入;tensor(x有两个维度,(3,4)分别对应0,1维度) 1为选择第1个维度索引;数字 indices为在该维度上索引哪个位置的;一个数组为Long形的tensor
|