为什么神经网络的激活函数必须使用线性函数?
生活随笔
收集整理的這篇文章主要介紹了
为什么神经网络的激活函数必须使用线性函数?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
什么是線性函數?
函數本來是輸入某個值后會返回一個值的轉換器。向這個轉換器輸入某個值后,輸出值是輸入值的常數倍的函數稱為線性函數(用數學式表示為h(x) = cx。 c為常數)。因此,線性函數是一條筆直的直線。而非線性函數,顧名思義,指的是不像線性函數那樣呈現出一條直線的函數
為什么神經網絡的激活函數必須使用線性函數?
- 線性函數的問題在于,不管如何加深層數,總是存在與之等效的“無隱藏層的神經網絡”。
- 為了具體地(稍微直觀地)理解這一點,我們來思考下面這個簡單的例子。這里我們考慮把線性函數 h(x) = cx 作為激活函數,把y(x) = h(h(h(x)))的運算對應3層神經網絡 A。這個運算會進行y(x) = c × c × c × x的乘法運算,但是同樣的處理可以由y(x) = ax(注意,a=c3a = c^3a=c3)這一次乘法運算(即沒有隱藏層的神經網絡)來表示。如本例所示,使用線性函數時,無法發揮多層網絡帶來的優勢。因此,為了發揮疊加層所帶來的優勢,激活函數必須使用非線性函數。
總結
以上是生活随笔為你收集整理的为什么神经网络的激活函数必须使用线性函数?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 德国最受欢迎的程序员技能排行
- 下一篇: 通过python利用哈希值实现比较两个文