• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)人臉表情識別

    2020-07-27 10:22:32李思禹
    陜西科技大學(xué)學(xué)報 2020年4期
    關(guān)鍵詞:人臉正確率注意力

    亢 潔, 李思禹

    (陜西科技大學(xué) 電氣與控制工程學(xué)院, 陜西 西安 710021)

    0 引言

    人類能夠通過表達和識別情感來溝通內(nèi)心狀態(tài),而人臉表情是傳達這種信息的主要方式.傳統(tǒng)上,科學(xué)家們認(rèn)為,人類具有內(nèi)部機制,其中包括少量可衡量和客觀的情緒反應(yīng),如高興、生氣、驚訝、害怕、厭惡和悲傷等.人臉表情識別作為情感計算研究的一個重要方向,對于數(shù)字娛樂、客戶服務(wù)、駕駛員監(jiān)控、情感機器人等應(yīng)用來說是至關(guān)重要的[1].因此,人臉表情識別成為近年來的一個研究熱點.

    如何提取人臉表情特征是人臉表情識別中最重要的步驟.在傳統(tǒng)的人臉表情識別方法中,特征提取會直接影響到后期分類器的訓(xùn)練.常用的特征提取方法有基于局部紋理的方法,如Gabor[2],LBP[3]等;基于梯度特征的方法,如HOG[4],SIFT[5]等;基于模板的方法,如ASM[6],AMM[7]等.雖然傳統(tǒng)方法取得了一定的成果,但是它的不足在于表情特征由手動提取,易受干擾,且不穩(wěn)定.

    近年來,卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)在計算機視覺研究中得到了廣泛的應(yīng)用,并在人臉表情識別任務(wù)中得到了很好效果.CNN的主要優(yōu)點是網(wǎng)絡(luò)的輸入為原始的圖像,避免了前期復(fù)雜的預(yù)處理.2012年Alex Krizhevsky等[8]提出了AlexNet,被證明有很好的分類性能,之后也被廣泛應(yīng)用于人臉表情識別.隨著深度學(xué)習(xí)的發(fā)展,相繼涌現(xiàn)出性能更好,規(guī)模更大的網(wǎng)絡(luò),如VGGNet[9]、GoogLeNet[10]、ResNet[11]、DenseNet[12]等.但是卷積神經(jīng)網(wǎng)絡(luò)仍然存在著一些不容忽視的問題.現(xiàn)有的網(wǎng)絡(luò)規(guī)模越來越大,導(dǎo)致參數(shù)量過大,結(jié)構(gòu)不夠輕量.另外,現(xiàn)有的網(wǎng)絡(luò)難以識別人臉表情的細(xì)微變化,并不能對人臉表情特征進行精確提取,表情識別性能有待提高.

    本文提出了一種基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)人臉表情識別方法,該方法設(shè)計了一種新的網(wǎng)絡(luò)結(jié)構(gòu),加入了殘差恒等塊,另外還引入了一種注意力模塊(SGE)[13],增加了網(wǎng)絡(luò)連接的復(fù)雜性,顯著改善了組內(nèi)不同語義子特征的空間分布,增強了人臉表情的特征學(xué)習(xí),提高了表情識別性能,整體結(jié)構(gòu)較為輕量.通過在數(shù)據(jù)集RAF-DB[14]和CK+[15]上的實驗表明,本文的方法對人臉表情識別任務(wù)有較好的效果.

    1 本文方法

    1.1 注意力機制

    在特征提取的研究中,越來越多的研究人員將視覺注意力機制引入網(wǎng)絡(luò).視覺注意力機制是人類視覺所特有的大腦信號處理機制.人類視覺通過快速掃描全局圖像,獲得需要重點關(guān)注的目標(biāo)區(qū)域,也就是一般所說的注意力焦點,而后對這一區(qū)域投入更多注意力資源,以獲取更多所需要關(guān)注目標(biāo)的細(xì)節(jié)信息,而抑制其它無用信息[16].

    人臉表情特征提取是人臉表情識別的關(guān)鍵問題,將注意力機制引入卷積神經(jīng)網(wǎng)絡(luò)對人臉表情特征的精確提取有一定程度的幫助.卷積神經(jīng)網(wǎng)絡(luò)通過收集語義子特征的層次結(jié)構(gòu)和不同部分來生成復(fù)雜對象的特征表示.這些子特征通常以分組的形式分布在每一層的特征向量中.本文網(wǎng)絡(luò)在每個卷積層之后引入了注意力模塊SGE,該模塊為每個特征組中的每個空間位置生成一個注意因子,以此來調(diào)整每個子特征的重要性,從而使每個單獨的特征組能夠自主增強其學(xué)習(xí)表達.在該模塊中,每個組內(nèi)的子特征都是并行處理的.SGE的結(jié)構(gòu)如圖1所示.

    SGE模塊的操作步驟如下:

    Step2 將組內(nèi)原始特征進行全局平均池化:

    (1)

    式(1)中:g為組內(nèi)全局平均池化后的特征;

    Step3 將組內(nèi)的全局特征與原始特征進行點積操作,得到每個特征對應(yīng)的系數(shù)ci:

    ci=g·xi

    (2)

    (3)

    (4)

    (5)

    式(3)、(4)、(5)中:μc是c的均值,σc是c的標(biāo)準(zhǔn)差,ε是一個常數(shù).

    Step5 引入一對參數(shù)γ和β,縮放并移動歸一化值:

    (6)

    Step6 對移動并縮放后的歸一化值αi進行Sigmoid激活;

    (7)

    SGE模塊十分輕量,只引入了γ和β這一對參數(shù),在單個SGE模塊中,這一對參數(shù)的個數(shù)與分組數(shù)G相同,數(shù)量級很小,與整個網(wǎng)絡(luò)的參數(shù)相比,可以忽略不計.因此,該模塊本質(zhì)上幾乎不需要額外的參數(shù)和計算.

    1.2 基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)人臉表情識別

    1.2.1 卷積層

    卷積層的作用是提取輸入數(shù)據(jù)的特征,第一層卷積層一般只會提取較為低級的特征,隨著卷積層數(shù)量的增加,提取的特征會越來越復(fù)雜.擁有多個卷積層的神經(jīng)網(wǎng)絡(luò)能夠在迭代中提取更加精確的特征.卷積核作為卷積層較為重要的一個參數(shù)對卷積層的工作有著較為直觀的影響.每個卷積核與特征圖的局部區(qū)域相連接,不同尺寸的卷積核對應(yīng)不同的感受野,卷積核的尺寸越大,包含的參數(shù)越多.卷積運算公式如式(8)所示:

    (0≤m≤M,0≤n≤N)

    (8)

    式(8)中:w是大小為J×I的卷積核,b為偏置,f表示激活函數(shù),x是輸入,y是輸出,x和y的尺寸大小均為M×N.

    本文網(wǎng)絡(luò)共有九個卷積層,每個卷積層的卷積核大小為5*5,步長為1,通道數(shù)分別為64、64、64、128、128、128、64、64、64,為保證輸出不變,將邊緣擴充設(shè)置為1.

    1.2.2 池化層

    池化層是一種非線性的降采樣方法,主要是對輸入的特征圖進行壓縮,對應(yīng)的輸出特征圖尺寸會有明顯的減小.池化過程中沒有要學(xué)習(xí)的參數(shù),在一定程度上能控制過擬合問題.常見的池化方式有最大池化和平均池化兩種.最大池化計算目標(biāo)區(qū)域的最大值作為整個區(qū)域的輸出特征,平均池化計算目標(biāo)區(qū)域的平均值作為整個區(qū)域的輸出特征.

    本文網(wǎng)絡(luò)共有六個池化層,均采用最大池化.最大池化的定義如式(9)所示:

    Gi=max(Gi-1)

    (9)

    式(9)中:Gi為下采樣層.該網(wǎng)絡(luò)將池化層放在第1、3、4、6、7、9個SGE模塊之后,將窗口大小設(shè)置為3,步長設(shè)置為2,用以減小圖像的尺寸后進入下一個特征提取環(huán)節(jié).

    1.2.3 激活函數(shù)

    激活函數(shù)為神經(jīng)網(wǎng)絡(luò)加入了非線性因素,使網(wǎng)絡(luò)具有非線性映射能力,增加了網(wǎng)絡(luò)的表達能力.

    ReLU(Rectified Linear Unit)[17]是一種常用的激活函數(shù),表達式如式(10)所示:

    (10)

    本文網(wǎng)絡(luò)采用的激活函數(shù)為ELU(Exponential Linear Unit)[18],它是ReLU的一個變種,其表達式如式(11)所示:

    (11)

    式(11)中:α是一個常數(shù),用來控制ELU的飽和值.

    1.2.4 全連接層

    全連接層通常位于卷積神經(jīng)網(wǎng)絡(luò)的末尾,該層將網(wǎng)絡(luò)學(xué)習(xí)到的特征圖變換為一個固定維數(shù)的列向量,便于后續(xù)實現(xiàn)圖像的分類和識別.全連接層的個數(shù)可以根據(jù)實際需求調(diào)整,參數(shù)量相對較大.

    本文網(wǎng)絡(luò)的第一個全連接層輸出64維的特征向量,該向量作為人臉表情的特征向量,最后一個全連接層是一個Softmax分類層,輸出七類表情標(biāo)簽的預(yù)測值.

    1.2.5 網(wǎng)絡(luò)模型結(jié)構(gòu)

    本文提出了一種基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)人臉表情識別方法.該方法設(shè)計了一種新的網(wǎng)絡(luò)結(jié)構(gòu),并加入了殘差恒等塊,使網(wǎng)絡(luò)連接中增加了恒等映射,進一步豐富了特征學(xué)習(xí),同時與注意力模塊相結(jié)合,保證了細(xì)微和關(guān)鍵表情特征的提取.網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.

    本文網(wǎng)絡(luò)的輸入為經(jīng)過預(yù)處理的人臉圖像,其尺寸為56*56.網(wǎng)絡(luò)主要由九個卷積層、六個最大池化層和兩個全連接層組成.網(wǎng)絡(luò)的第一層為卷積層,每一個卷積層后都加入了批量歸一化(Batch Normalization,BN)[19],激活函數(shù)ELU和注意力機制SGE模塊.在第1、3、4、6、7、9個SGE模塊之后使用最大池化層.隨后是一個輸出為64維的全連接層和一個Softmax分類器,最后輸出七類表情標(biāo)簽的預(yù)測值.

    另外,為了避免網(wǎng)絡(luò)產(chǎn)生過擬合現(xiàn)象,本文網(wǎng)絡(luò)在卷積層的連接中使用了三個殘差恒等塊,使網(wǎng)絡(luò)連接中增加了恒等映射,更加豐富了特征學(xué)習(xí).本文網(wǎng)絡(luò)所采用的殘差恒等塊結(jié)構(gòu)如圖3所示.

    圖2 基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖

    圖3 殘差恒等塊結(jié)構(gòu)圖

    殘差恒等塊主要是在網(wǎng)絡(luò)結(jié)構(gòu)中增加了一個恒等映射x,經(jīng)過卷積層運算后輸出F(x),激活函數(shù)采用ELU.假設(shè)用H(x)表示期望的網(wǎng)絡(luò)層映射,x表示殘差恒等塊的輸入,則

    H(x)=x+F(x)

    (12)

    本文網(wǎng)絡(luò)每層的參數(shù)量如表1所示.

    表1 本文網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù)表

    續(xù)表1

    2 實驗結(jié)果與分析

    2.1 數(shù)據(jù)集及數(shù)據(jù)預(yù)處理

    本文采用的數(shù)據(jù)集為RAF-DB和CK+.

    RAF-DB是一個大規(guī)模的人臉表情數(shù)據(jù)庫,包括29 672張自然環(huán)境下的圖片,它有兩個不同的表情子集,分別是包含7類基本表情的子集和包含11類復(fù)合表情的子集.本文采用該數(shù)據(jù)集的7類基本表情子集來進行訓(xùn)練,一共有15 339張圖片.這7類表情分別為:生氣、厭惡、害怕、高興、悲傷、驚訝、正常.本文在實驗之前將原始數(shù)據(jù)進行了裁剪,突出人臉區(qū)域,減少無關(guān)區(qū)域的影響.該數(shù)據(jù)集不同樣本數(shù)量之間的差異很大,例如數(shù)據(jù)量最少的害怕類為355張,而高興這一類表情的數(shù)據(jù)量高達5 957張.因此,本文實驗將裁剪過后的數(shù)據(jù)進行均衡化處理,對高興和正常的表情數(shù)據(jù)進行欠采樣處理,對生氣、厭惡和害怕的表情數(shù)據(jù)進行過采樣處理.過采樣處理中包括對圖像的水平翻轉(zhuǎn)和旋轉(zhuǎn),旋轉(zhuǎn)包括對原始圖像和水平翻轉(zhuǎn)過后的圖像分別進行-12 °、-8 °、-4 °、4 °、8 °、12 °、16 °的旋轉(zhuǎn),經(jīng)歷這些操作后,得到均衡過后的數(shù)據(jù)集,此時數(shù)據(jù)集中各類表情數(shù)據(jù)的數(shù)量達到了一個相對平衡的狀態(tài).RAF-DB數(shù)據(jù)集經(jīng)過預(yù)處理之后的樣例如圖4所示.

    CK+是一個用于人臉表情識別的權(quán)威數(shù)據(jù)集,包含123名受試者的593個視頻序列,這些序列的持續(xù)時間從10幀到60幀不等,顯示了從中性面部表情到峰值表情的轉(zhuǎn)變.在這些視頻序列中,有309段表情序列被標(biāo)記為基于面部動作編碼系統(tǒng)的六種基本表情標(biāo)簽,分別為生氣、厭惡、害怕、高興、悲傷和驚訝.本文實驗從309段表情序列中抽取第一幀(正常表情)和最后三幀組成具有7種基本表情的數(shù)據(jù)集,總計1236張表情圖片.由于表情數(shù)據(jù)量過小,并且各類表情數(shù)據(jù)之間差異較大,本文在實驗之前將此數(shù)據(jù)集進行均衡并增強處理,處理方法與上述數(shù)據(jù)集RAF-DB的處理方法相同.經(jīng)過處理后,數(shù)據(jù)被擴展10倍,總數(shù)為12 360,并且達到了平衡.

    (a)原圖裁剪 (b)水平翻轉(zhuǎn) (c)翻轉(zhuǎn)-12 °

    (d)翻轉(zhuǎn)-8 ° (e)翻轉(zhuǎn)-4 ° (f)翻轉(zhuǎn)4 °

    (g)翻轉(zhuǎn)8 ° (h)翻轉(zhuǎn)12 ° (i)翻轉(zhuǎn)16 °圖4 RAF-DB數(shù)據(jù)集預(yù)處理樣例

    2.2 實驗環(huán)境及訓(xùn)練策略

    本文的所有實驗中,均采用上述均衡和增強過后的數(shù)據(jù)集,并統(tǒng)一將數(shù)據(jù)集的圖片縮放到56*56像素大小作為網(wǎng)絡(luò)的輸入,數(shù)據(jù)批量大小為128,采用動量梯度下降法,動量設(shè)置為0.9,學(xué)習(xí)率為0.009,權(quán)值衰減系數(shù)為0.000 1.

    本文硬件實驗平臺的CPU為Intel(R) Core(TM)i7-8700,內(nèi)存為16G,GPU為11GB的NVIDIA GeForce GTX 1080 Ti.軟件框架選擇Tensorflow,編程語言為Python,版本為3.6.5.

    2.3 實驗對比與分析

    2.3.1 通道分組數(shù)G對比實驗

    本文研究了注意力SGE模塊中通道分組數(shù)G對網(wǎng)絡(luò)性能的影響.在SGE模塊中,分組數(shù)G控制不同語義子特征的數(shù)目.由于通道數(shù)是確定的,因此可以推斷,分組過多或過少都會影響特征提取的效果,此時的分組數(shù)G一定有一個相對合理的值進行對網(wǎng)絡(luò)的優(yōu)化.本文將G分別設(shè)置為2,4,8,16,32,64并在RAF-DB和CK+兩個數(shù)據(jù)集上分別進行對比實驗,實驗結(jié)果如圖5和圖6所示.

    圖5 RAF-DB表情識別正確率

    圖6 CK+表情識別正確率

    通過對比發(fā)現(xiàn),隨著分組數(shù)G的增加,表情識別的正確率先增大后減小,當(dāng)G=32時,在數(shù)據(jù)集RAF-DB上的正確率可達72.39%,在數(shù)據(jù)集CK+上的正確率可達95.33%,此時網(wǎng)絡(luò)的性能在兩個數(shù)據(jù)集上均呈現(xiàn)出最好的效果.因為過少的分組會限制語義特征的多樣性,而過多的分組會使組內(nèi)子特征維數(shù)減少,進而弱化每個語義子特征的表達,所以在本文實驗中,當(dāng)G=32時能最好地表達并平衡每個語義特征,最終提高人臉表情識別的性能.因此,在本文后續(xù)的所有實驗中,將G設(shè)置為32.

    2.3.2 不同方法對比實驗

    在數(shù)據(jù)集RAF-DB和CK+上,通過表情識別正確率和網(wǎng)絡(luò)參數(shù)量這兩個指標(biāo)將本文方法與AlexNet網(wǎng)絡(luò)、VGG16網(wǎng)絡(luò)、ResNet34網(wǎng)絡(luò)和GoingDeep網(wǎng)絡(luò)[20]進行了實驗對比,實驗結(jié)果如表2所示.

    從表2可以看出,本文方法在兩種數(shù)據(jù)集上的正確率均有明顯提升.在數(shù)據(jù)集RAF-DB的表情識別中,GoingDeep網(wǎng)絡(luò)的識別正確率最低,AlexNet網(wǎng)絡(luò)、VGG16網(wǎng)絡(luò)和ResNet34網(wǎng)絡(luò)的識別正確率突破了60%,均高于GoingDeep網(wǎng)絡(luò),ResNet34網(wǎng)絡(luò)的識別正確率在其三者中相對較高.本文網(wǎng)絡(luò)的識別正確率突破了70%,可以在GoingDeep網(wǎng)絡(luò)識別正確率的基礎(chǔ)上提升12.62%,在ResNet34網(wǎng)絡(luò)識別正確率的基礎(chǔ)上提高4.89%,識別正確率達到72.39%.在數(shù)據(jù)集CK+的表情識別中,GoingDeep網(wǎng)絡(luò)的識別正確率最低,其次為AlexNet網(wǎng)絡(luò),VGG16網(wǎng)絡(luò)和ResNet34網(wǎng)絡(luò)的識別正確率突破了90%,ResNet34網(wǎng)絡(luò)的識別正確率在兩者中相對較高.本文網(wǎng)絡(luò)可以在GoingDeep網(wǎng)絡(luò)正確率的基礎(chǔ)上提升9.31%,在ResNet34網(wǎng)絡(luò)正確率的基礎(chǔ)上提高3.12%,識別正確率達到95.33%.以上數(shù)據(jù)充分說明了本文網(wǎng)絡(luò)明顯增強了人臉表情的特征學(xué)習(xí),體現(xiàn)了本文網(wǎng)絡(luò)識別性能的優(yōu)越性.

    另外,從表2還明顯可以看到,在經(jīng)典網(wǎng)絡(luò)中,VGG16網(wǎng)絡(luò)的參數(shù)量最大,可達138M,參數(shù)量偏小的ResNet34網(wǎng)絡(luò)的參數(shù)量也能達到23M,而本文網(wǎng)絡(luò)的參數(shù)量相比上述網(wǎng)絡(luò)有明顯的下降,其數(shù)值為VGG16網(wǎng)絡(luò)參數(shù)量的1/83,為ResNet34網(wǎng)絡(luò)參數(shù)量的1/14.實驗結(jié)果說明本文方法在一定程度上解決了現(xiàn)階段網(wǎng)絡(luò)規(guī)模大且參數(shù)量多的問題,并且能更加有效提取人臉表情特征,提升人臉表情識別任務(wù)的性能.

    表2 不同網(wǎng)絡(luò)實驗對比

    為了更加明確地展示本文網(wǎng)絡(luò)在人臉表情識別任務(wù)中的表現(xiàn),本文提供了數(shù)據(jù)集RAF-DB和數(shù)據(jù)集CK+的混淆矩陣,如圖7和圖8所示.其中,縱標(biāo)簽欄為真實表情標(biāo)簽,橫標(biāo)簽欄為預(yù)測表情標(biāo)簽.

    從混淆矩陣中可以看出,本文網(wǎng)絡(luò)對高興的表情識別率最好,其次是驚訝,在生氣、害怕、正常、悲傷等表情的分類中并沒有達到很優(yōu)越的效果.因為高興和驚訝兩種表情相對于其他表情具有更加明顯的特征.大多高興表情中的明顯特征為嘴巴微張,嘴角翹起,眼瞼收縮等,大多驚訝表情中的明顯特征為眼睛大睜,嘴巴大張等.而生氣、害怕、悲傷和正常表情的特征均有較為相似的特征,從而增大了識別的難度.

    圖7 RAF-DB混淆矩陣

    圖8 CK+混淆矩陣

    3 結(jié)論

    本文提出了一種基于注意力機制和卷積神經(jīng)網(wǎng)絡(luò)的表情識別方法.該方法在卷積層的基礎(chǔ)上增加了殘差恒等塊,并引入SGE模塊,有效緩解了網(wǎng)絡(luò)的過擬合現(xiàn)象,豐富了人臉表情特征學(xué)習(xí),利用全局特征和局部特征的相似性來指導(dǎo)語義特征的空間分布,使每個特征組自主增強人臉表情的特征學(xué)習(xí).本文網(wǎng)絡(luò)結(jié)構(gòu)較為輕量,參數(shù)量較少.在RAF-DB和CK+數(shù)據(jù)集上的實驗結(jié)果表明,本文方法有效改善了人臉表情識別的性能.

    猜你喜歡
    人臉正確率注意力
    讓注意力“飛”回來
    有特點的人臉
    門診分診服務(wù)態(tài)度與正確率對護患關(guān)系的影響
    三國漫——人臉解鎖
    動漫星空(2018年9期)2018-10-26 01:17:14
    “揚眼”APP:讓注意力“變現(xiàn)”
    傳媒評論(2017年3期)2017-06-13 09:18:10
    生意
    品管圈活動在提高介入手術(shù)安全核查正確率中的應(yīng)用
    天津護理(2016年3期)2016-12-01 05:40:01
    A Beautiful Way Of Looking At Things
    生意
    故事會(2016年15期)2016-08-23 13:48:41
    馬面部與人臉相似度驚人
    青铜峡市| 祥云县| 上饶县| 德兴市| 望江县| 綦江县| 大化| 集安市| 七台河市| 南康市| 灵山县| 潞西市| 韩城市| 大丰市| 铁岭市| 海阳市| 莱芜市| 武鸣县| 永州市| 彭泽县| 泰和县| 盘锦市| 磴口县| 喀喇| 称多县| 贵州省| 三台县| 永州市| 乌拉特后旗| 盱眙县| 海南省| 金寨县| 基隆市| 中卫市| 濉溪县| 马公市| 汶川县| 栾川县| 陈巴尔虎旗| 泰安市| 会宁县|