torch.sum()——dim参数

2 篇文章 0 订阅
1 篇文章 0 订阅

dim指在dim的这个维度上,对tesnor 进行求和,如果keepdim(保持维度)=False,返回结果会删去dim所指的这个维度。以下面的例子分析dim的参数~

 = torch.tensor([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
print(a.size())
a1 = torch.sum(a)
print("a1",a1, a1.size())
c = torch.sum(a, dim=1)
print("c",c, c.size())
b = torch.sum(a, dim=(1, 2))
print("b",b, b.size())
d = torch.sum(a, dim=2)
print("d",d, d.size())
e = torch.sum(a, dim=(2, 1))
print("e",e, e.size())
f = torch.sum(a, dim=0)
print("f",f, f.size())

执行结果

执行结果
可以看到此a是多维的张量,由外向里0、1、2三维的Size分别是2、2、3,维度越高越深

1、dim为默认状态

在这里插入图片描述
即所有维度全部加和,破坏三个维度并加和,所有数字相加结果78
在这里插入图片描述

2、dim = 1

在这里插入图片描述

即仅有第一维度进行加和其他维度不变,也就是上图圆圈所标示的两个‘逗号’
1+4=5,2+5=7,同理…… 3+6 7+10 8+11 9+12
所以他们的结果如下

在这里插入图片描述

3、 dim = (1, 2)

在这里插入图片描述

由上面的分析我们同理这里的(1,2)就是要消灭一二维度,也就是要消掉上图的十个“逗号”

有上面的例子分析相信已经有所理解

在这里插入图片描述
根据dim 的不用考虑需要加和的内容,2就是2维深度消失,同样1是一维深度,0是表层深度

那keepdim的作用呢?

在这里插入图片描述
在这里插入图片描述
还是dim值的维度加和但是维度并不会消失而是保持

本人目前是pytorch小白正在学习,文章旨在记录学习内容,如有表达不当请包涵~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值