PyTorch - 12 - 深度学习代码 - ArgMax和缩减Tensor Ops

欢迎回到有关神经网络编程的系列文章。 在本文中,我们将学习张量的约简操作。我们将重点介绍常用的argmax()函数,并了解如何访问张量中的数据。 事不宜迟,让我们开始吧。
摘要由CSDN通过智能技术生成

Tensor Reduction Operations

`
让我们为还原操作定义一个开始。

张量的归约运算是减少张量中包含的元素数量的运算。
A reduction operation on a tensor is an operation that reduces the number of elements contained within the tensor.

到目前为止,在本系列文章中,我们已经了解到,张量是深度学习的数据结构。 我们的首要任务是将数据元素加载到张量中。

因此,张量非常重要,但最终,我们在本系列中学到的操作中正在做的事情是管理张量中包含的数据元素。

张量使我们能够管理数据。

整形操作使我们能够沿特定轴定位元素。 逐元素运算允许我们对两个张量之间的元素执行运算,归约运算允许我们对单个张量内的元素执行运算。

我们来看一个代码示例。

Reduction Operation Example

假设我们使用以下3 x 3 rank-2张量:

> t = torch.tensor([
    [0,1,0],
    [2,0,2],
    [0,3,0]
], dtype=torch.float32)

让我们看一下我们的第一个归约运算:

> t.sum()
tensor(8.)

利用事实

> t.numel()
9

> t.sum().numel()
1

我们可以看到

> t.sum().numel() < t.numel()
True

张量的标量分量之和是使用sum()张量方法计算的。 该调用的结果是标量值张量。

根据sum()调用的结果检查原始张量中的元素数量,我们可以看到,确实,对sum()的调用返回的张量包含的元素少于原始张量。

由于该操作已减少了元素数量,因此我们可以得出结论sum()方法是一种减少操作。

Common Tensor Reduction Operations

如您所料,这是一些其他常见的归约函数:

> t.sum()
tensor(8.)

> t.prod()
tensor(0.)

> t.mean()
tensor(.8889)

> t.std()
tensor(1.1667)

所有这些张量方法都通过对所有张量元素进行运算而将张量缩减为单个元素标量值张量。

归约运算通常使我们能够计算跨数据结构的合计(总)值。 在我们的情况下,我们的结构是张量。

不过,这是一个问题:

归约运算是否总是将一个张量归约

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值