pytorch入门(十):repeat

10 篇文章 1 订阅
3 篇文章 0 订阅

repeat


pytorch的张量与numpy的数组有很多相似之处,但repeat有明显差异。
1、方向
repeat(repeats,axis)的两个参数,分别表示重复的次数和方向。
对于二维数组,axis = 1表示垂直方向,axis = 2表示水平方向,
与torch.sum和np.repeat都不一样。
2、重复的方式
np的重复方式是各向量分别重复,如012变为 001122
torch的重复方式为整块复制,如 012变为012012

import numpy as np

a = np.arange(6).reshape(2,3)
b = a.repeat(2,0)
print(b)
b = a.repeat(2,1)
print(b)

运行结果

[[0 1 2]
 [0 1 2]
 [3 4 5]
 [3 4 5]]
[[0 0 1 1 2 2]
 [3 3 4 4 5 5]]

类似的代码,把np换成torch,方向也变成1和2

import torch
a = torch.arange(6).reshape(2,3)
b = a.repeat(2,1)
print(b)
b = a.repeat(2,2)
print(b)

运行结果

tensor([[0, 1, 2],
        [3, 4, 5],
        [0, 1, 2],
        [3, 4, 5]])
tensor([[0, 1, 2, 0, 1, 2],
        [3, 4, 5, 3, 4, 5],
        [0, 1, 2, 0, 1, 2],
        [3, 4, 5, 3, 4, 5]])

【上一篇:处理异或问题】

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值