《淺析人臉識(shí)別的實(shí)現(xiàn)(論文)》_第1頁(yè)
《淺析人臉識(shí)別的實(shí)現(xiàn)(論文)》_第2頁(yè)
《淺析人臉識(shí)別的實(shí)現(xiàn)(論文)》_第3頁(yè)
《淺析人臉識(shí)別的實(shí)現(xiàn)(論文)》_第4頁(yè)
《淺析人臉識(shí)別的實(shí)現(xiàn)(論文)》_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

)其中,表示的是連接層層第j個(gè)神經(jīng)元至日第層第‘i個(gè)神經(jīng)元的權(quán)重,表示是的第層第j個(gè)神經(jīng)元至日第第‘i個(gè)神經(jīng)元偏置值,是學(xué)習(xí)率。2.2卷積神經(jīng)網(wǎng)絡(luò)理論CNN是人工神經(jīng)網(wǎng)絡(luò)的一種,由多層神經(jīng)網(wǎng)絡(luò)組合起來(lái)的一種高效網(wǎng)絡(luò),它起源于20世紀(jì)80年代,由Fukushima基于感受野概念提出的神經(jīng)認(rèn)知機(jī),其可以看作是CNN的第一個(gè)實(shí)現(xiàn)網(wǎng)絡(luò),到同世紀(jì)90年代末,出現(xiàn)LeNet-5,并成功的識(shí)別支票上面的手寫數(shù)。再到2012,AlexNet的出現(xiàn),獲得了ILSVRC2012冠軍,把CNN推向了一個(gè)新的高度。后來(lái)隨著學(xué)者的不斷研究,出現(xiàn)了一系列的CNN模型,有GoogleNet,VGGNet,ResNet等。CNN的應(yīng)用非常廣泛,在語(yǔ)音、文本以及圖像領(lǐng)域都有應(yīng)用。2.2.1卷積神經(jīng)網(wǎng)絡(luò)基本原理傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)相鄰的兩層之間神經(jīng)元互相連接,在網(wǎng)絡(luò)訓(xùn)練過(guò)程中容易產(chǎn)生特征計(jì)算上的維度過(guò)大,導(dǎo)致全連接層上的參數(shù)過(guò)多,進(jìn)而導(dǎo)致訓(xùn)練變慢以及過(guò)擬合問(wèn)題。而CNN利用局部感受野和權(quán)值共享兩大特性,共享了權(quán)重和偏置值,使得網(wǎng)絡(luò)訓(xùn)練的參數(shù)大大減少,降低了網(wǎng)絡(luò)訓(xùn)練的復(fù)雜度。在CNN中,每個(gè)神經(jīng)元只需要對(duì)圖像的局部進(jìn)行感知,這就是局部感受野,換句話說(shuō),CNN每一層輸出的特征圖上的像素點(diǎn)在原始圖像上映射的區(qū)域大小。感受野如圖2.4所示。一張圖像的局部像素之間是緊密相關(guān)的,那么在隱藏層中,利用圖像的局部相關(guān)性,通過(guò)神經(jīng)元局部連接的方式可以大大減少網(wǎng)絡(luò)中參數(shù)的數(shù)目。例如,對(duì)于一張256*256的圖片,隱藏層有500個(gè)神經(jīng)元,若采用全連接的方式將會(huì)產(chǎn)生256*256*500個(gè)參數(shù),即約為3300萬(wàn)個(gè)參數(shù),如此龐大數(shù)據(jù)量的參數(shù),會(huì)使得網(wǎng)絡(luò)的訓(xùn)練變得很慢。利用感受野的方式,隱藏層的神經(jīng)元只需與感受野區(qū)域連接即可,假如感受區(qū)域?yàn)?0*10,那個(gè)只需10*10*500個(gè)參數(shù),即5萬(wàn)個(gè)參數(shù),極大的減少了網(wǎng)絡(luò)中的參數(shù)。圖2.4局部感受野CNN的另一個(gè)特性是權(quán)值共享,使隱藏層的神經(jīng)元之間的參數(shù)共享。如圖2.5所示的權(quán)值共享示意圖,一共有3個(gè)權(quán)值,如果采用局部感受野的方式則需要3*4=12個(gè)權(quán)值參數(shù),而如果采用權(quán)值共享的方式,則僅僅只需要3個(gè)參數(shù)即可。對(duì)于上面介紹局部感受野的例子,如果采用權(quán)值共享的方式,把感受區(qū)域10*10共享即可,即在500個(gè)神經(jīng)元中這100個(gè)參數(shù)是相等的,那么只需要100個(gè)參數(shù)即可。從原始的全連接到局部感受野,再到權(quán)值共享,極大的減少了參數(shù)的數(shù)目。圖2-5權(quán)值共享示意圖2.2.2卷積神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)CNN的常用結(jié)構(gòu)有若干個(gè)卷積層、池化層以及全連接層組成,如圖2.6積層,兩個(gè)池化層和一個(gè)全連接層。其中卷積層是CNN中最關(guān)鍵的部分,所示,有兩個(gè)卷目的是提取特征;池化層主要是為了降低圖像的分辨率,也就是降維,可以減少網(wǎng)絡(luò)訓(xùn)練的參數(shù);全連接層一般放在網(wǎng)絡(luò)的尾部,做分類使用。下面,簡(jiǎn)要的介紹卷積層、池化層和全連接層。圖2.6卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)圖圖2.7卷積的操作示意圖(1)卷積層CNN訓(xùn)練的關(guān)鍵在于卷積操作,所以,卷積層是CNN中的最核心的部分。卷積操作利卷積核(也稱過(guò)濾器filter)和對(duì)應(yīng)圖像中的矩陣數(shù)據(jù)一一相乘,然后再相加。在提取特征的過(guò)程中,設(shè)置卷積的步長(zhǎng),讓卷積核在對(duì)應(yīng)圖像上從左向右、從上向下滑動(dòng),并作卷積操作,得到特征圖譜(featuremap。如圖2.7是卷積操作示意圖,圖中利用3*3的卷積核,從圖像左上起始位置做卷積,得到的結(jié)果是3,其中步長(zhǎng)stride設(shè)置為1,每次從左向右或從上向下滑動(dòng)一格,就做一次卷積操作,經(jīng)過(guò)9次卷積之后,就可以得到一個(gè)featuremap。卷積層之間利用局部感受野和權(quán)值共享的思想,通過(guò)卷積操作來(lái)提取數(shù)據(jù)的抽象特征。在2.2.1節(jié)中介紹了神經(jīng)網(wǎng)絡(luò)反向傳播的核心是局部感受野和權(quán)值共享兩大特性,而CNN中卷積層的卷積操作正是利用這兩大特性來(lái)提取數(shù)據(jù)的抽象特征的。卷積層往往有若干個(gè),因?yàn)閱螌泳矸e學(xué)到的特征往往是局部的,從某種程度上講,卷積層層數(shù)越高,學(xué)到的特征就越全局化。(2)池化層池化的主要目的是為了降維導(dǎo)致提取到的特征維度比較高,。在卷積層提取抽象特征的過(guò)程中會(huì)加入若干個(gè)卷積核,會(huì)計(jì)算量太大而且容易過(guò)擬合池化層區(qū)域,縮小數(shù)據(jù)矩陣的尺寸達(dá)到降維的目的。另一方面,所以,在卷積層之后加了一個(gè)選擇圖像中的連續(xù)范圍作為池化這就意味著即使圖像經(jīng)歷了一個(gè)小的平移之后,依然會(huì)產(chǎn)生相同的池化特征,做到了圖片的平移不變性。池化操作和卷積操作很類似,也有濾波器和步長(zhǎng),只不過(guò)運(yùn)用的算法不一樣,池化操作是將濾波器映射區(qū)域的像素取最大值或平均值,即最大池化和均值池化。最大池化是在對(duì)應(yīng)區(qū)域的像素取最大值,而均值池化就是在圖片上對(duì)應(yīng)濾波器大小的區(qū)域,取像素的均值,如圖2.8所示。圖2-8池化操作示意圖(3)全連接層神經(jīng)網(wǎng)絡(luò)有點(diǎn)像一個(gè)黑盒子,中間的識(shí)別過(guò)程我們是不知道的,經(jīng)過(guò)若干次的卷積和池化操作之后,數(shù)據(jù)的抽象特征提取完成,那么,會(huì)在網(wǎng)絡(luò)的尾端加上幾個(gè)全連接層,來(lái)提升網(wǎng)絡(luò)的分類性能,完成分類任務(wù)。全連接層有著全相連的特性,全連接層的每一個(gè)結(jié)點(diǎn)都與上一層的所有結(jié)點(diǎn)相連,用來(lái)把前邊提取到的特征綜合起來(lái),這樣會(huì)使得全連接層上的參數(shù)會(huì)變多,產(chǎn)生大量的計(jì)算,造成網(wǎng)絡(luò)訓(xùn)練的速度變慢,同時(shí),還易產(chǎn)生過(guò)擬合問(wèn)題,這是全連接層的一大缺陷。不過(guò),隨著學(xué)者的不斷研究,現(xiàn)在很多CNN廢棄了全連接層。2.3支持向量機(jī)理論2.3.1支持向量機(jī)SVM是統(tǒng)計(jì)學(xué)習(xí)理論建立在有限樣本學(xué)習(xí)基礎(chǔ)上的分支,于1992年至1995年,Vapnik提出的支持向量機(jī)有兩個(gè)標(biāo)準(zhǔn):以訓(xùn)練誤差約束優(yōu)化問(wèn)題和設(shè)置目標(biāo)為置信范圍最小化,很明顯SVM是基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化準(zhǔn)則的機(jī)器學(xué)習(xí)方法,建立在VC維理論基礎(chǔ)之上,與其他傳統(tǒng)方法相比較具有下面幾個(gè)優(yōu)點(diǎn):(1)SVM的本質(zhì)轉(zhuǎn)化為二次規(guī)劃問(wèn)題求解,對(duì)于有限樣本非線性高維模式識(shí)別問(wèn)題有獨(dú)特優(yōu)勢(shì)。因?yàn)镾VM具有全局的獨(dú)一無(wú)二的解,其具有比人工神經(jīng)網(wǎng)絡(luò)更優(yōu)的逼近,可以有效地避免局部極小值問(wèn)題。(2)SVM的實(shí)質(zhì)是把現(xiàn)實(shí)中待解決的問(wèn)題從低維空間轉(zhuǎn)換到高維空間,其使用工具是非線性變換。在高維空間中構(gòu)造線性判別函數(shù)來(lái)實(shí)現(xiàn)原來(lái)空間中的非線性判別函數(shù)。其特殊的性保證了良好的推廣能力。同時(shí)SVM非線性變換算法復(fù)雜度與維數(shù)沒(méi)有直接的關(guān)聯(lián)有效地解決了維數(shù)災(zāi)難問(wèn)題。(3)在基于SVM的學(xué)習(xí)方法中,其實(shí)現(xiàn)的核心是定義內(nèi)積函數(shù),不同的內(nèi)積函數(shù)可以實(shí)現(xiàn)不同的學(xué)習(xí)方法,常用的有:多項(xiàng)式逼近,貝葉斯分類器,徑向函數(shù)。多層感知網(wǎng)絡(luò)等?;谝陨戏治觯琒VM可以解決小樣本問(wèn)題,有效避免過(guò)學(xué)習(xí)和欠學(xué)習(xí)的問(wèn)題,并且有效避免了維數(shù)災(zāi)難問(wèn)題,本課題基于SVM的方法設(shè)計(jì)分類器進(jìn)行人臉表情識(shí)別。2.3.2多分類支持向量機(jī)支持向量機(jī)最基本的應(yīng)用是兩類分類問(wèn)題的研究,直接應(yīng)用到多分類問(wèn)題并不適應(yīng),多分類問(wèn)題在實(shí)際研究中時(shí)普遍存在的,基于這樣的矛盾,學(xué)者加快了基于SVM的多分類應(yīng)用研究。目前主要有兩種思路將支持向量機(jī)應(yīng)用到多分類問(wèn)題:(1)結(jié)合多個(gè)兩分類器構(gòu)造多分類器。(2)把多個(gè)分類面的求解參數(shù)合并到一個(gè)最優(yōu)化問(wèn)題中,用過(guò)求解這個(gè)合并后的最喲化問(wèn)題,這樣就、一次性就解決了多分類問(wèn)題。第二種方法看起來(lái)比第一種方法簡(jiǎn)單,但是實(shí)際運(yùn)算求最優(yōu)化問(wèn)題時(shí)訓(xùn)練速要慢得多,且遇到的變量會(huì)遠(yuǎn)遠(yuǎn)多以第一種方法,基于以上分析,本課題僅僅使用第一類方法構(gòu)造多分類器,目前常用的SVM算法主要有有限的幾種,1、one-against-one投票決策SVM,2、One-against-all的SVM,3、有向無(wú)環(huán)圖SVM。第三章圖像預(yù)處理無(wú)論對(duì)于任何機(jī)器學(xué)習(xí)算法,對(duì)原始數(shù)據(jù)的處理都顯得尤其重要,會(huì)影響到后面算法處理的速度以及精度等。在其中的任何一個(gè)領(lǐng)域幾乎都離不開(kāi)簡(jiǎn)單的數(shù)據(jù)處理操作,數(shù)據(jù)處理是模型學(xué)習(xí)前的準(zhǔn)備工作,包括數(shù)據(jù)清洗、降維、增強(qiáng)等操作,這些都可以讓網(wǎng)絡(luò)模型表現(xiàn)得更加出色。根據(jù)本文的研究?jī)?nèi)容,數(shù)據(jù)處理主要包括將圖像可視化,將圖像轉(zhuǎn)化為灰度圖像,將圖像分類并標(biāo)簽化。3.1圖像的預(yù)處理原始數(shù)據(jù)來(lái)自github,其格式為CSV格式,并將圖像的內(nèi)容以數(shù)據(jù)的形式儲(chǔ)存在該文件中,同時(shí)。分為三列,第一列是emotion代表表情的編號(hào),從0到6共7類;第二列是pixels代表了圖像的數(shù)字記錄,第三列是Usage分為Training和PrivateTest。部分截圖如圖3.1所示:圖3.1原始數(shù)據(jù)部分截圖展示而如圖3.1所示的pixels列,并不是簡(jiǎn)單的幾個(gè)數(shù)字,展開(kāi)以后是無(wú)數(shù)的數(shù)字,由此來(lái)進(jìn)行圖像的重組。同時(shí)根據(jù)emotion的分類,將圖像分為七個(gè)標(biāo)簽,代表了人類的其中表情形態(tài),對(duì)比表見(jiàn)表3.1所示:表3.1:七種表情標(biāo)識(shí)對(duì)照表表情生氣厭惡恐懼高興中性悲傷驚訝標(biāo)識(shí)01234563.2圖像數(shù)字轉(zhuǎn)為圖像并報(bào)存分類借助Python強(qiáng)大的packets,首先讀取原始CSV格式的數(shù)據(jù),并將第二列pixels的像素點(diǎn)全部取出。由于編程的關(guān)系,讀取到的pixels的像素電并不是真正意義上的像素,也就是不是數(shù)字化的。相反,最初讀取到的像素點(diǎn)信息是文本信息,此時(shí)運(yùn)用split()函數(shù)將字符串轉(zhuǎn)化為字符串?dāng)?shù)組。我們知道,灰度圖像是一個(gè)矩陣的形式,于是再將得到的數(shù)組轉(zhuǎn)化為整型的矩陣。由輸出可以知道,圖像大小是640x480.隨機(jī)選取一張的輸出顯式如圖3.2所示:圖3.2圖像大小的python顯式同時(shí),根據(jù)讀取的第一列emotions確定表情的分類,在本地路徑下建立0,1,2,3,4,5,6的七個(gè)文件夾,同時(shí)在代碼里面指定本地路徑,將得到的圖像轉(zhuǎn)化為灰度圖像,保證圖片是png的格式,便于批量化保存。同時(shí)實(shí)時(shí)顯式保存到第幾張,屬于第幾類。文件夾的截圖見(jiàn)圖6.3,實(shí)時(shí)保存的情況見(jiàn)圖6.4,保存后的在本地的結(jié)果見(jiàn)圖6.5。圖6.3分類文件夾圖6.4實(shí)時(shí)保存展示圖6.5保存到本地的圖像(以第4類為例)第四章人臉識(shí)別的實(shí)現(xiàn)4.1開(kāi)發(fā)環(huán)境介紹本實(shí)踐采用了Python+TensorFlow+Keras的開(kāi)發(fā)環(huán)境進(jìn)行編程和模型訓(xùn)練。其中Python編程語(yǔ)言結(jié)構(gòu)清晰,擁有豐富的標(biāo)準(zhǔn)庫(kù)和強(qiáng)大的第三方生態(tài)系統(tǒng),可以高效的實(shí)現(xiàn)復(fù)雜的機(jī)器學(xué)習(xí)算法;TensorFlow是Google開(kāi)發(fā)的強(qiáng)大深度學(xué)習(xí)開(kāi)源框架,可以方便的進(jìn)行高性能數(shù)值計(jì)算;Keras屬于TensorFlow的高級(jí)API,封裝了多個(gè)用于深度學(xué)習(xí)的模塊組件,能夠高效快速的搭建復(fù)雜的神經(jīng)網(wǎng)絡(luò)模型。最終借助Jupyter在網(wǎng)頁(yè)端進(jìn)行實(shí)現(xiàn),開(kāi)發(fā)界面圖如圖4.1所示:圖4.1開(kāi)發(fā)界面圖4.2問(wèn)題的求解4.2.1CNN的實(shí)現(xiàn)基于github獲取的數(shù)據(jù),Training標(biāo)簽的圖片數(shù)是28709,PrivateTest標(biāo)簽的圖片數(shù)是7178,總的照片數(shù)是35887。模型Training標(biāo)簽的圖片作為訓(xùn)練集,訓(xùn)練集占比百分之80,并將PrivateTest標(biāo)簽的圖片作為測(cè)試集,測(cè)試集占比百分之20。測(cè)試機(jī)加訓(xùn)練集的每一類的占比情況如圖4.2所示:最終通過(guò)Python計(jì)算出來(lái)了每一種表情的準(zhǔn)確率以及整體的一個(gè)準(zhǔn)確率。具體情況如表4.1所示:圖4.2訓(xùn)練集和測(cè)試集整體各類樣本情況表4.1CNN下各類表情的準(zhǔn)確率及整體準(zhǔn)確率(%)分類0123456準(zhǔn)確率(%)84.1387.3983.6988.1184.6884.6085.89總準(zhǔn)確率85.554.2.2CNN+SVM的實(shí)現(xiàn)選用4.2.1節(jié)相同的數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試,本小節(jié)所做的不同的處理是。不將CNN的分類結(jié)果作為最終結(jié)果,而是把CNN當(dāng)作支持向量機(jī)的一部分,也就是為SVM提供輸入。步驟如下:1、采用CNN作為特征提取器,把CNN的連接層作為支持向量機(jī)的輸入特征,2、訓(xùn)練輸入的特征,3、將新的測(cè)試圖片運(yùn)行CNN提取特征,4、放入SVM模型進(jìn)行測(cè)試并得出準(zhǔn)確率。本文使用有向無(wú)環(huán)圖SVM。有向無(wú)環(huán)圖(DirectedAcyclicGraph,DAG)SVM在訓(xùn)練階段和one-against-oneSVM一樣,需要構(gòu)造k(k-1)/2個(gè)分類器才能分開(kāi)k個(gè)類別,但是在分類階段有特別之處,主要是將分類器構(gòu)造成有向無(wú)環(huán)圖,其中kk(k-1)/2個(gè)內(nèi)部節(jié)點(diǎn)對(duì)應(yīng)k(k-1)/2個(gè)分類器,k個(gè)葉子節(jié)點(diǎn)對(duì)應(yīng)于k個(gè)類別。很明顯每個(gè)內(nèi)部節(jié)點(diǎn)都是一個(gè)兩類分類器,葉子節(jié)點(diǎn)是最終分離出的類別,每個(gè)待測(cè)樣本由最初分類器計(jì)算的輸出值決定輸入到下面哪一個(gè)節(jié)點(diǎn)(哪一個(gè)分類器)經(jīng)過(guò)多次二分類問(wèn)題判別,測(cè)試樣本最終回落到葉子節(jié)點(diǎn)上,該葉子節(jié)點(diǎn)就是樣本所在的類別。下圖4.3給出了四類問(wèn)題的DAG-SVM方法決策判別過(guò)程。圖4.3:四類問(wèn)題的DAG-SVM方法決策判別過(guò)程示意圖DAG-SVM算法最后決策過(guò)程不需要導(dǎo)入所有k(k-1)/2個(gè)決策函數(shù)的結(jié)果,而只需要使用k-1個(gè)決策函數(shù)就可以得到很好的分類效果。很明顯相比于一對(duì)一分類器該方法效率顯著提高,而且分類精度也比較高,但其缺點(diǎn)是數(shù)據(jù)量很大時(shí),該方法耗時(shí)計(jì)算量大四,另一方面不同的根節(jié)點(diǎn)分類器影響分類的效果,也就是穩(wěn)定性太差。最終測(cè)試的準(zhǔn)確率如下表4.2所示:表4.2CNN+SVM下各類表情的準(zhǔn)確率及整體準(zhǔn)確率(%)分類0123456準(zhǔn)確率(%)92.4889.1991.7095.4393.9990.3792.21總準(zhǔn)確率93.02從表可以看出,CNN+SVM的準(zhǔn)確率與單純的CNN相比,有了一定的提高,提高了約八個(gè)百分點(diǎn)。對(duì)比圖如圖4.4所示:圖4.4CNN+SVM與CNN的準(zhǔn)確率對(duì)比第五章總結(jié)與展望5.1總結(jié)本文以GitHub獲得的人臉表情數(shù)據(jù)集為研究對(duì)象,使用卷積神經(jīng)網(wǎng)絡(luò)的方法實(shí)現(xiàn)了人臉表情識(shí)別。首先,第一章本文對(duì)選題的背景和意義進(jìn)行了詳細(xì)的闡述,然后對(duì)人臉表情識(shí)別以及卷積神經(jīng)網(wǎng)絡(luò)的國(guó)內(nèi)外研究現(xiàn)狀進(jìn)行了說(shuō)明。緊接著第二章對(duì)神經(jīng)網(wǎng)絡(luò)理論、卷積神經(jīng)網(wǎng)絡(luò)理論以及支持

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論