2

我已經閱讀了一些關於此問題的其他問題(以及相關答案),但我仍然有疑問:將閾值激活函數添加一個偏差會改變閾值嗎?據我所知,增加一個偏差應該沿x軸移動激活函數,所以它也應該改變閾值。假設我們只有一個輸入節點和一個輸出節點,並且輸入節點具有閾值激活函數,並且閾值設置爲0.現在,如果我們給出1作爲輸入,則神經元將激活並返回1 * weight到輸出節點,但如果我們添加一個權重爲2的偏置節點a_0 = -1,連接到輸入節點,並給出前一個輸入1,神經元將不再激活,因爲現在我們必須至少達到2才能激活它。這可以被認爲是「改變」門檻嗎?在神經網絡中,偏差是否會改變激活函數的閾值?

+2

添加偏差可讓您學習全新的功能類別。考慮2D中的線性決策線:沒有偏見,它必須通過原點,而不會受到偏差的限制。 – alfa

回答

2

你讀過關於偏差的非常好的解釋:bias explanationbias explanation 2

正如第一個環節所述,偏差會改變曲線,因此計算結果會更加多樣化。我認爲如果您已經使用了偏差,則不需要使用閾值(將閾值設置爲0),因爲偏差和閾值都會沿着x軸移動激活函數。

但我認爲偏見比門檻更有效率。這是因爲偏差值只是權重,可以像神經網絡中的任何其他權重一樣精確計算。閾值除了權重之外需要單獨的計算。在encog forum中有一些有趣的偏差和閾值比較。

這與偏置而計算出的神經網絡:

calculated with bias

,這是與閾值

calculated with threshold

都將給出相同的結果。如果您對完整計算感興趣,可以閱讀上面的encog wiki。

所以我認爲你的問題的答案「偏見是否改變了激活函數的閾值」是肯定的。在我關於混合遺傳算法和神經網絡的論文中,我嘗試了兩種方法,最終只使用了偏差,並將閾值設置爲0.

我希望我的答案能夠幫助你,但如果你對我的答案有其他疑問,請在評論中提問:)