中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pytorch交叉熵損失輸出為負數怎么解決

發布時間:2020-07-08 10:03:48 來源:億速云 閱讀:1269 作者:清晨 欄目:開發技術

這篇文章將為大家詳細講解有關pytorch交叉熵損失輸出為負數怎么解決,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

網絡訓練中,loss曲線非常奇怪

pytorch交叉熵損失輸出為負數怎么解決

交叉熵怎么會有負數。

經過排查,交叉熵不是有個負對數嗎,當網絡輸出的概率是0-1時,正數。可當網絡輸出大于1的數,就有可能變成負數。

所以加上一行就行了

out1 = F.softmax(out1, dim=1)

補充知識:在pytorch框架下,訓練model過程中,loss=nan問題時該怎么解決?

當我在UCF-101數據集訓練alexnet時,epoch設為100,跑到三十多個epoch時,出現了loss=nan問題,當時是一臉懵逼,在查閱資料后,我通過減小學習率解決了問題,現總結一下出現這個問題的可能原因及解決方法:

1. 減小整體學習率。學習率比較大的時候,參數可能over shoot了,結果就是找不到極小值點;減小學習率可以讓參數朝著極值點前進;

2. 改變網絡寬度。有可能是網絡后面的層參數更新異常,增加后面層的寬度試試;

3. 改變層的學習率。每個層都可以設置學習率,可以嘗試減小后面層的學習率試試;

4. 數據歸一化(減均值,除方差,或者加入normalization,例如BN、L2 norm等);

5. 加入gradient clipping;

6 輸入數據含有臟數據,即NaN,一般當使用實際業務的真實數據時,容易出現臟數據。

關于pytorch交叉熵損失輸出為負數怎么解決就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

禄劝| 湘潭市| 章丘市| 惠州市| 南昌县| 芮城县| 蒲城县| 太康县| 同江市| 迭部县| 台安县| 林周县| 特克斯县| 泰安市| 理塘县| 诏安县| 长顺县| 晋中市| 光泽县| 蚌埠市| 休宁县| 招远市| 林州市| 兴业县| 抚州市| 衡阳县| 常熟市| 达尔| 南江县| 宿松县| 应用必备| 黔东| 保康县| 景谷| 丰县| 重庆市| 新邵县| 五台县| 连云港市| 泾源县| 双辽市|