官方的api:https://pytorch.org/docs/0.3.1/tensors.html ,https://pytorch.org/docs/0.3.1/torch.html#torch.max
该方法的使用可以有两种方式去调用。
方法一:将对象当作参数传入的方式
a =torch.Tensor([[0,1,2],[3,4,5]])
torch.max(a,0)
方法二:直接在pytorch tensor上调用,传入的参数是dim
a = torch.Tensor([[0,1,2],[3,4,5]])
a.max(0)
3d tensor的例子:
a = torch.Tensor([[0,1,2],[3,4,5]])
a.unsqueeze_(-1)
a = a.expand(2,3,10)
a
tensor([[[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
[1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[2., 2., 2., 2., 2., 2., 2., 2., 2., 2.]],
[[3., 3., 3., 3., 3., 3., 3., 3., 3., 3.],
[4., 4., 4., 4., 4., 4., 4., 4., 4., 4.],
[5., 5., 5., 5., 5., 5., 5., 5., 5., 5.]]])
a.max(0)
(tensor([[3., 3., 3., 3., 3., 3., 3., 3., 3., 3.],
[4., 4., 4., 4., 4., 4., 4., 4., 4., 4.],
[5., 5., 5., 5., 5., 5., 5., 5., 5., 5.]]), tensor([[1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]))
a.max(1)
(tensor([[2., 2., 2., 2., 2., 2., 2., 2., 2., 2.],
[5., 5., 5., 5., 5., 5., 5., 5., 5., 5.]]), tensor([[2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
[2, 2, 2, 2, 2, 2, 2, 2, 2, 2]]))
该方法的返回值是两个tensor组成的元组。第一个维度是求取dim的max值。第二个纬度的tensor是max值所在的dim index。