神经网络与深度学习笔记
1、神經(jīng)網(wǎng)絡(luò)
????????感知機(jī)就是一個(gè)人工神經(jīng)元,是最簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò),可以用來(lái)解決簡(jiǎn)單“與”和“或”分類(lèi)問(wèn)題,但是無(wú)法解決“異或”邏輯分類(lèi)問(wèn)題這一基礎(chǔ)功能。這也導(dǎo)致了神經(jīng)網(wǎng)絡(luò)研究陷入低谷。
? ? ? 為解決XOR問(wèn)題,1974年哈佛大學(xué)的一片博士論文證明在神經(jīng)網(wǎng)絡(luò)多加一層,并利用“反向傳播”學(xué)習(xí)方法,可以解決XOR問(wèn)題。這就是多層神經(jīng)網(wǎng)絡(luò)也叫前饋神經(jīng)網(wǎng)絡(luò)。
2、深度學(xué)習(xí)
? ? ????深度神經(jīng)網(wǎng)絡(luò)通常是前饋神經(jīng)網(wǎng)絡(luò),至少有 一個(gè)隱層,可以為復(fù)雜非線(xiàn)性系統(tǒng)提供建模,多的隱層可以提供更高的抽象特征。深度神經(jīng)網(wǎng)絡(luò)是一種結(jié)構(gòu)不是一種算法。深度學(xué)習(xí)可以用來(lái)從高維、復(fù)雜的數(shù)據(jù)中快速抽取特征。深度學(xué)習(xí)是神經(jīng)網(wǎng)絡(luò)的一個(gè)分支,其基本結(jié)構(gòu)是深度神經(jīng)網(wǎng)絡(luò)。
? ? ? ? 高層特征是底層特征的組合,從底層到高層的特征表達(dá)越來(lái)月抽象和概念化,即越來(lái)越能表現(xiàn)語(yǔ)義或意圖。不同的圖片可以由基本的組成單元構(gòu)成。從下圖可以看出,底層特征看起來(lái)基本一致,高一層就能看出來(lái)不同了,再往上一層就能識(shí)別具體物體了。
2.1淺層學(xué)習(xí)和深度學(xué)習(xí) ? ? ?
含有一個(gè)隱藏層的就叫做多層感知機(jī),也叫神經(jīng)網(wǎng)絡(luò),這種模型叫淺層結(jié)構(gòu),這種模型可以用于人工規(guī)則的統(tǒng)計(jì)學(xué)習(xí)方法,利用這種淺層模型實(shí)現(xiàn)較復(fù)雜的訓(xùn)練,實(shí)現(xiàn)基本的分類(lèi)。例如SVM、Boosting、最大熵方法。 深度學(xué)習(xí)不止一層隱層,如上圖,最底層的基本線(xiàn)條看起來(lái)一致,如果要從基礎(chǔ)線(xiàn)條中識(shí)別出臉、汽車(chē)、大象則需要不斷手工修改參數(shù),才有可能訓(xùn)練出只區(qū)分臉和汽車(chē)的模型。這種情況下需要調(diào)整的參數(shù)過(guò)多,需要的樣本巨大,且需要人工的干預(yù),這就是深度不夠的缺陷。 直到2006年,以Hinton為首的研究員在深度信念網(wǎng)絡(luò)(DBN)方面的工作,將此問(wèn)題終結(jié)。他們訓(xùn)練網(wǎng)絡(luò)的原則是:(1)、非監(jiān)督學(xué)習(xí)用來(lái)預(yù)訓(xùn)練各個(gè)層(2)、分監(jiān)督在之前學(xué)習(xí)到的層次上,一次只學(xué)習(xí)一個(gè)層次,每個(gè)層次學(xué)習(xí)到的結(jié)果作為下一層的輸入(3)、用監(jiān)督學(xué)習(xí)來(lái)調(diào)整層與層之間的權(quán)重2.2深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)
深度學(xué)習(xí)和傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)之間的相同之處,就是二者都有相似的分層結(jié)構(gòu),包括輸入層、隱層和輸出層,其中只有鄰層之間有連接,同一層及跨層之間沒(méi)有連接。不同之處在于,傳統(tǒng)神經(jīng)網(wǎng)絡(luò)一般只有二至三層,參數(shù)和計(jì)算單元有限,對(duì)復(fù)雜函數(shù)的表示能力有限,學(xué)習(xí)能力有限;而深度學(xué)習(xí)具有五至十層,甚至更多。2.3如何訓(xùn)練神經(jīng)網(wǎng)絡(luò)
BP的全稱(chēng)是Back Propagation,意思是誤差反向傳輸?;鞠敕ㄊ?#xff1a;有信號(hào)正向傳播和誤差反向傳播。(1)、信號(hào)正向傳播:輸入樣本從輸入層傳入,經(jīng)各個(gè)隱層逐層處理后,傳至輸出層。若輸出層的實(shí)際輸出與期望不符,則轉(zhuǎn)入誤差反向傳播階段。(2)、誤差反向傳播:將輸出以某種形式通過(guò)隱層向輸入層逐層反傳,并將誤差分?jǐn)偨o各層的所有單元,從而獲得各層單元誤差信號(hào)。 注意:5層以?xún)?nèi)的神經(jīng)網(wǎng)絡(luò)可以用BP算法訓(xùn)練,5層以上的神經(jīng)網(wǎng)絡(luò)用BP算法訓(xùn)練就不理想了。會(huì)出現(xiàn)梯度消失或者梯度爆炸情況。2.4總結(jié)
在圖像處理中,我們可以用像素集合體表示完整的圖像,這時(shí)特征選取的好壞對(duì)于分類(lèi)或預(yù)測(cè)結(jié)果影響非常大,因此選取一個(gè)什么特征,怎么選取特征對(duì)于解決實(shí)際問(wèn)題非常重要。然而,人為的選取特征是一件耗時(shí)耗力且沒(méi)有規(guī)律可循。那能不能讓機(jī)器自動(dòng)學(xué)校一些特征?答案是能,深度學(xué)習(xí)就是來(lái)干這個(gè)的。因此自動(dòng)學(xué)習(xí)特征的方法,統(tǒng)稱(chēng)為深度學(xué)習(xí)。 深度學(xué)習(xí)首先利用無(wú)監(jiān)督學(xué)習(xí)對(duì)每一層進(jìn)行逐層訓(xùn)練去學(xué)習(xí)特征;每次單獨(dú)訓(xùn)練一層,并將訓(xùn)練結(jié)果作為更高層的輸入;然后到最上層改用監(jiān)督學(xué)習(xí)從上到下進(jìn)行微調(diào)(Fine-Tune)去學(xué)習(xí)模型。 具體過(guò)程如下: (1)使用自上而下的非監(jiān)督學(xué)習(xí)(就是從底層開(kāi)始,一層一層地往頂層訓(xùn)練)。采用無(wú)標(biāo)定數(shù)據(jù)(有標(biāo)定也行)分層訓(xùn)練各層參數(shù)。用無(wú)標(biāo)定數(shù)據(jù)訓(xùn)練隱層的最底層,訓(xùn)練時(shí)先學(xué)習(xí)最底層的參數(shù),(可以看成是得到一個(gè)使得輸入和輸出差別最小的三層神經(jīng)網(wǎng)絡(luò)的隱層)。 (2)自頂向下的監(jiān)督學(xué)習(xí),就是通過(guò)帶標(biāo)簽的數(shù)據(jù)去訓(xùn)練,誤差自頂向下傳輸,對(duì)網(wǎng)絡(luò)進(jìn)行微調(diào)。基于第一步的各層參數(shù)進(jìn)一步Fine—tune整個(gè)多層模型參數(shù);類(lèi)似神經(jīng)網(wǎng)絡(luò)的隨機(jī)初始化處置過(guò)程,深度學(xué)習(xí)的第一步不是所及初始化,而是通過(guò)學(xué)習(xí)輸入數(shù)據(jù)的結(jié)構(gòu)得到的,因此這個(gè)初值接近全局最優(yōu),能夠取得更好的效果;所以深度學(xué)習(xí)效果好很大程度上歸功于第一步(特征學(xué)習(xí)過(guò)程)。參考資料
《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》——吳岸城
http://www.cnblogs.com/alexcai/p/5506806.html
總結(jié)
以上是生活随笔為你收集整理的神经网络与深度学习笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 斯坦福大学深度学习视频(CS231n课程
- 下一篇: 深度学习常用方法