tensor和toch都有mean函数,mean返回数据,不需要返回索引。
这个能返回索引,但是是索引序号,原来的数据结构会破坏
torch.max(anch_ious, 1, keepdim=True)[1]
取最大值:
torch.max(conf_mask)[0]
import torch
anch_ious = torch.Tensor([[1, 2, 3], [4, 5, 6]])
value,index = torch.max(anch_ious, 1)
print(value)
二维数组 max获取索引的正确方法:
import torch
anch_ious=torch.Tensor([[1,2,3],[4,5,6],[7,8,9]])
b=torch.max(anch_ious, 1, keepdim=True)
print(b[0])
print(b[1])
b=b[1].squeeze(1)
print(b)
print(anch_ious[list(range(anch_ious.size(0))),b])
能获取3维甚至更大的,不对,把3维用view转换为2维,然后再计算了。