張友海
摘要:隨著人工智能的興起和廣泛應(yīng)用,人工神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò),因此成為熱門的研究方向,它的應(yīng)用非常廣泛,經(jīng)濟、生物、醫(yī)學(xué)等各個領(lǐng)域都不乏神經(jīng)網(wǎng)絡(luò)的參與和應(yīng)用。我們這里主要認識下其中比較重要的四種神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法。
關(guān)鍵詞:人工智能;神經(jīng)網(wǎng)絡(luò);學(xué)習(xí)算法
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2018)19-0218-01
Abstract: with the rise of artificial intelligence and the wide application of artificial neural network of artificial neural network, thus become a hot research direction, it has a very wide range of application, economy, biology, medicine and other fields have the participation of neural network and the application. Here we mainly recognize the four important neural network learning algorithms.
Key words: artificial intelligence; neural network; learning algorithm
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)簡稱神經(jīng)網(wǎng)絡(luò)(NN),是在現(xiàn)代生物學(xué)研究人腦組織所取得成果的基礎(chǔ)上提出來的。人工神經(jīng)網(wǎng)絡(luò)是大腦生物結(jié)構(gòu)的數(shù)學(xué)建模,有大量功能簡單而具有自適應(yīng)能力的信息處理單元即人工神經(jīng)元按照大規(guī)模并行方式,通過拓撲結(jié)構(gòu)連接而成。對于神經(jīng)網(wǎng)絡(luò)的研究成果,人們發(fā)現(xiàn)人工神經(jīng)網(wǎng)絡(luò)具有人腦的基本特征:學(xué)習(xí)、記憶、概括、歸納等。從而解決了人工智能研究中的某些局限性,為人工智能的研究開辟了嶄新的途徑。
神經(jīng)網(wǎng)絡(luò)是一種數(shù)學(xué)特模型,大量的節(jié)點(或神經(jīng)元)以某種特定的拓撲結(jié)構(gòu)相連。每個神經(jīng)元的傳遞函數(shù)是特定的,神經(jīng)元之間的每一個連接都代表了一個通過該連接信號的加權(quán)值,稱為權(quán)重(weight),神經(jīng)網(wǎng)絡(luò)以這種方式模擬人的記憶。網(wǎng)絡(luò)的輸出依賴于網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)連接方式、權(quán)重和傳遞函數(shù)。而網(wǎng)絡(luò)本身通常是指定算法或函數(shù)的值的逼近,或邏輯策略的表達。
人工神經(jīng)網(wǎng)絡(luò)模型可以有多種方式,它取決于網(wǎng)絡(luò)的拓撲結(jié)構(gòu)、神經(jīng)元傳遞函數(shù)、學(xué)習(xí)算法和系統(tǒng)特點。一般可根據(jù)以下方式進行分類:
1) 按結(jié)構(gòu)方式分類:前饋網(wǎng)絡(luò)和反饋網(wǎng)絡(luò),如BP前饋網(wǎng)絡(luò)和反饋Hopfield網(wǎng)絡(luò);
2) 按狀態(tài)方式分類:離散型和連續(xù)性,如Hopfield離散型網(wǎng)絡(luò)和Hopfield連續(xù)性網(wǎng)絡(luò);
3) 按學(xué)習(xí)方式分類:有監(jiān)督學(xué)習(xí)網(wǎng)絡(luò)和無監(jiān)督學(xué)習(xí)網(wǎng)絡(luò),如BP、RBF等有學(xué)習(xí)監(jiān)督網(wǎng)絡(luò)和Kohonet無監(jiān)督學(xué)習(xí)網(wǎng)絡(luò)。
下面,我們來看看Kohonet、RBF、Hopfield、和BP這四種神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法。
1) Kohonet的學(xué)習(xí)算法
1972年,芬蘭的KohonenT.教授,提出了自組織神經(jīng)網(wǎng)絡(luò)SOM(Self-Organizing feature map), 也稱Kohonet網(wǎng)絡(luò),SOM是一類“無監(jiān)督學(xué)習(xí)”模型,一般的用法是將高維的input數(shù)據(jù)在低維的空間表示[1],因此SOM天然是一種降維方法。除了降維,SOM還可以用于數(shù)據(jù)可視化,以及聚類等應(yīng)用中。SOM網(wǎng)絡(luò)共有兩層即輸入層和競爭層。 輸入層一般是一個一維陣列,通過權(quán)向量將外界信息匯集到競爭層各神經(jīng)元。 競爭層,其神經(jīng)元的排列最典型的結(jié)構(gòu)是二維形式。通過計算競爭層的權(quán)值向量和輸入向量的距離,求取最小距離的神經(jīng)元。通過不斷修改權(quán)值及輸出神經(jīng)元,直至小于某個特定值,計算輸出。
2) RBF的學(xué)習(xí)算法
徑向基函數(shù)(RBF,Radial Basis Function)神經(jīng)網(wǎng)絡(luò),是一種對局部逼近的神經(jīng)網(wǎng)絡(luò)。是由J.Moody 和C.Darken于20世紀80年代末提出的一種神經(jīng)網(wǎng)絡(luò),RBF結(jié)構(gòu)上并不復(fù)雜,只有兩層:隱層和輸出層。RBF網(wǎng)絡(luò)的輸入層實現(xiàn)從x到R(x)的非線性映射,輸出層實現(xiàn)從R(x)到y(tǒng)(x)的線性映射(常用的徑向函數(shù)R(x)是高斯函數(shù)),即將數(shù)據(jù)轉(zhuǎn)化到高維空間,使其在高維空間線性可分。在滿足均方根誤差小于某個特定值時,計算輸出。
3) Hopfield的學(xué)習(xí)算法
J. Hopfield在1982年,提出了一個可以用作聯(lián)想記憶的互連網(wǎng)絡(luò),稱為Hopfield網(wǎng)絡(luò)模型,也稱為Hopfield模型。Hopfield是典型的反饋式網(wǎng)絡(luò)模型,它由相同的神經(jīng)元構(gòu)成的單層,并且具有學(xué)習(xí)功能的自聯(lián)想網(wǎng)絡(luò),可以完成制約優(yōu)化和聯(lián)想記憶等功能。Hopfield神經(jīng)網(wǎng)絡(luò)模型是一個循環(huán)神經(jīng)網(wǎng)絡(luò),從輸出到輸入都有反饋連接。
反饋神經(jīng)網(wǎng)絡(luò)因其輸出反饋到輸入端;因此,Hopfield網(wǎng)絡(luò)將在輸入的激勵下產(chǎn)生持續(xù)的狀態(tài)變化。一旦有輸入后,就可以獲得Hopfield的輸出,輸出又反饋到輸入以產(chǎn)生新的輸出,反饋過程將一直進行。如果Hopfield網(wǎng)絡(luò)是一個收斂的穩(wěn)定網(wǎng)絡(luò),反饋和迭代的變化就會越來越小,一旦達到穩(wěn)定的平衡狀態(tài),即Hopfield網(wǎng)絡(luò)輸出一個穩(wěn)定的恒定值。對于Hopfield網(wǎng)絡(luò)來講,關(guān)鍵是在穩(wěn)定條件下確定其權(quán)重系數(shù)。
4) BP的學(xué)習(xí)算法
1985年,Rumelhart提出的Error back propagaiton 算法,簡稱BP算法。系統(tǒng)的解決了多層網(wǎng)絡(luò)中隱含層連接權(quán)的學(xué)習(xí)問題。是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的前饋網(wǎng)絡(luò)。是目前使用較多,較簡單的神經(jīng)網(wǎng)絡(luò)算法。BP網(wǎng)絡(luò)可以學(xué)習(xí)和存儲大量的輸入輸出模式的映射關(guān)系,而無須提前揭示描述映射關(guān)系的數(shù)學(xué)模型。它的學(xué)習(xí)算法可以概括的描述如下:首先,對原始數(shù)據(jù)的輸入、輸出樣本進行規(guī)范化處理,規(guī)則是使用梯度下降法,通過反向給全脂及閾值賦予(-1,1)區(qū)間的隨機值;其次,進入循環(huán)階段:計算隱含層與輸出層各節(jié)點的輸出值,與網(wǎng)絡(luò)希望的輸出值的偏差,來修正各層的連接權(quán)值及閾值,循環(huán)執(zhí)行,直至網(wǎng)絡(luò)的全局誤差小與指定的值,則結(jié)束循環(huán);最后,計算輸出層。
可見,神經(jīng)網(wǎng)絡(luò)事實上是一種運算模型,它通過建立一些信息模型,以不同的鏈接方式形成不同的輸出算法,通過大量的節(jié)點之間的連接來代表不同的功能值,它形同于每個網(wǎng)絡(luò)中的記憶模式,依靠網(wǎng)絡(luò)的連接來輸出函數(shù),達到指定的功能,是一種非常嚴密的邏輯表達。神經(jīng)網(wǎng)絡(luò)一般適合于解決事物的分類問題,有的還具有預(yù)測能力。
參考文獻:
[1] 許國根,賈瑛,等.實戰(zhàn)大數(shù)據(jù)——MATLAB數(shù)據(jù)挖掘詳解與實踐[M].北京:清華大學(xué)出版社,2017.
[2] 飛思科技產(chǎn)品研發(fā)中心. 神經(jīng)網(wǎng)絡(luò)理論與MATLAB7實現(xiàn)[M].北京:電子工業(yè)出版社,2005.
[3] 朱大奇,史慧.人工神經(jīng)網(wǎng)絡(luò)原理及應(yīng)用[M].安徽:科技出版社,2006.