pytorch之max()函数

用法:torch.max(input) → Tensor
返回输入tensor中所有元素的最大值

import torch
a = torch.randn(1,3)
prin(a)
print(torch.max(a))
######
tensor([[-1.2492, -0.1698,  2.3036]])
tensor(2.3036)

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

torch.max(a,0),按维度返回最大值,且返回相应的索引
返回的值都是tensor 且构成一个元组。

import torch
a = torch.randn(3,3)
print(a)
print(torch.max(a,0))
################
tensor([[-0.2316, -0.8073,  0.3113],
        [-1.7529, -0.6510,  0.3980],
        [-1.2733,  1.6366, -1.1697]])
torch.return_types.max(
values=tensor([-0.2316,  1.6366,  0.3980]),
indices=tensor([0, 2, 1]))

torch.max(a,1) ,返回每一行中最大的那个值,和相应的索引。

import torch
a = torch.randn(3,3)
print(a)
print(torch.max(a,1))
##################
tensor([[ 0.6571,  4.2651, -0.4278],
        [ 0.1162,  0.9859,  0.7898],
        [ 0.5208, -0.2957, -2.4730]])
torch.return_types.max(
values=tensor([4.2651, 0.9859, 0.5208]),
indices=tensor([1, 1, 0]))

其他

torch.max()[0] 返回每个最大值,类型还是tensor
torch.max()[1] 返回最大值的索引
torch.max()[1].data 取最大值的的data部分
torch.max()[1].data.numpy() 把数据转化成numpy ndarry
torch.max()[1].data.numpy().squeeze() 把数据条目中维度为1的删除掉。

你可能感兴趣的:(pytorch,pytorch,深度学习,python)