pytorch学习笔记之torch.max()

官方的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。

你可能感兴趣的:(开发工具)