pytorch笔记:实例解析NLLLoss和CrossEntropyLoss
生活随笔
收集整理的這篇文章主要介紹了
pytorch笔记:实例解析NLLLoss和CrossEntropyLoss
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 數據處理
1)我們先隨機生成一個3*3的tensor
2)然后對每一行使用Softmax(softmax之后,每一行的加和為1)
dim=1,表示第一個維度的 (a[x][1,2,3,...,n])進行softmax
3)然后對Softmax的結果取自然對數:
Softmax后的數值都在0~1之間,所以ln之后值域是負無窮到0。
2 NLLloss
NLLLoss的結果就是把上面的輸出與Label對應的那個值拿出來,再去掉負號,再求均值。
假設我們現在Target是[0,2,1]:
?
第一行取第0個元素,第二行取第2個,第三行取第1個,去掉負號。
再求個均值,結果是:
直接用NLLLoss進行驗證
NLLLoss的驗證
3 softmax
CrossEntropyLoss就是把以上Softmax–Log–NLLLoss合并成一步
?
總結
以上是生活随笔為你收集整理的pytorch笔记:实例解析NLLLoss和CrossEntropyLoss的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 博弈论笔记1:囚徒困境与纳什均衡
- 下一篇: pytorch实现简易分类模型