神經網路進行二分類時,輸出層使用兩個神經元和只使用乙個神經元,模型的效能有何差異,為什麼?

時間 2021-06-06 17:20:39

1樓:採石工

理論上兩者是沒有差異的。分析如下:

1) 先引入Logistic函式和softmax函式的定義logistic函式定義為: 。

logistic函式還可以稱為sigmoid函式,expit函式(SciPy中即採用此名稱)。

softmax函式定義為: 。

softmax函式是多元向量值函式。

2)再引入sigmoid和softmax交叉熵損失函式的數學形式設資料集 , 為label, 為feature。

sigmoid交叉熵損失函式的數學形式:

softmax交叉熵損失函式的數學形式:

其中 表示按元素函式,例如 。 是標籤y的one-hot編碼, 是指示函式。

3)下面推導對於二分類上述兩個loss的等效性當 時,因為 ,同理 ,所以 。令 ,則。所以這在形式上已經和 一樣了。

又由於深度學習可以自動學習特徵,在最終效能上可以認為兩者是等效的。

2樓:黑鳳梨

沒區別,乙個是Sigmoid乙個是softmax,在進行梯度更新的過程中一般求得是梯度而不是雅可比矩陣,所以輸出只有乙個,當然也可有求雅可比矩陣更新梯度,此時可以是多個輸出

應用神經網路進行分類,輸入特徵屬性之間強關聯對結果有影響嗎?

愛碎碎碎碎念 講道理,有時候我們覺得應該是這樣的,但是實驗結果好像並不是我們預期的那樣,所以你要不先做實驗再分析一下結果呢。畢竟樣本不一定不一樣,處理方法不一定一樣,引數不一定一樣,背景不一樣 扁豆燜面1.0 如果知道已經強相關了,最好處理一下,有兩個好處 一是可以降低模型的負擔,畢竟需要計算的引數...

pytorch分類損失 二分類 ,穩定的損失值在10的負一次方量級正常嗎?

清風笑煙雨 個人感覺你的標籤有問題,要麼就是類別數沒設定對。你應該看一看損失曲線在降低沒有,二分類這個這個量級,測試結果應該不好看吧 學無止境 模型沒有使用預訓練模型嗎,使用的話是自己寫的loss函式嗎,如果以上都存在,那麼loss高很正常。如果使用預訓練,使用torch自帶bceloss,那麼資料...

二分類問題,應該選擇sigmoid還是softmax?

讓cpu飛一會兒 看大部分回答都是根據主觀經驗和直覺直接得出兩者沒什麼區別的結論,我就從公式推導層面來嚴格推導一下吧。softmax交叉熵損失 log exp sp exp sp exp sn log 1 exp sn sp logsumexp 0,sn sp max 0,sn sp sigmoid...