pytorch的F.cross_entropy交叉熵函数
生活随笔
收集整理的這篇文章主要介紹了
pytorch的F.cross_entropy交叉熵函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
F.cross_entropy計算交叉熵損失,代碼為:
loss=F.cross_entropy(out, y)其中out是網絡輸出的概率向量,y是真實標簽,注意y是標量。使用這個函數時應該特別注意out是沒有經過softmax處理過的。因為調用F.cross_entropy函數時會通過log_softmax和nll_loss來計算損失,也就是說使用F.cross_entropy函數時,程序會自動先對out進行softmax,再log,最后再計算nll_loss。
換句話說,執行F.cross_entropy時,相當于執行以下代碼:
soft_out = F.softmax(out) log_soft_out = torch.log(soft_out) loss = F.nll_loss(log_soft_out, y)如果out是已經經過了softmax處理過的,則不能使用F.cross_entropy計算損失,而是通過F.nll_loss函數來計算:
log_soft_out = torch.log(out) loss = F.nll_loss(log_soft_out, y)其中y也是標量。
總結
以上是生活随笔為你收集整理的pytorch的F.cross_entropy交叉熵函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MATLAB的GUI界面不显示XY坐标轴
- 下一篇: QT学习笔记(七):定时器事件的3种常用