第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Keras binary_crossentropy vs categorical

Keras binary_crossentropy vs categorical

倚天杖 2019-09-19 10:56:53
我正在嘗試培訓CNN按主題對文本進行分類。當我使用二進制交叉熵時,我得到~80%的準確度,使用分類交叉熵我得到~50%的準確度。我不明白為什么會這樣。這是一個多類問題,這是不是意味著我必須使用分類交叉熵,而二元交叉熵的結果是沒有意義的?model.add(embedding_layer)model.add(Dropout(0.25))# convolution layersmodel.add(Conv1D(nb_filter=32,                    filter_length=4,                    border_mode='valid',                    activation='relu'))model.add(MaxPooling1D(pool_length=2))# dense layersmodel.add(Flatten())model.add(Dense(256))model.add(Dropout(0.25))model.add(Activation('relu'))# output layermodel.add(Dense(len(class_id_index)))model.add(Activation('softmax'))然后我使用它categorical_crossentropy作為損失函數(shù)編譯它:model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])要么model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
查看完整描述

3 回答

?
翻過高山走不出你

TA貢獻1875條經(jīng)驗 獲得超3個贊

這一切都取決于您正在處理的分類問題的類型。主要有三類;

  • 二元分類(兩個目標類)

  • 多級分類(超過兩個獨家目標)

  • 多標簽分類(超過兩個非獨占目標),其中多個目標類可以同時打開

在第一種情況下,應該使用二進制交叉熵,并且應該將目標編碼為單熱矢量。

在第二種情況下,應該使用分類交叉熵,并且應該將目標編碼為單熱矢量。

在最后一種情況下,應該使用二進制交叉熵,并且應該將目標編碼為單熱矢量。每個輸出神經(jīng)元(或單位)被視為一個單獨的隨機二進制變量,整個輸出向量的損失是單個二進制變量丟失的乘積。因此,它是每個單個輸出單元的二元交叉熵的乘積。

二元交叉熵定義如下: 二元交叉熵 和分類交叉熵定義如下: 分類交叉熵


查看完整回答
反對 回復 2019-09-19
?
慕虎7371278

TA貢獻1802條經(jīng)驗 獲得超4個贊

我遇到了一個“倒置”的問題 - 我使用categorical_crossentropy(有2個類)并且使用binary_crossentropy很差。似乎問題是錯誤的激活功能。正確的設置是:

  • for binary_crossentropy:sigmoid激活,標量目標

  • for categorical_crossentropy:softmax激活,單熱編碼目標


查看完整回答
反對 回復 2019-09-19
  • 3 回答
  • 0 關注
  • 3087 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號