神經(jīng)網(wǎng)絡(luò)采用了一種仿生學(xué)的思想,通過模擬生物神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和功能來(lái)實(shí)現(xiàn)建模。神經(jīng)元細(xì)胞結(jié)構(gòu)如下
在兩側(cè)分布著樹突和軸突兩種結(jié)構(gòu),樹突用于接受其他神經(jīng)元傳遞的信號(hào),而軸突用于向其他神經(jīng)元傳遞信號(hào),信號(hào)在多個(gè)神經(jīng)元之間傳導(dǎo),構(gòu)成了神經(jīng)網(wǎng)絡(luò)。許許多多的神經(jīng)元細(xì)胞構(gòu)成了神經(jīng)中樞,用于對(duì)刺激作出響應(yīng)。
借鑒神經(jīng)元這一生物結(jié)構(gòu),1943年MoCulloch和Pitts提出了人工神經(jīng)元模型,即M-P神經(jīng)元模型,結(jié)構(gòu)如下
激活函數(shù)與線性組合的關(guān)系表示如下
其中的θ表示閾值,ω表示權(quán)重,在MP神經(jīng)元模型中,權(quán)重和閾值是固定值,是一個(gè)不需要學(xué)習(xí)的模型。
為了讓機(jī)器具備學(xué)習(xí)的能力,在MP神經(jīng)元模型的基礎(chǔ)上,提出了最早的神經(jīng)網(wǎng)絡(luò)模型, 單層感知器perceptron,結(jié)構(gòu)如下
是一個(gè)兩層的神經(jīng)網(wǎng)絡(luò),第一層為輸入層,第二層為輸出層。因?yàn)橹挥性谳敵鰧有枰M(jìn)行計(jì)算,就是說只有一層計(jì)算層,所以稱之為單層感知器。從形式上看,僅僅是將MP模型中的輸入信號(hào)當(dāng)作了獨(dú)立的一層神經(jīng)元,但是本質(zhì)上卻有很大差別。
感知器模型中權(quán)重和閾值不再是固定的了,而是計(jì)算機(jī)"學(xué)習(xí)"出來(lái)的結(jié)果。引入了損失函數(shù)的概念,通過迭代不斷調(diào)整權(quán)重和閾值,使得損失函數(shù)最小,以此來(lái)尋找最佳的權(quán)重和閾值。
單層感知器只可以解決線性可分的問題,在單層感知器的基礎(chǔ)上,再引入一層神經(jīng)元,構(gòu)成一個(gè)3層的神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)如下
這樣的一個(gè)神經(jīng)網(wǎng)絡(luò)模型,適用范圍更廣,涵蓋了線性和非線性可分的場(chǎng)景。其中的每一層稱之為layer, 除了輸出層和輸出層之外,還有中間的隱藏層。這樣的神經(jīng)網(wǎng)絡(luò)模型,通過反向傳播算法來(lái)求解。
增加一層的好處在于更好的數(shù)據(jù)表示和函數(shù)擬合的能力,在3層的基礎(chǔ)上,再引入更多的隱藏層,就變成了深度神經(jīng)網(wǎng)絡(luò),圖示如下
可以看到,每增加一層,模型的參數(shù)數(shù)量急劇增加,所以深度學(xué)習(xí)對(duì)計(jì)算資源的要求特別高,在實(shí)際使用中,模型訓(xùn)練時(shí)間非常的久。
雖然耗費(fèi)計(jì)算資源,但是深度學(xué)習(xí)的優(yōu)點(diǎn)也很突出,相比機(jī)器學(xué)習(xí),模型自動(dòng)完成特征提取,不需要人工的特征工程,這一點(diǎn)對(duì)于高維數(shù)據(jù)的處理特別重要,二者的對(duì)比圖如下
由輸入層,隱藏層,輸出層這3種典型結(jié)構(gòu)組成的神經(jīng)網(wǎng)絡(luò)統(tǒng)稱為前饋神經(jīng)網(wǎng)絡(luò),通過反向傳播算法來(lái)迭代更新參數(shù)。
除此之外,還有卷積神經(jīng)網(wǎng)絡(luò),循環(huán)神經(jīng)網(wǎng)絡(luò),生成對(duì)抗網(wǎng)絡(luò)等多種變種,在計(jì)算機(jī)視覺,自然語(yǔ)言處理,圖像生成等領(lǐng)域,各自發(fā)揮著重大作用。
聯(lián)系客服