搭建卷积神经网络时loss计算方式的选择
生活随笔
收集整理的這篇文章主要介紹了
搭建卷积神经网络时loss计算方式的选择
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近在利用卷積神經網絡跑模型的時候,總會出現一些奇奇怪怪的問題,而其中出現次數最多的就是loss值計算方式選擇錯誤問題。在tensorflow中封裝的loss值的計算方式有三種:BinaryCrossentropy,SparseCategoricalCrossentropy,CategoricalCrossentropy。下面簡單說一下這三種計算方式適用于什么場合?
1.BinaryCrossentropy
常用于二分類問題,當然也可以用于多分類問題,通常需要在網絡的最后一層添加sigmoid進行配合使用,其期望輸出值(target)需要進行one-hot編碼。
2.SparseCategoricalCrossentropy
tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False, reduction=losses_utils.ReductionV2.AUTO,name='sparse_categorical_crossentropy' )如果目標是數字編碼 ,比如多分類0,1, 2, 3,損失函數用 sparse_categorical_crossentropy。
3.CategoricalCrossentropy
tf.keras.losses.CategoricalCrossentropy(from_logits=False, reduction=losses_utils.ReductionV2.AUTO,name='categorical_crossentropy' )如果目標是one-hot 編碼,比如二分類【0,1】【1,0】,損失函數用 categorical_crossentropy。這一點與BinaryCrossentropy方法類似。
努力加油a啊
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的搭建卷积神经网络时loss计算方式的选择的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑qq截图如何滚动截长图
- 下一篇: 深度学习之基于卷积神经网络(VGG16)