logo
Loading...

使用損失函數問題? - Cupoy

請問 如果在cifar10資料中,如果label沒有進行onehot轉換的話,他是屬於多分類嗎?是不...

ml100-2,ml100-2-d71

使用損失函數問題?

2019/07/06 下午 04:47
機器學習共學討論版
林宣威
觀看數:77
回答數:3
收藏數:0
ml100-2
ml100-2-d71

請問 如果在cifar10資料中,如果label沒有進行onehot轉換的話,他是屬於多分類嗎?

是不是因為使用了OneHot轉換後,label變成了0跟1兩類,所以在使用損失函數時,binary_crossentropy(二分類) 的準確率 會比 categorical_crossentropy(多分類)好,

因為從多分類變成二分類,是因為這樣嗎? 還是因為其他的原因


因為這方面有點難,我有點搞混了,所以想問這個問題

回答列表

  • 2019/07/06 下午 05:10
    江慶磊
    贊同數:0
    不贊同數:0
    留言數:1

    "使用了OneHot轉換後,label變成了0跟1兩類",這句話應是錯誤的,轉換前後都是屬於多分類問題,非0跟1兩類。

  • 2019/07/08 上午 09:01
    Seanyu.TW
    贊同數:1
    不贊同數:0
    留言數:0

    不管有沒有轉 onehot, 二元分類只有在目標為 0, 1 兩者時才被稱為"二元",而它也被包含在多元分類問題中。在 keras 中,binary crssentropy loss 可以接受 single vector (也可以接受 onehot), 但 categorical crossentropy 只接受 onehot。在 cifar10 中,目標為 10 類,你轉成 onehot 後 [0,1,2,3,...9],必須用 categorical-crossentropy。你所說的做 cifar10 中,binary-crossentropy 比 categorical-crossentropy 好,你所說的準確率是多少呢?  可以有數據或流程分享一下嗎?

  • 2019/07/08 上午 10:29
    張維元 (WeiYuan)
    贊同數:1
    不贊同數:0
    留言數:0

    Cifar-10 的所有圖片被分為 10 個類別 (以 0~9 數字作為 Label 之編碼) :

    • 0 : airplain (飛機)、1 : automobile (汽車)、9 : truck (卡車)


    => 只有一個 Label 欄位,但有多種可能值 => Mulit-Class


    做完 One-Hot 之後變成:


    => 有 10 個 Label 欄位,每個欄位有兩個值 => Mulit-Label with Binary