如何實(shí)現(xiàn)可微損失函數(shù)來(lái)計(jì)算錯(cuò)誤預(yù)測(cè)的數(shù)量?output = [1,0,4,10]target = [1,2,4,15]loss = np.count_nonzero(output != target) / len(output) # [0,1,0,1] -> 2 / 4 -> 0.5我已經(jīng)嘗試了一些實(shí)現(xiàn),但它們是不可區(qū)分的。RuntimeError: element 0 of tensors does not require grad and does not have a grad_fndef hamming_loss(output, target): #loss = torch.tensor(torch.nonzero(output != target).size(0)).double() / target.size(0) #loss = torch.sum((output != target), dim=0).double() / target.size(0) loss = torch.mean((output != target).double()) return loss也許有一些類似但差分的損失函數(shù)?
1 回答

ABOUTYOU
TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
你為什么不將離散預(yù)測(cè)(例如,)與“軟”預(yù)測(cè)(即每個(gè)標(biāo)簽的概率(例如,成為4x(num標(biāo)簽)概率向量)轉(zhuǎn)換為“軟”預(yù)測(cè)。
一旦你有了“軟”預(yù)測(cè),你就可以計(jì)算預(yù)測(cè)輸出概率和所需目標(biāo)之間的交叉熵?fù)p失。[1, 0, 4, 10]
output
添加回答
舉報(bào)
0/150
提交
取消