pytorch中onehot编码转为普通label标签

label转onehot的很多,但是onehot转label的有点难找,所以就只能自己实现以下,用的topk函数,不知道有没有更好的实现

one_hot = torch.tensor([[0,0,1],[0,1,0],[0,1,0]])
print(one_hot)
label = torch.topk(one_hot, 1)[1].squeeze(1)
print(label)

tensor([[0, 0, 1],
[0, 1, 0],
[0, 1, 0]])
tensor([2, 1, 1])

原文地址:https://www.cnblogs.com/youmuchen/p/11108247.html