神經(jīng)網(wǎng)絡(luò)之所以可以擬合任意函數(shù),其中一個(gè)關(guān)鍵原因是,在神經(jīng)元中使用了非線性的激活函數(shù)。下面我們用一個(gè)例子來說明這個(gè)問題。
設(shè)置一個(gè)三層神經(jīng)網(wǎng)絡(luò),第1層是輸入層,輸入特征x1、x2和偏置1。第2層是隱藏層,包含A、B、C三個(gè)神經(jīng)元。第3層是輸出層,有一個(gè)神經(jīng)元D。神經(jīng)網(wǎng)絡(luò)最終輸出y。其中A、B、C、D的權(quán)重使用小寫字母a、b、c、d來代表。
在神經(jīng)網(wǎng)絡(luò)中,如果激活函數(shù)是線性的,那么不管網(wǎng)絡(luò)有多少層,都會(huì)等價(jià)于一個(gè)無隱藏層的線性模型。下面我們將激活函數(shù)設(shè)置為h(x)=x,來說明這一結(jié)論。
計(jì)算神經(jīng)網(wǎng)絡(luò)的輸出y,它等于神經(jīng)元D的權(quán)重d1、d2、d3分別乘以神經(jīng)元A、B、C的輸出,再累加到一起。其中A=a1x1+a2x2+a0,同理可以計(jì)算出B和C的值。
將A、B、C的輸出帶入到y的表達(dá)式中,然后將表達(dá)式展開,并進(jìn)行調(diào)整。這時(shí)可以得到一個(gè)關(guān)于x1和x2的線性結(jié)果。這里x1、x2和偏置的系數(shù)都是常數(shù),因此神經(jīng)網(wǎng)絡(luò)的輸出y,依然是關(guān)于x1和x2的線性變換。很明顯,該神經(jīng)網(wǎng)絡(luò)是無法解決非線性問題的。
總結(jié)來說,一個(gè)沒有非線性激活函數(shù)的神經(jīng)網(wǎng)絡(luò),無論堆疊多少層,該神經(jīng)網(wǎng)絡(luò)仍然只是一個(gè)線性變換。
那么到這里,為什么神經(jīng)網(wǎng)絡(luò)必須使用非線性的激活函數(shù),就講完了,感謝大家的觀看,我們下節(jié)課再會(huì)。
聯(lián)系客服