人工智能機(jī)器學(xué)習(xí)有關(guān)算法內(nèi)容,請(qǐng)參見(jiàn)公眾號(hào)“科技優(yōu)化生活”之前相關(guān)文章。人工智能之機(jī)器學(xué)習(xí)主要有三大類(lèi):1)分類(lèi);2)回歸;3)聚類(lèi)。今天我們重點(diǎn)探討一下多層感知器MLP。
感知器(Perceptron)是ANN人工神經(jīng)網(wǎng)絡(luò)(請(qǐng)參見(jiàn)人工智能(25))的一個(gè)概念,由Frank Rosenblatt于1950s第一次引入。
單層感知器(Single Layer Perceptron)是最簡(jiǎn)單的ANN人工神經(jīng)網(wǎng)絡(luò)。它包含輸入層和輸出層,而輸入層和輸出層是直接相連的。單層感知器僅能處理線性問(wèn)題,不能處理非線性問(wèn)題。今天想要跟大家探討的是MLP多層感知器。
MLP多層感知器是一種前向結(jié)構(gòu)的ANN人工神經(jīng)網(wǎng)絡(luò), 多層感知器(MLP)能夠處理非線性可分離的問(wèn)題。
MLP概念:
MLP多層感知器(Multi-layerPerceptron)是一種前向結(jié)構(gòu)的人工神經(jīng)網(wǎng)絡(luò)ANN,映射一組輸入向量到一組輸出向量。MLP可以被看做是一個(gè)有向圖,由多個(gè)節(jié)點(diǎn)層組成,每一層全連接到下一層。除了輸入節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)都是一個(gè)帶有非線性激活函數(shù)的神經(jīng)元。使用BP反向傳播算法的監(jiān)督學(xué)習(xí)方法來(lái)訓(xùn)練MLP。MLP是感知器的推廣,克服了感知器不能對(duì)線性不可分數(shù)據(jù)進(jìn)行識(shí)別的弱點(diǎn)。
相對(duì)于單層感知器,MLP多層感知器輸出端從一個(gè)變到了多個(gè);輸入端和輸出端之間也不光只有一層,現(xiàn)在又兩層:輸出層和隱藏層。
基于反向傳播學(xué)習(xí)的是典型的前饋網(wǎng)絡(luò), 其信息處理方向從輸入層到各隱層再到輸出層,逐層進(jìn)行。隱層實(shí)現(xiàn)對(duì)輸入空間的非線性映射,輸出層實(shí)現(xiàn)線性分類(lèi),非線性映射方式和線性判別函數(shù)可以同時(shí)學(xué)習(xí)。
MLP激活函數(shù)
MLP可使用任何形式的激活函數(shù),譬如階梯函數(shù)或邏輯乙形函數(shù)(logistic sigmoid function),但為了使用反向傳播算法進(jìn)行有效學(xué)習(xí),激活函數(shù)必須限制為可微函數(shù)。由于具有良好可微性,很多乙形函數(shù),尤其是雙曲正切函數(shù)(Hyperbolictangent)及邏輯乙形函數(shù),被采用為激活函數(shù)。
激活函數(shù)的作用是將非線性引入神經(jīng)元的輸出。因?yàn)榇蠖鄶?shù)現(xiàn)實(shí)世界的數(shù)據(jù)都是非線性的,希望神經(jīng)元能夠?qū)W習(xí)非線性的函數(shù)表示,所以這種應(yīng)用至關(guān)重要。
MLP原理:
前饋神經(jīng)網(wǎng)絡(luò)是最先發(fā)明也是最簡(jiǎn)單的人工神經(jīng)網(wǎng)絡(luò)。它包含了安排在多個(gè)層中的多個(gè)神經(jīng)元。相鄰層的節(jié)點(diǎn)有連接或者邊(edge)。所有的連接都配有權(quán)重。
一個(gè)前饋神經(jīng)網(wǎng)絡(luò)可以包含三種節(jié)點(diǎn):
1)輸入節(jié)點(diǎn)(Input Nodes):也稱(chēng)為輸入層,輸入節(jié)點(diǎn)從外部世界提供信息,。在輸入節(jié)點(diǎn)中,不進(jìn)行任何的計(jì)算,僅向隱藏節(jié)點(diǎn)傳遞信息。
2)隱藏節(jié)點(diǎn)(Hidden Nodes):隱藏節(jié)點(diǎn)和外部世界沒(méi)有直接聯(lián)系。這些節(jié)點(diǎn)進(jìn)行計(jì)算,并將信息從輸入節(jié)點(diǎn)傳遞到輸出節(jié)點(diǎn)。隱藏節(jié)點(diǎn)也稱(chēng)為隱藏層。盡管一個(gè)前饋神經(jīng)網(wǎng)絡(luò)只有一個(gè)輸入層和一個(gè)輸出層,但網(wǎng)絡(luò)里可以沒(méi)有也可以有多個(gè)隱藏層。
3)輸出節(jié)點(diǎn)(Output Nodes):輸出節(jié)點(diǎn)也稱(chēng)為輸出層,負(fù)責(zé)計(jì)算,并從網(wǎng)絡(luò)向外部世界傳遞信息。
在前饋網(wǎng)絡(luò)中,信息只單向移動(dòng)——從輸入層開(kāi)始前向移動(dòng),然后通過(guò)隱藏層,再到輸出層。在網(wǎng)絡(luò)中沒(méi)有循環(huán)或回路。
MLP多層感知器就是前饋神經(jīng)網(wǎng)絡(luò)的一個(gè)例子,除了一個(gè)輸入層和一個(gè)輸出層以外,至少包含有一個(gè)隱藏層。單層感知器只能學(xué)習(xí)線性函數(shù),而多層感知器也可以學(xué)習(xí)非線性函數(shù)。
MLP訓(xùn)練過(guò)程:
一般采用BP反向傳播算法來(lái)訓(xùn)練MPL多層感知器。采用BP反向傳播算法就像從錯(cuò)誤中學(xué)習(xí)。監(jiān)督者在人工神經(jīng)網(wǎng)絡(luò)犯錯(cuò)誤時(shí)進(jìn)行糾正。MLP包含多層節(jié)點(diǎn);輸入層,中間隱藏層和輸出層。相鄰層節(jié)點(diǎn)的連接都有配有權(quán)重。學(xué)習(xí)的目的是為這些邊緣分配正確的權(quán)重。通過(guò)輸入向量,這些權(quán)重可以決定輸出向量。在監(jiān)督學(xué)習(xí)中,訓(xùn)練集是已標(biāo)注的。這意味著對(duì)于一些給定的輸入,能夠知道期望的輸出(標(biāo)注)。
MLP訓(xùn)練過(guò)程大致如下:
1)所有邊的權(quán)重隨機(jī)分配;
2)前向傳播:利用訓(xùn)練集中所有樣本的輸入特征,作為輸入層,對(duì)于所有訓(xùn)練數(shù)據(jù)集中的輸入,人工神經(jīng)網(wǎng)絡(luò)都被激活,然后經(jīng)過(guò)前向傳播,得到輸出值。
3)反向傳播:利用輸出值和樣本值計(jì)算總誤差,再利用反向傳播來(lái)更新權(quán)重。
4)重復(fù)2)~3), 直到輸出誤差低于制定的標(biāo)準(zhǔn)。
上述過(guò)程結(jié)束后,就得到了一個(gè)學(xué)習(xí)過(guò)的MLP網(wǎng)絡(luò),該網(wǎng)絡(luò)被認(rèn)為是可以接受新輸入的。
MLP優(yōu)點(diǎn):
1)高度的并行處理;
2)高度的非線性全局作用;
3)良好的容錯(cuò)性;
4)具有聯(lián)想記憶功能;
5)非常強(qiáng)的自適應(yīng)、自學(xué)習(xí)功能。
MLP缺點(diǎn):
1)網(wǎng)絡(luò)的隱含節(jié)點(diǎn)個(gè)數(shù)選取非常難;
2)停止閾值、學(xué)習(xí)率、動(dòng)量常數(shù)需要采用”trial-and-error”法,極其耗時(shí);
3)學(xué)習(xí)速度慢;
4)容易陷入局部極值;
5)學(xué)習(xí)可能會(huì)不夠充分。
MLP應(yīng)用:
MLP在80年代的時(shí)候曾是相當(dāng)流行的機(jī)器學(xué)習(xí)方法,擁有廣泛的應(yīng)用場(chǎng)景,譬如語(yǔ)音識(shí)別、圖像識(shí)別、機(jī)器翻譯等等,但自90年代以來(lái),MLP遇到來(lái)自更為簡(jiǎn)單的支持向量機(jī)的強(qiáng)勁競(jìng)爭(zhēng)。近來(lái),由于深層學(xué)習(xí)的成功,MLP又重新得到了關(guān)注。
常被MLP用來(lái)進(jìn)行學(xué)習(xí)的反向傳播算法,在模式識(shí)別的領(lǐng)域中算是標(biāo)準(zhǔn)監(jiān)督學(xué)習(xí)算法,并在計(jì)算神經(jīng)學(xué)及并行分布式處理領(lǐng)域中,持續(xù)成為被研究的課題。MLP已被證明是一種通用的函數(shù)近似方法,可以被用來(lái)擬合復(fù)雜的函數(shù),或解決分類(lèi)問(wèn)題。
結(jié)語(yǔ):
MLP多層感知器是一種前向結(jié)構(gòu)的ANN人工神經(jīng)網(wǎng)絡(luò), 它能夠處理非線性可分離的問(wèn)題,值得深入研究。為了實(shí)現(xiàn)MLP多層感知器,會(huì)用到BP反向傳播算法。MLP可使用任何形式的激活函數(shù),但為了使用反向傳播算法進(jìn)行有效學(xué)習(xí),激活函數(shù)必須限制為可微函數(shù)。MLP算法應(yīng)用范圍較廣,擴(kuò)展性也強(qiáng),可應(yīng)用于語(yǔ)音識(shí)別、圖像識(shí)別、機(jī)器翻譯等領(lǐng)域。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。 )