- torch.Tensor.repeat(*sizes)
- 沿着指定的维度重复tensor。
- 不同于’expand()’,本函数复制的是tensor中的数据
- 参数 -*sizes(torch.Size ot int…) 沿着每一维重复的次数
>>> x = torch.Tensor([1, 2, 3])
>>> x.repeat(4, 2) #沿着第一维重复4次,第二维重复2次
1 2 3 1 2 3
1 2 3 1 2 3
1 2 3 1 2 3
1 2 3 1 2 3
[torch.FloatTensor of size 4x6]
>>> x.repeat(4, 2, 1).size()
torch.Size([4, 2, 3])#4个横,2个竖,3个内部元素
- torch.unsqueeze(input, dim, out=None)
- 返回一个新的张量,对输入的制定位置插入维度 1
- 返回张量与输入张量共享内存,所以改变其中一个的内容会改变另一个
- 如果’dim’为负,则将会被转化dim+input.dim()+1
参数
- tensor (Tensor) – 输入张量
- dim (int) – 插入维度的索引
- out (Tensor, optional) – 结果张量
>>> x = torch.Tensor([1, 2, 3, 4])
>>> torch.unsqueeze(x, 0)
1 2 3 4
[torch.FloatTensor of size 1x4]
>>> torch.unsqueeze(x, 1)
1
2
3
4
[torch.FloatTensor of size 4x1]