卷積神經(jīng)網(wǎng)絡(luò)和人工神經(jīng)網(wǎng)絡(luò)的差異是什么?
利用卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練的數(shù)據(jù)預(yù)處理
全連接帶來的問題:
1.參數(shù)w會(huì)非常多,這樣的話就需要電腦的gpu性能足夠好。
2.網(wǎng)絡(luò)的學(xué)習(xí)能力會(huì)非常強(qiáng)大阅嘶,較為精確的學(xué)習(xí)到當(dāng)前圖片或者當(dāng)前文本的內(nèi)容,容易出現(xiàn)過擬合的現(xiàn)象师崎。
為了減少參數(shù)的數(shù)量瓜浸,并能達(dá)到相同的訓(xùn)練效果,我們選用卷積神經(jīng)網(wǎng)絡(luò)秋冰。
卷積神經(jīng)網(wǎng)絡(luò):
去均值的做法是相對原點(diǎn)做了一個(gè)平移仲义,即將將所有點(diǎn)(空間向量)減去均值。有人做實(shí)驗(yàn) 發(fā)現(xiàn)在不做均值處理時(shí)收斂速度會(huì)很慢剑勾。
求均值的方式有兩種埃撵,方法一,如Alexnet卷積神經(jīng)網(wǎng)絡(luò)虽另,有1w張圖像暂刘,每張圖像是227x227x3的,也就相應(yīng)的表示為一個(gè)三維的矩陣捂刺。它將這一萬圖像求和然后除以10000得到均值谣拣。方法二,如VGG卷積神經(jīng)網(wǎng)絡(luò)是將圖像表示為三維的一個(gè)空間向量(R族展,G森缠,B), 然后相應(yīng)的每一個(gè)顏色通道上來求均值仪缸。
需要注意的一點(diǎn)是贵涵,是在訓(xùn)練集上求這個(gè)均值,然后測試集也要利用訓(xùn)練集的均值來進(jìn)行去均值操作恰画,因?yàn)闇y試集在某種意義上是沒有全集的宾茂,所以我們只能用訓(xùn)練集的均值。不同評(píng)價(jià)指標(biāo)往往具有不同的量綱和量綱單位锣尉,這樣的情況會(huì)影響到數(shù)據(jù)分析的結(jié)果刻炒,為了消除指標(biāo)之間的量綱影響,需要進(jìn)行數(shù)據(jù)標(biāo)準(zhǔn)化處理自沧,以使得數(shù)據(jù)指標(biāo)之間具有可比性坟奥。也有兩種常見的歸一化方法树瞭。
一、min-max標(biāo)準(zhǔn)化:
也稱為離差標(biāo)準(zhǔn)化爱谁,是對原始數(shù)據(jù)的線性變換晒喷,使結(jié)果值映射到[0 - 1]之間。轉(zhuǎn)換函數(shù)如下:
二访敌、Z-score標(biāo)準(zhǔn)化方法:
這種方法給予原始數(shù)據(jù)的均值(mean)和標(biāo)準(zhǔn)差(standard deviation)進(jìn)行數(shù)據(jù)的標(biāo)準(zhǔn)化凉敲。經(jīng)過處理的數(shù)據(jù)符合標(biāo)準(zhǔn)正態(tài)分布,即均值為0寺旺,標(biāo)準(zhǔn)差為1爷抓,轉(zhuǎn)化函數(shù)為:
其中u為所有樣本數(shù)據(jù)的均值,為所有樣本數(shù)據(jù)的標(biāo)準(zhǔn)差阻塑。
- 降維和白化
卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
卷積神經(jīng)網(wǎng)絡(luò)有兩種神器可以降低參數(shù)數(shù)目蓝撇,第一種神器叫做局部感知野。一般認(rèn)為人對外界的認(rèn)知是從局部到全局的陈莽,而圖像的空間聯(lián)系也是局部的像素聯(lián)系較為緊密渤昌,而距離較遠(yuǎn)的像素相關(guān)性則較弱。因而走搁,每個(gè)神經(jīng)元其實(shí)沒有必要對全局圖像進(jìn)行感知独柑,只需要對局部進(jìn)行感知,然后在更高層將局部的信息綜合起來就得到了全局的信息私植。網(wǎng)絡(luò)部分連通的思想忌栅,也是受啟發(fā)于生物學(xué)里面的視覺系統(tǒng)結(jié)構(gòu)。視覺皮層的神經(jīng)元就是局部接受信息的(即這些神經(jīng)元只響應(yīng)某些特定區(qū)域的刺激)曲稼。
在圖像處理中狂秘,往往把圖像表示為像素的向量,比如一個(gè)1000×1000的圖像躯肌,可以表示為一個(gè)1000000的向量。在上一節(jié)中提到的神經(jīng)網(wǎng)絡(luò)中破衔,如果隱含層數(shù)目與輸入層一樣清女,即也是1000000時(shí),那么輸入層到隱含層的參數(shù)數(shù)據(jù)為1000000×1000000=10^12晰筛。卷積神經(jīng)網(wǎng)絡(luò)的局部關(guān)聯(lián)作用可以使得每個(gè)神經(jīng)元只和10×10個(gè)像素(局部圖像)值相連嫡丙,那么權(quán)值數(shù)據(jù)為1000000×100個(gè)參數(shù),減少為原來的萬分之一读第。而那10×10個(gè)像素值對應(yīng)的10×10個(gè)參數(shù)曙博,其實(shí)就相當(dāng)于卷積操作。隱含層的每一個(gè)神經(jīng)元都可以看做是一個(gè)filter怜瞒,那么就相當(dāng)于有10000個(gè)卷積核父泳“愫撸可以把每個(gè)filter比作人,每個(gè)人有自己的看待事物的原則(權(quán)重w)惠窄,我們需要多個(gè)人來捕捉不同的信息(一個(gè)人可能能看到另外一個(gè)人看不到的信息)來對圖片信息進(jìn)行學(xué)習(xí)蒸眠。
而每一個(gè)神經(jīng)元開一個(gè)窗口(receptive)通過滑動(dòng),對整幅圖像感知(從左到右從上往下滑動(dòng))杆融,上圖中的stride指滑動(dòng)的步長楞卡。深度(depth)是指有下一層(隱層)有多少個(gè)神經(jīng)元,或者叫filter脾歇,每個(gè)人看完之后就會(huì)得到自己觀念中的一幅圖蒋腮,有n個(gè)人(filter)就會(huì)有n個(gè)圖,即depth的大小藕各。如果原圖像大小是32x32的池摧,而窗口大小是5x5,這樣會(huì)導(dǎo)致窗口不能正好從最左側(cè)不多不少的滑到最右側(cè)。所以一般會(huì)通過對圖像周圍填充0來使得滑動(dòng)窗口很合適的能從圖像左側(cè)滑到右側(cè)座韵。(步長小可以學(xué)習(xí)的很細(xì)致险绘,但是太小時(shí)計(jì)算量就會(huì)很大)
上圖中展示的卷積的過程,7x7x3的原圖像誉碴,有w0和w1卷積核宦棺,即depth為2,3x3x3的窗口黔帕,窗口滑動(dòng)步長為2代咸,窗口中相應(yīng)的權(quán)重與對應(yīng)圖像矩陣相乘然后求和,三個(gè)通道的值再對應(yīng)相加得到輸出值成黄。最后生成3x3x2的矩陣呐芥,depth是2(兩個(gè)過濾器)。
局部連接中奋岁,每個(gè)神經(jīng)元都對應(yīng)10x10的局部區(qū)域思瘟,隱含層有10000神經(jīng)元,則每個(gè)對應(yīng)100個(gè)參數(shù)闻伶,這100個(gè)參數(shù)在任何局部區(qū)域中的都是不變的滨攻,體現(xiàn)了一個(gè)人看待外界是都有一個(gè)不變的原則,即權(quán)值共享的原理蓝翰。如下圖光绕,窗口在滑動(dòng)過程中,四條連接線的權(quán)重(w1,w2,w3,w4)保持不變畜份。
激勵(lì)層
激勵(lì)層中要判斷哪部分信息要往后傳遞诞帐,那部分信息保留(做一個(gè)非線性的映射)
- 在神經(jīng)網(wǎng)絡(luò)中我們利用BP做反向傳播利用sigmoid或者tanh作為激勵(lì)函數(shù),過程中會(huì)利用蓮式求導(dǎo)法則爆雹,sigmoid或者tanh函數(shù)趨于平滑是求導(dǎo)后值趨近于零停蕉,那么在調(diào)節(jié)權(quán)重w時(shí)愕鼓,w= w - wt, wt的值非常小,導(dǎo)致整個(gè)神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練速度會(huì)非常慢谷徙。
2.針對sigmoid函數(shù)和tanh激活函數(shù)的問題拒啰,Relu運(yùn)應(yīng)而生。當(dāng)x < 0時(shí)完慧,y = 0; 當(dāng)x > 0時(shí)谋旦, y=x; 但是當(dāng)x < 0時(shí),y值求導(dǎo)為0屈尼,會(huì)使得網(wǎng)絡(luò)模型停止學(xué)習(xí)册着,由此提出了leaky Relu. 即當(dāng) x< 0時(shí),y = ax, a可以取很小的值脾歧。
sigmoid函數(shù)可能會(huì)使得神經(jīng)網(wǎng)絡(luò)出現(xiàn)梯度消失甲捏。(但是RNN網(wǎng)絡(luò)中的激活函數(shù)卻不用relu,原因是使用relu會(huì)出現(xiàn)梯度爆炸問題鞭执,梯度消失可以通過一些方法進(jìn)行調(diào)節(jié)司顿,但是梯度爆炸很難解決。)
下采用使得圖像的維度減少兄纺。
池化層可以采用最大池化或者平均池化的方法大溜,上圖中是利用了max pooling,窗口大小為2x2估脆,步長為2.
卷積神經(jīng)網(wǎng)絡(luò)后面不一定要有全連接層钦奋,只是因?yàn)榍懊孀隽撕芏鄿p少參數(shù),降維等運(yùn)算疙赠,簡單理解全連接層的作用就是還原信息付材。