(一)torch.sum使用总结

本文详细介绍了PyTorch中torch.sum函数的使用,特别是如何通过指定维度(dim)进行求和操作。内容包括不指定dim时对所有元素求和,以及指定dim为常数或tuple时在特定维度上的求和,并通过实例展示了不同情况下的计算结果。
部署运行你感兴趣的模型镜像

欢迎访问个人网络日志🌹🌹知行空间🌹🌹



发现 torch.sumdim参数可以使用 tuple,总结记录一下

1.不指定dim

torch.sum(input, *, dtype=None) → Tensor
  • 输入inputtensor
  • 输出input中各元素的和

例如

t = torch.randint(0, 3, (2,2,2))
print(t)
print(torch.sum(t))

输出为:

tensor([[[1, 1],
         [0, 2]],

        [[2, 2],
         [0, 2]]])
tensor(10)

2.指定dim

torch.sum(input, dim, keepdim=False, *, dtype=None) → Tensor
  • dim参数可以为常数tuple
  • keepdim参数指是否对求和的结果squeeze,如果True其他维度保持不变,求和的dim维变为1

2.1dim为常数

在维度dim上求和

import torch

t = torch.randint(0, 3, (2,2,2))

print(t)
print(torch.sum(t, dim=0))

输出为:

tensor([[[0, 1],
         [2, 1]],

        [[2, 2],
         [1, 2]]])
# 相当于在dim=0上求和,0+2, 1+2, 2+1, 2+2
tensor([[2, 3],
        [3, 3]])

2.2 dim为tuple

import torch

t = torch.randint(0, 3, (2,2,2))

print(t)
print(torch.sum(t, dim=(0,1)))

输出为:

tensor([[[1, 2],
         [0, 2]],

        [[2, 2],
         [2, 0]]])
# 相当于
# 1.在dim=0上求和 1+2,2+2, 0+2, 2+0
# 得[[3,4],[2,2]]
# 2.在dim=1上求和 3+2, 4+2
# 得[5,6]
tensor([5, 6])

参考资料


欢迎访问个人网络日志🌹🌹知行空间🌹🌹


您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值