torch.tensor下的repeat()

repeat()将原矩阵进行广播,repeat()传入的参数为每个维度复制的次数,复制时从最右边的维度开始
‘’’
扩展步骤如下(倒着执行):
1 最后一个维度1:此时将[1, 2, 3]中的数字直接重复1次,得到[1, 2, 3],保持没变
2 倒数第二个维度2:先将上一步骤的结果增加一个维度,得到[[1, 2, 3]],然后将最外层中括号中的整体重复2次,得到[[1, 2, 3], [1, 2, 3]]
3 倒数第三个维度4:先将上一步骤的结果增加一个维度,得到[[[1, 2, 3], [1, 2, 3]]],然后将最外层中括号中的整体重复4次,
得到[[[1, 2, 3], [1, 2, 3]], [[1, 2, 3], [1, 2, 3]], [[1, 2, 3], [1, 2, 3]], [[1, 2, 3], [1, 2, 3]]]
4 三个维度扩展结束,得到结果。
‘’’
repeat()参数的数量,即为复制后的维数,所以复制后的维数不能小于复制前的维数。

import torch
x = torch.tensor([[1, 2, 3],[4,5,6]])

# x1 = x.repeat(4) # x若为2维,则此语句报错。
# print(f"{x1}:\n")

x2 = x.repeat(4, 1)
print(f"{x2}:\n")

x3 = x.repeat(4, 2)
print(f"{x3}:\n")

x4 = x.repeat(4, 2, 1)
print(f"{x4}:\n")

https://blog.csdn.net/weixin_41041772/article/details/123296659

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值