技術(shù)領(lǐng)域:
本發(fā)明涉及情感分類和模式識(shí)別領(lǐng)域,尤其涉及一種基于類腦模型的多模態(tài)情感識(shí)別方法。
背景技術(shù):
:
多模態(tài)情感識(shí)別利用表情、語音、眼動(dòng)及生理信號(hào)等多種模態(tài)數(shù)據(jù)的互補(bǔ)性提高分類器的識(shí)別性能,近年來成為了國內(nèi)外的研究熱點(diǎn)。其中,多模態(tài)數(shù)據(jù)融合成為多模態(tài)情感識(shí)別中具有挑戰(zhàn)性的關(guān)鍵問題。目前多模態(tài)情感識(shí)別的融合方法主要包括基于特征的融合、基于決策的融合與基于模型的融合。由于多模態(tài)數(shù)據(jù)特征在時(shí)間尺度和度量上不盡相同,使得如何實(shí)現(xiàn)基于特征的融合成為困難?;跊Q策的融合方法不能揭示不同模態(tài)特征之間的相關(guān)信息,從而在一定程度上影響多模態(tài)情感識(shí)別的分類效果?;谀P偷娜诤戏椒ㄔ谝欢ǔ潭壬辖Y(jié)合了前兩種融合方法的優(yōu)勢,成為解決多模態(tài)情感識(shí)別問題的更優(yōu)選擇。然而,多模態(tài)融合模型如何建立目前尚未有效解決。
類腦模型旨在模擬大腦多感覺通道的多層次信息整合過程,基于大腦的模塊化結(jié)構(gòu)以建立類腦模型并實(shí)現(xiàn)對大腦多模態(tài)信息的整合功能,能夠有效地應(yīng)用于多模態(tài)信息融合中,成為多模態(tài)情感認(rèn)知的關(guān)鍵技術(shù)方法。
技術(shù)實(shí)現(xiàn)要素:
1、本發(fā)明需要且能夠解決的技術(shù)問題。
本發(fā)明提出了一種基于類腦模型的多模態(tài)情感數(shù)據(jù)的分類方法,通過構(gòu)建能夠模擬大腦模塊化及整合性的類腦模型,對多模態(tài)情感數(shù)據(jù)特征進(jìn)行分類,旨在提高多模態(tài)數(shù)據(jù)的分類精度及速度,實(shí)現(xiàn)高效的多模態(tài)情感識(shí)別。
2、本發(fā)明具體的技術(shù)方案:
本發(fā)明提供了一種基于類腦模型的多模態(tài)情感識(shí)別的分類方法。該算法包括:
步驟a:對多模態(tài)情感數(shù)據(jù),定義區(qū)分度指標(biāo)dp用來衡量每種模態(tài)下每一個(gè)特征的組間差異程度,提取出區(qū)分度指標(biāo)高的數(shù)據(jù)特征,再利用主成分分析方法進(jìn)行特征降維,最終得到多模態(tài)數(shù)據(jù)特征向量
步驟b:根據(jù)大腦結(jié)構(gòu)模塊化及層級(jí)性的特性,設(shè)計(jì)一種具有子模塊結(jié)構(gòu)的類腦模塊化神經(jīng)網(wǎng)絡(luò);根據(jù)分類類別數(shù)設(shè)定m個(gè)模塊,根據(jù)特征模態(tài)數(shù)設(shè)定每個(gè)模塊中含有n個(gè)子模塊,每個(gè)子模塊對相應(yīng)模態(tài)的特征數(shù)據(jù)進(jìn)行學(xué)習(xí);對每個(gè)模塊中子模塊內(nèi)部及之間、以及模塊之間進(jìn)行結(jié)構(gòu)連接設(shè)計(jì)以模擬大腦的模塊化及整合性;每個(gè)模塊的輸出為一個(gè)神經(jīng)元rm,m=1,2,…,m,定義活躍度指標(biāo)用來衡量每個(gè)模塊內(nèi)部所有神經(jīng)元的活躍水平,采用“贏者全拿”策略判斷對該樣本的識(shí)別類別;
步驟c:將所有連接權(quán)值初始值設(shè)為0;使用屬于每個(gè)模塊對應(yīng)類別的訓(xùn)練樣本對其內(nèi)部的連接權(quán)值矩陣
步驟d:設(shè)定類腦模型連接權(quán)值的更新準(zhǔn)則,目標(biāo)在于增加樣本所屬類別的競爭力;將所有樣本依次輸入模型;當(dāng)模型對某樣本能夠進(jìn)行可靠分類時(shí),連接權(quán)值不更新;當(dāng)模型并不能實(shí)現(xiàn)對某樣本的可靠分類時(shí),則對權(quán)值矩陣
所述步驟b包括:
步驟b1:設(shè)計(jì)一種具有子模塊結(jié)構(gòu)的類腦模塊化神經(jīng)網(wǎng)絡(luò),模塊個(gè)數(shù)m與分類個(gè)數(shù)相同,每個(gè)模塊中的子模塊個(gè)數(shù)n與特征模態(tài)數(shù)相同;
步驟b2:設(shè)計(jì)類腦模塊化神經(jīng)網(wǎng)絡(luò)的連接結(jié)構(gòu);每個(gè)子模塊內(nèi)部的神經(jīng)元相互連接,
步驟b3:第m個(gè)模塊的輸出為一個(gè)神經(jīng)元rm(m=1,2,…,m),用來衡量該模塊下所有神經(jīng)元的活躍程度。首先定義每個(gè)神經(jīng)元的活躍度如下:
其中,
采用“贏者全拿”策略判斷對該樣本的識(shí)別類別,即判定輸出最大的模塊所對應(yīng)的類別為識(shí)別類別。
所述步驟c包括:
步驟c1:將每個(gè)模塊中子模塊內(nèi)部神經(jīng)元連接權(quán)值矩陣
步驟c2:對每個(gè)模塊中子模塊內(nèi)部的連接權(quán)值矩陣
其中,i,j=1,2,…,nk,t表示時(shí)刻,nk為第k個(gè)模態(tài)下的特征個(gè)數(shù);
步驟c3:對每個(gè)模塊中子模塊之間的連接權(quán)值矩陣
其中,i=1,2,…,nl,j=1,2,…,nk,nl和nk分別為第l個(gè)模態(tài)及第k個(gè)模態(tài)下的特征個(gè)數(shù);
步驟c4:對不同模塊中對應(yīng)子模塊之間的連接權(quán)值矩陣
其中,i,j=1,2,…,nk,nk為第k個(gè)模態(tài)下的特征個(gè)數(shù);
相反地,從模塊r中第k個(gè)子模塊內(nèi)部神經(jīng)元j連向模塊s中第k個(gè)子模塊內(nèi)部神經(jīng)元i的連接權(quán)值
δuj,i(k)=δui,j(k)(11)
步驟c5:重復(fù)步驟c2-c4,直至完成對所有樣本的一次訓(xùn)練。
所述步驟d包括:
步驟d1:將第p個(gè)訓(xùn)練樣本輸入類腦模型(初次執(zhí)行該步驟時(shí)p=1),使用當(dāng)前連接矩陣按照公式(2)、(3)計(jì)算各模塊的輸出rm(m=1,2,…,m);
步驟d2:若樣本p屬于第r類,尋找除了第r個(gè)模塊外,在其它模塊中輸出最大的模塊,標(biāo)記為模塊s;計(jì)算第r個(gè)模塊輸出與第s個(gè)模塊輸出的差異百分比pd。將會(huì)出現(xiàn)以下三種情況:(a)若pd<0,則表示分類錯(cuò)誤;(b)若0<pd<γ,雖然分類正確,但是并不可靠;(c)若pd>γ>0,則認(rèn)為實(shí)現(xiàn)了可靠的分類,其中γ為根據(jù)經(jīng)驗(yàn)值選取的閾值,取值范圍在[0.01,0.30]。當(dāng)出現(xiàn)情況(a)和(b)時(shí),將執(zhí)行步驟d3-d5,對連接權(quán)值進(jìn)行更新,以增加模塊r的競爭力而減弱模塊s的競爭力;當(dāng)出現(xiàn)情況(c)時(shí),連接權(quán)值不更新,直接跳至步驟d6;
步驟d3:模塊r內(nèi)部的連接權(quán)值以及從模塊s中子模塊連向模塊r中對應(yīng)子模塊的連接權(quán)值將得到增強(qiáng)。具體為:第r個(gè)模塊中第k個(gè)子模塊內(nèi)部神經(jīng)元i和神經(jīng)元j之間的連接權(quán)值
步驟d4:模塊s內(nèi)部的連接權(quán)值以及從模塊r中子模塊連向模塊s中對應(yīng)子模塊的連接權(quán)值將得到減弱;具體為:第s個(gè)模塊中第k個(gè)子模塊內(nèi)部神經(jīng)元i和神經(jīng)元j之間的連接權(quán)值
第s個(gè)模塊中第l個(gè)子模塊內(nèi)部神經(jīng)元i和第k個(gè)子模塊內(nèi)部神經(jīng)元j之間的連接權(quán)值
從模塊r中第k個(gè)子模塊內(nèi)部神經(jīng)元j連向模塊s中第k個(gè)子模塊內(nèi)部神經(jīng)元i的連接權(quán)值
步驟d5:重復(fù)步驟d1、d2;
步驟d6:令p=p+1,重復(fù)d1-d5,直至完成所有樣本的訓(xùn)練;至此,完成了所有樣本的一次迭代;
步驟d7:判斷當(dāng)前類腦模型的連接權(quán)值是否能夠?qū)崿F(xiàn)對所有樣本的可靠分類;若未能實(shí)現(xiàn),則進(jìn)行下一次迭代,設(shè)定p=1,重復(fù)d1-d7;若已實(shí)現(xiàn),則步驟結(jié)束;
步驟d8:迭代更新完成后的連接權(quán)值用于測試數(shù)據(jù),對分類效果進(jìn)行評價(jià)。
本發(fā)明的方法通過設(shè)計(jì)類腦模塊化神經(jīng)網(wǎng)絡(luò)模型,模擬大腦處理多模態(tài)信息的能力,從而實(shí)現(xiàn)基于多模態(tài)數(shù)據(jù)的情感識(shí)別。實(shí)驗(yàn)數(shù)據(jù)證明,相對于基于徑向基函數(shù)的支持向量機(jī)方法(svm-rbf)和基于多層感知器的支持向量機(jī)方法(svm-mlp),具有更好的識(shí)別精度。本發(fā)明用于多模態(tài)情感數(shù)據(jù)分類,有效地提取出了用于分類的多模態(tài)特征,并基于構(gòu)建的類腦模型解決了情感認(rèn)知中多模態(tài)數(shù)據(jù)融合的問題,提高了多模態(tài)情感識(shí)別的準(zhǔn)確率。
附圖說明:
圖1為根據(jù)本實(shí)施例用于多模態(tài)情感識(shí)別的方法流程圖;
圖2為根據(jù)本實(shí)施例設(shè)計(jì)的類腦模型結(jié)構(gòu)示意圖;
圖3為本實(shí)施例分類準(zhǔn)確率的實(shí)驗(yàn)對比圖;
圖4為本實(shí)施例分類f1值的實(shí)驗(yàn)對比圖
具體實(shí)施方式:
在本發(fā)明的一個(gè)示例性實(shí)施例中,提供了一種用于多模態(tài)情感識(shí)別的分類方法。圖1為根據(jù)本發(fā)明實(shí)施例用于多模態(tài)情感識(shí)別的方法流程圖。如圖1所示,本實(shí)施例用于多模態(tài)情感識(shí)別的分類方法包括:
步驟a:對多模態(tài)情感數(shù)據(jù),定義區(qū)分度指標(biāo)dp用來衡量每種模態(tài)的每一個(gè)特征的組間差異程度,提取出區(qū)分度指標(biāo)高的數(shù)據(jù)特征,再利用主成分分析方法進(jìn)行特征降維,最終得到多模態(tài)數(shù)據(jù)特征向量
該步驟具體包括:
步驟a1:定義區(qū)分度指標(biāo)dp以衡量每種模態(tài)下每一個(gè)特征的組間差異程度。對某種模態(tài)下的第i個(gè)特征,其區(qū)分度指標(biāo)定義為:
其中,fij表示第j個(gè)樣本的第i個(gè)特征,
步驟a2:根據(jù)經(jīng)驗(yàn)設(shè)定閾值α,取值范圍在[0.001,0.05];在每種模態(tài)的特征中,選取dp>α的所有特征作為初選特征;
步驟a3:使用主成分分析方法對初選特征進(jìn)行降維,根據(jù)經(jīng)驗(yàn)設(shè)定累積貢獻(xiàn)率閾值θ0,取值范圍[0.80,0.99],由此得到多模態(tài)數(shù)據(jù)特征向量
在本實(shí)施例中,選取的數(shù)據(jù)包含n=5種模態(tài)(包括腦磁圖meg、心電圖ecg、眼電圖heog、肌電圖emg、近紅內(nèi)面部視頻等模態(tài)的數(shù)據(jù)特征),根據(jù)經(jīng)驗(yàn)α設(shè)定為0.005,θ0設(shè)定為0.95,經(jīng)步驟a得到nk值的范圍可能在[1,20]。
步驟b:根據(jù)大腦結(jié)構(gòu)模塊化及整合性的特性,設(shè)計(jì)一種具有子模塊結(jié)構(gòu)的類腦模塊化神經(jīng)網(wǎng)絡(luò);根據(jù)分類類別數(shù)設(shè)定m個(gè)模塊,根據(jù)特征模態(tài)數(shù)設(shè)定每個(gè)模塊中含有n個(gè)子模塊,每個(gè)子模塊對相應(yīng)模態(tài)的特征數(shù)據(jù)進(jìn)行學(xué)習(xí);對每個(gè)模塊中子模塊內(nèi)部及之間、以及模塊之間進(jìn)行結(jié)構(gòu)連接設(shè)計(jì)以模擬大腦的模塊化及整合性;每個(gè)模塊的輸出為一個(gè)神經(jīng)元rm,m=1,2,…,m,定義活躍度指標(biāo)用來衡量每個(gè)模塊內(nèi)部所有神經(jīng)元的活躍水平,采用“贏者全拿”策略判斷對該樣本的識(shí)別類別;
該步驟具體包括:
步驟b1:設(shè)計(jì)一種具有子模塊結(jié)構(gòu)的類腦模塊化神經(jīng)網(wǎng)絡(luò),模塊個(gè)數(shù)m與分類類別數(shù)相同,每個(gè)模塊中的子模塊個(gè)數(shù)n與特征模態(tài)數(shù)相同;
步驟b2:設(shè)計(jì)類腦模塊化神經(jīng)網(wǎng)絡(luò)的連接結(jié)構(gòu);每個(gè)子模塊內(nèi)部的神經(jīng)元相互連接,
步驟b3:第m個(gè)模塊的輸出為一個(gè)神經(jīng)元rm,m=1,2,…,m,用來衡量該模塊下所有神經(jīng)元的活躍程度;首先定義每個(gè)神經(jīng)元的活躍度如下:
其中,
采用“贏者全拿”策略判斷對該樣本的識(shí)別類別,即判定輸出最大的模塊所對應(yīng)的類別為識(shí)別類別;
在本實(shí)施例中,使用多模態(tài)情感數(shù)據(jù),在情感的三個(gè)維度上(激活度arousal、評價(jià)度valence、優(yōu)勢度dominance)分別進(jìn)行二分類,因此m選取2。圖2為本實(shí)施例中構(gòu)建的類腦模型結(jié)構(gòu)示意圖。
步驟c:將所有連接權(quán)值初始值設(shè)為0;使用屬于每個(gè)模塊對應(yīng)類別的訓(xùn)練樣本對其內(nèi)部的連接權(quán)值矩陣
該步驟具體包括:
步驟c1:將每個(gè)模塊中子模塊內(nèi)部神經(jīng)元連接權(quán)值矩陣
步驟c2:對每個(gè)模塊中子模塊內(nèi)部的連接權(quán)值矩陣
其中,i,j=1,2,…,nk,t表示迭代步數(shù),nk為第k個(gè)模態(tài)下的特征個(gè)數(shù)。
步驟c3:對每個(gè)模塊中子模塊之間的連接權(quán)值矩陣
其中,i=1,2,…,nl,j=1,2,…,nk,nl和nk分別為第l個(gè)模態(tài)及第k個(gè)模態(tài)下的特征個(gè)數(shù)。
步驟c4:對不同模塊中對應(yīng)子模塊之間的連接權(quán)值矩陣
其中,i,j=1,2,…,nk,nk為第k個(gè)模態(tài)下的特征個(gè)數(shù)。
相反地,從模塊r中第k個(gè)子模塊內(nèi)部神經(jīng)元j連向模塊s中第k個(gè)子模塊內(nèi)部神經(jīng)元i的連接權(quán)值
δuj,i(k)=δui,j(k)(11)
步驟c5:重復(fù)步驟c2-c4,直至完成對所有樣本的一次訓(xùn)練,至此實(shí)現(xiàn)了連接權(quán)值的初步更新。
步驟d:設(shè)定類腦模型連接權(quán)值的更新準(zhǔn)則,目標(biāo)在于增加樣本所屬類別的競爭力;將所有樣本依次輸入模型;當(dāng)模型對某樣本能夠進(jìn)行可靠分類時(shí),連接權(quán)值不更新;當(dāng)模型并不能實(shí)現(xiàn)對某樣本的可靠分類時(shí),則對權(quán)值矩陣
具體步驟包括:
步驟d1:將第p個(gè)訓(xùn)練樣本輸入類腦模塊化神經(jīng)網(wǎng)絡(luò)模型,初次執(zhí)行該步驟時(shí)p=1,使用當(dāng)前連接矩陣按照公式(2)、(3)計(jì)算各模塊的輸出rm,m=1,2,…,m;
步驟d2:若樣本p屬于第r類,尋找除了第r個(gè)模塊外,在其它模塊中輸出最大的模塊,標(biāo)記為模塊s。計(jì)算第r個(gè)模塊輸出與第s個(gè)模塊輸出的差異百分比pd,定義如下;
其中,rr為第r個(gè)模塊的輸出,rs為第s個(gè)模塊的輸出;則會(huì)出現(xiàn)以下三種情況:(a)若pd<0,則表示分類錯(cuò)誤;(b)若0<pd<γ,雖然分類正確,但是并不可靠;(c)若pd>γ>0,則認(rèn)為實(shí)現(xiàn)了可靠的分類,其中γ取值范圍在[0.01,0.30];當(dāng)出現(xiàn)情況(a)和(b)時(shí),將執(zhí)行步驟d3-d5,對連接權(quán)值進(jìn)行更新,以增加模塊r的競爭力而減弱模塊s的競爭力;當(dāng)出現(xiàn)情況(c)時(shí),連接權(quán)值不更新,直接跳至步驟d6。
步驟d3:模塊r內(nèi)部的連接權(quán)值以及從模塊s中子模塊連向模塊r中對應(yīng)子模塊的連接權(quán)值將得到增強(qiáng);具體為:第r個(gè)模塊中第k個(gè)子模塊內(nèi)部神經(jīng)元i和神經(jīng)元j之間的連接權(quán)值
步驟d4:模塊s內(nèi)部的連接權(quán)值以及從模塊r中子模塊連向模塊s中對應(yīng)子模塊的連接權(quán)值將得到減弱。具體為:第s個(gè)模塊中第k個(gè)子模塊內(nèi)部神經(jīng)元i和神經(jīng)元j之間的連接權(quán)值
第s個(gè)模塊中第l個(gè)子模塊內(nèi)部神經(jīng)元i和第k個(gè)子模塊內(nèi)部神經(jīng)元j之間的連接權(quán)值
從模塊r中第k個(gè)子模塊內(nèi)部神經(jīng)元j連向模塊s中第k個(gè)子模塊內(nèi)部神經(jīng)元i的連接權(quán)值
步驟d5:重復(fù)步驟d1、d2;
步驟d6:令p=p+1,重復(fù)d1-d5,直至p=p,其中p為樣本個(gè)數(shù),即完成了所有樣本的一次迭代;
步驟d7:判斷當(dāng)前類腦模型的連接權(quán)值是否能夠?qū)崿F(xiàn)對所有樣本的可靠分類;若未能實(shí)現(xiàn),設(shè)定p=1,重復(fù)d1-d7,進(jìn)行下一次迭代,若已實(shí)現(xiàn),則步驟結(jié)束;至此,完成所有連接權(quán)值的次級(jí)更新。
步驟e:迭代更新完成后的連接權(quán)值用于測試數(shù)據(jù),對分類效果進(jìn)行評價(jià)。
在本實(shí)施例中,通過對訓(xùn)練樣本使用10折交叉驗(yàn)證方法進(jìn)行調(diào)參,從而選擇最佳閾值γ=0.21。使用留一交叉驗(yàn)證法進(jìn)行實(shí)驗(yàn),計(jì)算識(shí)別的平均準(zhǔn)確率作為評價(jià)該分類方法的指標(biāo)。將該方法與基于徑向基函數(shù)的支持向量機(jī)方法(svm-rbf)、基于多層感知器的支持向量機(jī)方法(svm-mlp)方法進(jìn)行對比,計(jì)算準(zhǔn)確率及f1值作為分類評價(jià)指標(biāo),實(shí)驗(yàn)結(jié)果如圖3、4所示。表明該方法有效地實(shí)現(xiàn)了多模態(tài)情感識(shí)別,并且識(shí)別效果相對于另外兩種方法有所提高。