torch.max() 笔记

278 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

注:根据1.7.1文档, torch.Tensor.max与torch.max用法相同

torch.max(input) → Tensor

返回input中最大的元素

实例:

在这里插入图片描述

 torch.max(input, dim, keepdim=False, *, out=None) -> (Tensor, LongTensor)

Parameters

    input (Tensor) – 输入张量

    dim (int) – 选择reduce的维
    keepdim (bool) – 上述的维度是否保留。 Default: False.

Keyword Arguments

out (tuple, optional) – 返回最大值和索引

需要注意的是,如果有多个最大值,返回第一个索引

实例: 在这里插入图片描述 从这个例子中,我们可以看出torch.Tensor.max与torch.max的结果是完全一致的。 再详细分析一下这个例子。 在这里插入图片描述dim参数就是选择指定的维度,在该维度上的所有数据进行max查找,x.max(1)同理。 在这里插入图片描述关于其返回的索引,我们可以这样理解。 在这里插入图片描述

torch.return_types.max(
values=tensor([6, 8, 5]),
indices=tensor([1, 2, 2]))

自然有: indices[0]=1 indices[1]=2 indices[2]=3

由于我们选择的dim为0,在二维中,也就是“行” 所以,我们可以这样使用索引 将第dim维,换成indices[*],另一维使用indices自己的索引。 (我们选择的是第0维,也就是说我们找出的是每一列的最大值。) 在这里插入图片描述 同时,我们扩充到3x3x3的数据试试

在这里插入图片描述显然,同理,搜索每一组数据的最大数

索引方面,由于是一个二维数组

在这里插入图片描述

均同理