5.1神經(jīng)元模型
神經(jīng)網(wǎng)絡(luò)是由具有適應(yīng)性的簡單單元組成的廣泛并行互連的網(wǎng)絡(luò)饶套。神經(jīng)網(wǎng)絡(luò)中最基本的成分是神經(jīng)元模型祟峦,即“簡單單元”窃页。
在生物神經(jīng)網(wǎng)絡(luò)中,一個(gè)神經(jīng)元“興奮”時(shí)郑什,會向相連的神經(jīng)元發(fā)送化學(xué)物質(zhì)府喳,改變它們的電位,如果電位超過一個(gè)閾值蘑拯,會被激活钝满,即“興奮”起來肉津。抽象為M-P神經(jīng)元模型:神經(jīng)元接收來自n個(gè)其他神經(jīng)元傳遞過來的輸入信號,輸入信號通過帶權(quán)重的連接進(jìn)行傳遞舱沧,神經(jīng)元收到的總輸入值與閾值比較妹沙,然后通過“激活函數(shù)”產(chǎn)生神經(jīng)元的輸出。
理想的激活函數(shù)是圖5.2(a)所示的階躍函數(shù)熟吏,輸出值1對應(yīng)神經(jīng)元興奮距糖,0對應(yīng)神經(jīng)元抑制,缺點(diǎn)是不連續(xù)牵寺,不光滑悍引。常用的激活函數(shù)是Sigmoid函數(shù),輸出值擠壓在(0,1)內(nèi)帽氓,又稱擠壓函數(shù)趣斤,如圖5.2(b)所示
將神經(jīng)網(wǎng)絡(luò)視為包含了許多參數(shù)的數(shù)學(xué)模型,這個(gè)模型是若干個(gè)函數(shù)黎休。
5.2感知機(jī)與多層網(wǎng)絡(luò)
感知機(jī)由兩層神經(jīng)元組成浓领,輸入層接收外界輸入信號后傳遞給輸出層,輸出層是M-P神經(jīng)元势腮,也稱“閾值邏輯單元”
感知機(jī)能夠?qū)崿F(xiàn)邏輯與联贩、或、非運(yùn)算捎拯。假定激活函數(shù)f是階躍函數(shù)泪幌,利用
可得到
感知機(jī)的學(xué)習(xí)規(guī)則:對訓(xùn)練樣例(x,y),若當(dāng)前感知機(jī)的輸出為署照,則調(diào)整感知機(jī)權(quán)重:
機(jī)器學(xué)習(xí)筆記 - 線性可分問題 - 閑敲棋子落燈花 - CSDN博客
上述與祸泪、或、非問題都是線性可分的問題建芙,即存在一個(gè)線性超平面將它們分開開没隘,如圖5.4(a)-(c)所示,感知機(jī)的學(xué)習(xí)過程會收斂岁钓,否則學(xué)習(xí)過程中會發(fā)生震蕩升略。感知機(jī)不能解決如圖5.4(d)所示的非線性可分問題
要解決非線性可分問題微王,要使用多層功能神經(jīng)元屡限,如圖5.5所示的兩層感知機(jī)能解決異或問題。在圖5.5(a)中炕倘,輸入層與輸出層之間的一層神經(jīng)元之間的一層神經(jīng)元稱為隱層或隱含層钧大,隱含層和輸出層神經(jīng)元都是有激活函數(shù)的功能神經(jīng)元。
多層前饋神經(jīng)網(wǎng)絡(luò):每層神經(jīng)元與下一層神經(jīng)元全互連罩旋,神經(jīng)元之間不存在同層連接和跨層連接啊央。其中輸入層神經(jīng)元接收外界輸入眶诈,隱層與輸出層神經(jīng)元對信號加工,由輸出神經(jīng)元輸出結(jié)果瓜饥,如圖5.6所示
5.3誤差逆?zhèn)鞑ニ惴?/h1>
誤差逆?zhèn)鞑?簡稱BP)算法逝撬,可訓(xùn)練多層網(wǎng)絡(luò)。通常說“BP網(wǎng)絡(luò)”是指用BP算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò)乓土。圖5.7是一個(gè)由d個(gè)輸入神經(jīng)元宪潮、l個(gè)輸出神經(jīng)元、q個(gè)隱層神經(jīng)元的多層前饋網(wǎng)絡(luò)結(jié)構(gòu)趣苏。假設(shè)隱層和輸出層神經(jīng)元使用的激活函數(shù)是Sigmoid函數(shù)狡相。所示的網(wǎng)絡(luò)有幾個(gè)參數(shù)要確定:輸入層到隱層的dq個(gè)權(quán)值、隱層到輸出層的q
l個(gè)權(quán)值食磕,q個(gè)隱層神經(jīng)元的閾值尽棕、l個(gè)輸出層神經(jīng)元的閾值。
學(xué)習(xí)率控制算法每一輪迭代中的更新步長彬伦,太大容易震蕩滔悉,太小收斂速度過慢
上述算法的一些公式定義如下:
表示輸出層第j個(gè)神經(jīng)元的閾值。
BP算法關(guān)于的更新公式:
累計(jì)誤差逆?zhèn)鞑ニ惴ǎ和茖?dǎo)基于累積誤差最小化的更新規(guī)則单绑。
為了達(dá)到同樣的累計(jì)誤差極小點(diǎn)氧敢,標(biāo)準(zhǔn)BP算法需進(jìn)行更多次的迭代,累計(jì)BP算法在讀取整個(gè)訓(xùn)練集D一遍后才對參數(shù)進(jìn)行更新询张,參數(shù)更新頻率低孙乖。但累計(jì)誤差下降到一定程度后再下降會非常緩慢,這時(shí)標(biāo)準(zhǔn)BP會更快獲得較好的解份氧。
用“試錯(cuò)法”設(shè)置隱含神經(jīng)元的個(gè)數(shù)
兩種策略來環(huán)節(jié)BP網(wǎng)絡(luò)的過擬合:1唯袄、“早停”:將數(shù)據(jù)分為訓(xùn)練集和驗(yàn)證集蜗帜,訓(xùn)練集計(jì)算梯度恋拷、更新連接權(quán)和閾值,驗(yàn)證集估計(jì)誤差厅缺,若訓(xùn)練集誤差降低但驗(yàn)證集誤2差升高蔬顾,則停止訓(xùn)練,同時(shí)返回?fù)?jù)具有最小驗(yàn)證集誤差的連接權(quán)和閾值 2湘捎、“正則化”:在誤差目標(biāo)函數(shù)中增加一個(gè)用于描述網(wǎng)絡(luò)復(fù)雜度的部分诀豁,例如連接權(quán)與閾值的平方和。如下所示:
5.4全局最小與局部極小
神經(jīng)網(wǎng)絡(luò)在訓(xùn)練集上的誤差E是連接權(quán)w和閾值的函數(shù)窥妇。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程可看作一個(gè)參數(shù)尋優(yōu)過程舷胜,使得E最小。
兩種“最優(yōu)”:局部極小解是參數(shù)空間的某個(gè)點(diǎn)活翩,其鄰域點(diǎn)的誤差函數(shù)值均不小于該點(diǎn)的函數(shù)值烹骨。全局最小解是參數(shù)空間中所有點(diǎn)的誤差函數(shù)值均不小于該點(diǎn)的函數(shù)誤差值翻伺。如圖5.10所示,有兩個(gè)局部最小沮焕,但只有一個(gè)是全局最小吨岭,在參數(shù)尋優(yōu)過程希望找到全局最小
5.5其他常見神經(jīng)網(wǎng)絡(luò)
5.5.1RBF網(wǎng)絡(luò)?
RBF(徑向基函數(shù))網(wǎng)絡(luò)是一種單隱層前饋神經(jīng)網(wǎng)絡(luò),使用徑向基函數(shù)作為隱層神經(jīng)元激活函數(shù)峦树,而輸出層是對隱層神經(jīng)元輸出的線性組合未妹。假設(shè)輸入為d維向量x,輸出為實(shí)值空入,則RBF網(wǎng)絡(luò)定義為
5.5.2ART網(wǎng)絡(luò)
競爭性學(xué)習(xí)是神經(jīng)網(wǎng)絡(luò)中一種常用的無監(jiān)督學(xué)習(xí)策略络它,網(wǎng)絡(luò)的輸出神經(jīng)元相互競爭,每一時(shí)刻僅有一個(gè)競爭勝利的神經(jīng)元被激活歪赢,其他神經(jīng)元被抑制化戳,稱為“勝者通吃”原則。
ART(自適應(yīng)諧振理論)網(wǎng)絡(luò)是競爭性學(xué)習(xí)的重要代表埋凯,該網(wǎng)絡(luò)由比較層点楼、識別層、識別閾值和重置模塊構(gòu)成白对。比較層負(fù)責(zé)接收輸入樣本掠廓,傳遞給識別層神經(jīng)元。識別層每個(gè)神經(jīng)元對應(yīng)一個(gè)模式類甩恼,識別層神經(jīng)元之間相互競爭產(chǎn)生獲勝神經(jīng)元蟀瞧。
5.5.3SOM網(wǎng)絡(luò)
SOM(自組織映射)網(wǎng)絡(luò)將高維輸入數(shù)據(jù)映射到低維空間(通常為二維),同時(shí)保持輸入數(shù)據(jù)在高維空間的拓?fù)浣Y(jié)構(gòu)条摸,即將高維空間中相似的樣本點(diǎn)映射到網(wǎng)絡(luò)輸出層中的鄰近神經(jīng)元悦污。
訓(xùn)練目標(biāo):為每個(gè)輸出層神經(jīng)元找到合適的權(quán)向量,達(dá)到保持拓?fù)浣Y(jié)構(gòu)的目的
訓(xùn)練過程:每個(gè)輸出層神經(jīng)元計(jì)算接收的訓(xùn)練樣本與自身攜帶的權(quán)向量的距離钉蒲。距離最近的神經(jīng)元競爭獲勝切端,稱最佳匹配單元。最佳匹配單元與鄰近神經(jīng)元的權(quán)向量會被調(diào)整使得權(quán)向量與當(dāng)前輸入樣本距離減小顷啼,過程不斷迭代直至收斂
5.5.4級聯(lián)相關(guān)網(wǎng)絡(luò)
級聯(lián)相關(guān)網(wǎng)絡(luò)是結(jié)構(gòu)自適應(yīng)網(wǎng)絡(luò)的代表
級聯(lián)是指建立層次連接的層級結(jié)構(gòu)踏枣,剛開始訓(xùn)練時(shí)網(wǎng)絡(luò)只有輸入層和輸出層,是最小拓?fù)浣Y(jié)構(gòu)钙蒙,隨著訓(xùn)練的進(jìn)行茵瀑,加入新的隱層神經(jīng)元,其輸入端連接權(quán)值是固定的仪搔。相關(guān)是指通過最大化新神經(jīng)元的輸出與網(wǎng)絡(luò)誤差之間的相關(guān)性來訓(xùn)練相關(guān)的參數(shù)
5.5.5 Elman網(wǎng)絡(luò)
遞歸神經(jīng)網(wǎng)絡(luò)允許網(wǎng)絡(luò)中出現(xiàn)環(huán)形結(jié)構(gòu)瘾婿,從而使神經(jīng)元的輸出反饋可作為輸入信號蜻牢。Elman網(wǎng)絡(luò)是常用的遞歸神經(jīng)網(wǎng)絡(luò)烤咧。
如圖5.14偏陪,隱層神經(jīng)元的輸出被反饋回來,與下一時(shí)刻輸入層神經(jīng)元提供的信號一起作為隱層神經(jīng)元在下一刻的輸入煮嫌。隱層神經(jīng)元常使用Sigmoid激活函數(shù)
5.5.6 Boltzmann機(jī)
如圖5.14(a)所示笛谦,Boltzmann機(jī)的神經(jīng)元分為顯層和隱層,顯層用于數(shù)據(jù)的輸入與輸出昌阿,隱層是數(shù)據(jù)的內(nèi)在表達(dá)饥脑。其神經(jīng)元是布爾型的,狀態(tài)1表示激活懦冰,0表示抑制灶轰。受限Boltzmann機(jī)僅保留顯層和隱層的連接,將Boltzmann機(jī)結(jié)構(gòu)由完全圖簡化為二部圖
5.6深度學(xué)習(xí)
理論上刷钢,參數(shù)越多的模型復(fù)雜度越高笋颤、“容量”越大,能完成更復(fù)雜的學(xué)習(xí)任務(wù)
典型的深度學(xué)習(xí)模型是很深層的神經(jīng)網(wǎng)絡(luò)内地,對神經(jīng)網(wǎng)絡(luò)模型伴澄,從增加模型復(fù)雜度的角度看,增加隱層數(shù)比增加隱層神經(jīng)元數(shù)更有效阱缓,因?yàn)榍罢卟粌H增加擁有激活函數(shù)的神經(jīng)元數(shù)目非凌,還增加了激活函數(shù)嵌套的層數(shù)。
無監(jiān)督逐層訓(xùn)練是多隱層網(wǎng)絡(luò)訓(xùn)練的手段荆针。每次訓(xùn)練一層隱結(jié)點(diǎn)敞嗡,訓(xùn)練時(shí)將上一層隱結(jié)點(diǎn)的輸出作為輸入,本層隱結(jié)點(diǎn)的輸出作為下一層隱結(jié)點(diǎn)的輸入航背,稱"預(yù)訓(xùn)練”秸妥,在預(yù)訓(xùn)練全部完成后,對整個(gè)網(wǎng)絡(luò)進(jìn)行“微調(diào)”沃粗。運(yùn)用于深度信念網(wǎng)絡(luò)(簡稱DBN)
節(jié)省訓(xùn)練開銷:1粥惧、預(yù)訓(xùn)練+微調(diào):可視為大量參數(shù)分組,對每組先找到局部看來較好的設(shè)置最盅,基于這些局部較優(yōu)的結(jié)果聯(lián)合起來進(jìn)行全局尋優(yōu) 2突雪、權(quán)共享:一組神經(jīng)元使用相同的連接權(quán),這在卷積神經(jīng)網(wǎng)絡(luò)(簡稱CNN)中有很大作用涡贱。
深度學(xué)習(xí)可看作是對輸入信號進(jìn)行逐層加工咏删,將輸入表示轉(zhuǎn)化為與輸出目標(biāo)聯(lián)系更密切的表示。即通過多層處理问词,逐漸把初始的“低層”特征轉(zhuǎn)化為“高層”特征表示后督函,用“簡單模型”即可完成復(fù)雜的學(xué)習(xí)任務(wù),可將深度學(xué)習(xí)理解為進(jìn)行“特征學(xué)習(xí)”或“表示學(xué)習(xí)”