(predicted == labels).sum().item()作用

 ⚠️(predicted == labels).sum().item()作用,举个小例子介绍:

# -*- coding: utf-8 -*-
import torch import numpy as np data1 = np.array([ [1,2,3], [2,3,4] ]) data1_torch = torch.from_numpy(data1) data2 = np.array([ [1,2,3], [2,3,4] ]) data2_torch = torch.from_numpy(data2) p = (data1_torch == data2_torch) #对比后相同的值会为1,不同则会为0 print p print type(p) d1 = p.sum() #将所有的值相加,得到的仍是tensor类别的int值 print d1 print type(d1) d2 = d1.item() #转成python数字 print d2 print type(d2)

返回:

(deeplearning2) userdeMBP:pytorch user$ python test.py
tensor([[1, 1, 1],
        [1, 1, 1]], dtype=torch.uint8)
<class 'torch.Tensor'>
tensor(6)
<class 'torch.Tensor'>
6
<type 'int'>

 

即如果有不同的话,会变成:

# -*- coding: utf-8 -*-
import torch import numpy
as np data1 = np.array([ [1,2,3], [2,3,4] ]) data1_torch = torch.from_numpy(data1) data2 = np.array([ [1,2,3], [4,5,6] ]) data2_torch = torch.from_numpy(data2) p = (data1_torch == data2_torch) print p print type(p) d1 = p.sum() print d1 print type(d1) d2 = d1.item() print d2 print type(d2)

返回:

(deeplearning2) userdeMBP:pytorch user$ python test.py
tensor([[1, 1, 1],
        [0, 0, 0]], dtype=torch.uint8)
<class 'torch.Tensor'>
tensor(3)
<class 'torch.Tensor'>
3
<type 'int'>

 

posted @ 2019-03-19 15:11  慢行厚积  阅读(8082)  评论(2编辑  收藏  举报