一种基于类脑模型的多模态情感识别方法转让专利

申请号 : CN201710406917.5

文献号 : CN107180236B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李文静乔俊飞

申请人 : 北京工业大学

摘要 :

本发明提供了一种基于类脑模型的多模态情感识别方法。该方法包括:定义区分度指标衡量各模态特征的组间差异程度,提取初选数据特征;利用主成分分析方法进行特征降维,得到各模态下数据特征向量设计一种具有子模块结构的类脑模块化神经网络,实现对多模态特征的融合,连接结构设计包含模块中各子模块内部神经元之间的连接模块中各子模块之间的连接以及各模块之间的连接采用“赢者全拿”策略判断样本所属类别;基于Hebbian规则设计权值更新规则,包括初步更新及次级更新两步,分别对连接权值进行更新;所得连接权值用于测试数据,对分类效果进行评价。本发明提高了多模态情感识别的准确率。

权利要求 :

1.一种基于类脑模型的多模态情感识别方法,其特征在于,包括:

步骤A:对多模态情感数据,定义区分度指标DP用来衡量每种模态下每一个特征的组间差异程度,提取出区分度指标高的数据特征,再利用主成分分析方法进行特征降维,最终得到多模态数据特征向量 其中k=1,2,…,N,Fk为第k个模态数据的特征向量,f1k为第k个模态数据的第1个特征, 为第k个模态数据的第2个特征,以此类推,为第k个模态数据的第Nk个特征,N为特征模态数,Nk为第k个模态数据中特征的个数;

步骤B:根据大脑结构模块化及整合性的特性,设计一种具有子模块结构的类脑模块化神经网络;根据分类类别数设定M个模块,根据特征模态数设定每个模块中含有N个子模块,每个子模块对相应模态的特征数据进行学习;对每个模块中子模块内部及之间、以及模块之间进行结构连接设计以模拟大脑的模块化及整合性;每个模块的输出为一个神经元Rm,m=1,2,…,M,定义活跃度指标用来衡量每个模块内部所有神经元的活跃水平,采用“赢者全拿”策略判断当前输入模型的训练样本的识别类别;

步骤C:将所有连接权值初始值设为0;使用属于每个模块对应类别的训练样本对其内部的连接权值矩阵 及 进行训练, 表示第m个模块中第k个子模块内部神经元的连接权值矩阵, 表示第m个模块中第k个子模块内部的神经元与第l个子模块内部的神经元之间的连接权值矩阵,其中k,l=1,2,…,N,m=1,2,…,M,连接权值的更新遵循Hebbian规则,使连接权值得到增强;对模块之间的双向连接权值矩阵 根据训练样本所属类别基于Hebbian规则分别进行增加或衰减更新, 表示第m个模块与第n个模块中对应的第k个子模块之间的连接权值矩阵,其中k=1,2,…,N,m,n=1,2,…,M;训练样本对所有连接权值的更新步骤只进行一次,至此完成所有连接权值的初步更新;

步骤D:设定类脑模型连接权值的更新准则,目标在于增加训练样本所属类别的竞争力;将所有训练样本依次输入模型;当模型对当前训练样本能够进行可靠分类时,连接权值不更新;当模型并不能实现对当前训练样本的可靠分类时,则对权值矩阵 及依次进行更新,权值反复更新直至实现当前训练样本的可靠分类,则对当前训练样本的训练结束,将下一个训练样本输入模型;当模型对所有训练样本均完成一次训练后,则完成一次迭代;以上类脑模型连接权值的更新过程包括多次迭代,直至模型对所有训练样本均能实现可靠分类,迭代结束,至此完成所有连接权值的次级更新;

步骤E:迭代更新完成后的连接权值用于测试数据,对分类效果进行评价。

2.根据权利要求1所述的基于类脑模型的多模态情感识别方法,其特征在于,所述步骤B包括:

步骤B1:设计一种具有子模块结构的类脑模块化神经网络,模块个数M与分类类别数相同,每个模块中的子模块个数N与特征模态数相同;

步骤B2:设计类脑模块化神经网络的连接结构;每个子模块内部的神经元相互连接,表示第m个模块中第k个子模块内部神经元的连接权值矩阵,其中k=1,2,…,N;m=1,

2,…,M;在每个模块内的子模块之间设计连接结构, 表示第m个模块中第k个子模块内部的神经元与第l个子模块内部的神经元之间的连接权值矩阵,其中k,l=1,2,…,N;m=1,

2,…,M;在每个模块对应的子模块之间设计连接结构, 表示第m个模块与第n个模块中对应的第k个子模块之间的连接权值矩阵,其中k=1,2,…,N;m,n=1,2,…,M;步骤B3:第m个模块的输出为一个神经元Rm,m=1,2,…,M,用来衡量当前模块下所有神经元的活跃程度;首先定义第m个模块中每个神经元的活跃度如下:其中, 表示第m个模块中第k个子模块内部神经元i对第p个训练样本的活跃程度,fik(p)为第p个训练样本的第k个模态下的第i个特征, 为第p个训练样本的第k个模态下的第j个特征, 为第p个训练样本的第l个模态下的第j个特征, 为第m个模块中第k个子模块内部神经元j与神经元i的连接权值, 为第m个模块中第l个子模块内部神经元j与第k个子模块内部神经元i之间的连接权值, 为第h个模块中第k个子模块内部神经元j与第m个模块中对应的第k个子模块内部神经元i之间的连接权值,Nk为第k个模态数据中特征的个数,Nl为第l个模态数据中特征的个数;将每个模块下的所有神经元的活跃度求和即得到每个模块活跃度,则第m个模块的输出神经元Rm定义如下:采用“赢者全拿”策略判断第p个训练样本的识别类别,即判定输出最大的模块所对应的类别为识别类别。

3.根据权利要求2所述的基于类脑模型的多模态情感识别方法,其特征在于,所述步骤C包括:

步骤C1:将每个模块中子模块内部神经元连接权值矩阵 子模块之间的连接权值矩阵 以及不同模块中对应子模块之间的连接权值矩阵 初始值设为0,其中k,l=

1,2,…,N,m,n=1,2,…,M;

步骤C2:对每个模块中子模块内部的连接权值矩阵 使用属于对应类别的训练样本进行训练;对于属于第r类的第p个训练样本,第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 更新规则如下:其中,i,j=1,2,…,Nk,t表示迭代步数,Nk为第k个模态下的特征个数;

步骤C3:对每个模块中子模块之间的连接权值矩阵 使用属于对应类别的训练样本进行训练;对于属于第r类的第p个训练样本,第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 更新规则如下:其中,i=1,2,…,Nl,j=1,2,…,Nk,Nl和Nk分别为第l个模态及第k个模态下的特征个数;

步骤C4:对不同模块中对应子模块之间的连接权值矩阵 使用属于对应类别的训练样本进行训练;设定模块对{r,s},其中s=1,2,…,M但是s≠r;对于属于第r类的第p个训练样本,从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 更新规则如下:其中,i,j=1,2,…,Nk,Nk为第k个模态下的特征个数;

相反地,从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 更新规则如下:ΔUj,i(k)=ΔUi,j(k)    (11)

步骤C5:重复步骤C2-C4,直至完成对所有训练样本的一次训练,至此实现了连接权值的初步更新。

4.根据权利要求3所述的基于类脑模型的多模态情感识别方法,其特征在于,所述步骤D包括:

步骤D1:将第p个训练样本输入类脑模块化神经网络模型,初次执行该步骤时p=1,使用当前连接矩阵按照公式(2)、(3)计算各模块的输出Rm,m=1,2,…,M;

步骤D2:若训练样本p属于第r类,寻找除了第r个模块外,在其它模块中输出最大的模块,标记为模块s;计算第r个模块输出与第s个模块输出的差异百分比PD,定义如下;

其中,Rr为第r个模块的输出,Rs为第s个模块的输出;则会出现以下三种情况:(a)若PD<

0,则表示分类错误;(b)若0γ>0,则认为实现了可靠的分类,其中γ取值范围在[0.01,0.30];当出现情况(a)和(b)时,将执行步骤D3-D5,对连接权值进行更新,以增加模块r的竞争力而减弱模块s的竞争力;当出现情况(c)时,连接权值不更新,直接跳至步骤D6;

步骤D3:模块r内部的连接权值以及从模块s中子模块连向模块r中对应子模块的连接权值将得到增强;具体为:第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 按照公式(4)、(5)规则进行更新;第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 按照公式(6)、(7)规则进行更新;从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 按照公式(8)、(9)规则进行更新;

步骤D4:模块s内部的连接权值以及从模块r中子模块连向模块s中对应子模块的连接权值将得到减弱;具体为:第s个模块中第k个子模块内部神经元i和神经元j之间的连接权值 衰减ΔWi,j(k),更新规则如下:第s个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值衰减ΔVi(l),j(k),更新规则如下:从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 按照公式(10)、(11)规则进行更新;

步骤D5:重复步骤D1、D2;

步骤D6:令p=p+1,重复D1-D5,直至p=P,其中P为训练样本个数,即完成了所有训练样本的一次迭代;

步骤D7:判断当前类脑模型是否能够实现对所有训练样本的可靠分类;若未能实现,设定p=1,重复D1-D7,进行下一次迭代;若已实现,则步骤结束;至此,完成所有连接权值的次级更新。

说明书 :

一种基于类脑模型的多模态情感识别方法

技术领域:

[0001] 本发明涉及情感分类和模式识别领域,尤其涉及一种基于类脑模型的多模态情感识别方法。背景技术:
[0002] 多模态情感识别利用表情、语音、眼动及生理信号等多种模态数据的互补性提高分类器的识别性能,近年来成为了国内外的研究热点。其中,多模态数据融合成为多模态情感识别中具有挑战性的关键问题。目前多模态情感识别的融合方法主要包括基于特征的融合、基于决策的融合与基于模型的融合。由于多模态数据特征在时间尺度和度量上不尽相同,使得如何实现基于特征的融合成为困难。基于决策的融合方法不能揭示不同模态特征之间的相关信息,从而在一定程度上影响多模态情感识别的分类效果。基于模型的融合方法在一定程度上结合了前两种融合方法的优势,成为解决多模态情感识别问题的更优选择。然而,多模态融合模型如何建立目前尚未有效解决。
[0003] 类脑模型旨在模拟大脑多感觉通道的多层次信息整合过程,基于大脑的模块化结构以建立类脑模型并实现对大脑多模态信息的整合功能,能够有效地应用于多模态信息融合中,成为多模态情感认知的关键技术方法。

发明内容

[0004] 1、本发明需要且能够解决的技术问题。
[0005] 本发明提出了一种基于类脑模型的多模态情感数据的分类方法,通过构建能够模拟大脑模块化及整合性的类脑模型,对多模态情感数据特征进行分类,旨在提高多模态数据的分类精度及速度,实现高效的多模态情感识别。
[0006] 2、本发明具体的技术方案:
[0007] 本发明提供了一种基于类脑模型的多模态情感识别的分类方法。
[0008] 该算法包括:
[0009] 步骤A:对多模态情感数据,定义区分度指标DP用来衡量每种模态下每一个特征的组间差异程度,提取出区分度指标高的数据特征,再利用主成分分析方法进行特征降维,最终得到多模态数据特征向量 其中k=1,2,…,N,Fk为第k个模态数据的特征向量, 为第k个模态数据的第1个特征, 为第k个模态数据的第2个特征,以此类推, 为第k个模态数据的第Nk个特征,N为特征模态数,Nk为第k个模态下特征的个数;
[0010] 步骤B:根据大脑结构模块化及层级性的特性,设计一种具有子模块结构的类脑模块化神经网络;根据分类类别数设定M个模块,根据特征模态数设定每个模块中含有N个子模块,每个子模块对相应模态的特征数据进行学习;对每个模块中子模块内部及之间、以及模块之间进行结构连接设计以模拟大脑的模块化及整合性;每个模块的输出为一个神经元Rm,m=1,2,…,M,定义活跃度指标用来衡量每个模块内部所有神经元的活跃水平,采用“赢者全拿”策略判断对当前输入模型的训练样本的识别类别;
[0011] 步骤C:将所有连接权值初始值设为0;使用属于每个模块对应类别的训练样本对其内部的连接权值矩阵 及 进行训练,其中k,l=1,2,…,N,m=1,2,…,M,连接权值的更新遵循Hebbian规则,使连接权值得到增强;对模块之间的双向连接权值矩阵 根据训练样本所属类别基于Hebbian规则分别进行增加或衰减更新,其中k=1,2,…,N,m,n=1,2,…,M;训练样本对所有连接权值的更新步骤只完成一次;
[0012] 步骤D:设定类脑模型连接权值的更新准则,目标在于增加样本所属类别的竞争力;将所有训练样本依次输入模型;当模型对当前训练样本能够进行可靠分类时,连接权值不更新;当模型并不能实现对当前训练样本的可靠分类时,则对权值矩阵 及依次进行更新,权值反复更新直至实现当前训练样本的可靠分类,则对当前训练样本的训练结束,将下一个训练样本输入模型;当模型对所有训练样本均完成一次训练后,则完成一次迭代;以上类脑模型连接权值的更新过程包括多次迭代,直至模型对所有训练样本均能实现可靠分类,迭代结束;迭代更新完成后的连接权值用于测试数据,对分类效果进行评价。
[0013] 述步骤B包括:
[0014] 步骤B1:设计一种具有子模块结构的类脑模块化神经网络,模块个数M与分类个数相同,每个模块中的子模块个数N与特征模态数相同;
[0015] 步骤B2:设计类脑模块化神经网络的连接结构;每个子模块内部的神经元相互连接, (k=1,2,…,N;m=1,2,…,M)表示第m个模块中第k个子模块内部神经元的连接矩阵;每个模块内的子模块之间设计连接结构, (k,l=1,2,…,N;m=1,2,…,M)表示第m个模块中第k个子模块内部的神经元与第l个子模块内部的神经元之间的连接矩阵;在每个模块对应的子模块之间设计连接结构, (k=1,2,…,N;m,n=1,2,…,M)表示第m个模块与第n个模块中对应的第k个子模块之间的连接矩阵;
[0016] 步骤B3:第m个模块的输出为一个神经元Rm(m=1,2,…,M),用来衡量该模块下所有神经元的活跃程度。首先定义每个神经元的活跃度如下:
[0017]
[0018] 其中, 表示第m个模块中第k个子模块内部神经元i对第p个训练样本的活跃程度, 为第p个训练样本的第k个模态下的第i个特征, 为第p个训练样本的第k个模态下的第j个特征, 为第p个训练样本的第l个模态下的第j个特征, 为第m个模块中第k个子模块内部神经元j与神经元i的连接权值, 为第m个模块中第l个子模块内部神经元j与第k个子模块内部神经元i之间的连接权值, 为第h个模块中第k个子模块内部神经元j与第m个模块中对应的第k个子模块内部神经元i之间的连接权值,Nk为第k个模态数据中特征的个数,Nl为第l个模态数据中特征的个数;将每个模块下的所有神经元的活跃度求和即得到每个模块活跃度,则第m个模块的输出神经元Rm定义如下:
[0019]
[0020] 采用“赢者全拿”(winner-take-all)策略判断对第p个训练样本的识别类别,即判定输出最大的模块所对应的类别为识别类别。
[0021] 所述步骤C包括:
[0022] 步骤C1:将每个模块中子模块内部神经元连接权值矩阵 (k=1,2,…,N;m=1,2,…,M)、子模块之间的连接权值矩阵 (k,l=1,2,…,N;m=1,2,…,M)以及不同模块中对应子模块之间的连接权值矩阵 (k=1,2,…,N;m,n=1,2,…,M)初始值设为0;
[0023] 步骤C2:对每个模块中子模块内部的连接权值矩阵 (k=1,2,…,N;m=1,2,…,M),使用属于对应类别的样本进行训练;对于属于第r类的第p个训练样本,第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 更新规则如下:
[0024]
[0025]
[0026] 其中,i,j=1,2,…,Nk,t表示时刻,Nk为第k个模态下的特征个数;
[0027] 步骤C3:对每个模块中子模块之间的连接权值矩阵 (k,l=1,2,…,N;m=1,2,…,M),使用属于对应类别的样本进行训练;对于属于第r类的第p个训练样本,第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 更新规则如下:
[0028]
[0029]
[0030] 其中,i=1,2,…,Nl,j=1,2,…,Nk,Nl和Nk分别为第l个模态及第k个模态下的特征个数;
[0031] 步骤C4:对不同模块中对应子模块之间的连接权值矩阵 (k=1,2,…,N;m,n=1,2,…,M),使用属于对应类别的样本进行训练;设定模块对{r,s},其中s=1,2,…,M但是s≠r。对于属于第r类的第p个训练样本,从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 更新规则如下:
[0032]
[0033]
[0034] 其中,i,j=1,2,…,Nk,Nk为第k个模态下的特征个数;
[0035] 相反地,从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 更新规则如下:
[0036]
[0037] ΔUj,i(k)=ΔUi,j(k)   (11)
[0038] 步骤C5:重复步骤C2-C4,直至完成对所有样本的一次训练。
[0039] 所述步骤D包括:
[0040] 步骤D1:将第p个训练样本输入类脑模型(初次执行该步骤时p=1),使用当前连接矩阵按照公式(2)、(3)计算各模块的输出Rm(m=1,2,…,M);
[0041] 步骤D2:若样本p属于第r类,寻找除了第r个模块外,在其它模块中输出最大的模块,标记为模块s;计算第r个模块输出与第s个模块输出的差异百分比PD。将会出现以下三种情况:(a)若PD<0,则表示分类错误;(b)若0γ>0,则认为实现了可靠的分类,其中γ为根据经验值选取的阈值,取值范围在[0.01,0.30]。当出现情况(a)和(b)时,将执行步骤D3-D4,对连接权值进行更新,以增加模块r的竞争力而减弱模块s的竞争力;当出现情况(c)时,连接权值不更新,直接跳至步骤D6;
[0042] 步骤D3:模块r内部的连接权值以及从模块s中子模块连向模块r中对应子模块的连接权值将得到增强。具体为:第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 按照公式(4)、(5)规则进行更新;第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 按照公式(6)、(7)规则进行更新;从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 按照公式(8)、(9)规则进行更新;
[0043] 步骤D4:模块s内部的连接权值以及从模块r中子模块连向模块s中对应子模块的连接权值将得到减弱;具体为:第s个模块中第k个子模块内部神经元i和神经元j之间的连接权值 衰减ΔWi,j(k)(通过公式(5)得到),更新规则如下:
[0044]
[0045] 第s个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 衰减ΔVi(l),j(k)(通过公式(7)得到),更新规则如下:
[0046]
[0047] 从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 按照公式(10)、(11)规则进行更新;
[0048] 步骤D5:重复步骤D1、D2;
[0049] 步骤D6:令p=p+1,重复D1-D5,直至完成所有样本的训练;至此,完成了所有样本的一次迭代;
[0050] 步骤D7:判断当前类脑模型的连接权值是否能够实现对所有样本的可靠分类;若未能实现,则进行下一次迭代,设定p=1,重复D1-D7;若已实现,则步骤结束;
[0051] 步骤D8:迭代更新完成后的连接权值用于测试数据,对分类效果进行评价。
[0052] 本发明的方法通过设计类脑模块化神经网络模型,模拟大脑处理多模态信息的能力,从而实现基于多模态数据的情感识别。实验数据证明,相对于基于径向基函数的支持向量机方法(SVM-RBF)和基于多层感知器的支持向量机方法(SVM-MLP),具有更好的识别精度。本发明用于多模态情感数据分类,有效地提取出了用于分类的多模态特征,并基于构建的类脑模型解决了情感认知中多模态数据融合的问题,提高了多模态情感识别的准确率。附图说明:
[0053] 图1为根据本实施例用于多模态情感识别的方法流程图;
[0054] 图2为根据本实施例设计的类脑模型结构示意图;
[0055] 图3为本实施例分类准确率的实验对比图;
[0056] 图4为本实施例分类F1值的实验对比图具体实施方式:
[0057] 在本发明的一个示例性实施例中,提供了一种用于多模态情感识别的分类方法。图1为根据本发明实施例用于多模态情感识别的方法流程图。如图1所示,本实施例用于多模态情感识别的分类方法包括:
[0058] 步骤A:对多模态情感数据,定义区分度指标DP用来衡量每种模态的每一个特征的组间差异程度,提取出区分度指标高的数据特征,再利用主成分分析方法进行特征降维,最终得到多模态数据特征向量 其中k=1,2,…,N,Fk为第k个模态数据的特征向量, 为第k个模态数据的第1个特征, 为第k个模态数据的第2个特征,以此类推, 为第k个模态数据的第Nk个特征,N为特征模态数,Nk为第k个模态下特征的个数;
[0059] 该步骤具体包括:
[0060] 步骤A1:定义区分度指标DP以衡量每种模态下每一个特征的组间差异程度。对某种模态下的第i个特征,其区分度指标定义为:
[0061]
[0062] 其中,fij表示第j个样本的第i个特征, 表示第l个类别中第i个特征的均值,表示所有样本中第i个特征的均值,I(yj=l)是一个指标函数,当其为1时表示第j个样本属于类别l,为0时则表示不属于类别l;
[0063] 步骤A2:根据经验设定阈值α,取值范围在[0.001,0.05];在每种模态的特征中,选取DP>α的所有特征作为初选特征;
[0064] 步骤A3:使用主成分分析方法对初选特征进行降维,根据经验设定累积贡献率阈值θ0,取值范围[0.80,0.99],由此得到多模态数据特征向量 其中k=1,2,…,N,Fk为第k个模态数据的特征向量, 为第k个模态数据的第1个特征, 为第k个模态数据的第2个特征,以此类推, 为第k个模态数据的第Nk个特征,N为特征模态数,Nk为第k个模态下特征的个数;
[0065] 在本实施例中,选取的数据包含N=5种模态(包括脑磁图MEG、心电图ECG、眼电图hEOG、肌电图EMG、近红内面部视频等模态的数据特征),根据经验α设定为0.005,θ0设定为0.95,经步骤A得到Nk值的范围可能在[1,20]。
[0066] 步骤B:根据大脑结构模块化及整合性的特性,设计一种具有子模块结构的类脑模块化神经网络;根据分类类别数设定M个模块,根据特征模态数设定每个模块中含有N个子模块,每个子模块对相应模态的特征数据进行学习;对每个模块中子模块内部及之间、以及模块之间进行结构连接设计以模拟大脑的模块化及整合性;每个模块的输出为一个神经元mR ,m=1,2,…,M,定义活跃度指标用来衡量每个模块内部所有神经元的活跃水平,采用“赢者全拿”策略判断对当前输入模型的训练样本的识别类别;
[0067] 该步骤具体包括:
[0068] 步骤B1:设计一种具有子模块结构的类脑模块化神经网络,模块个数M与分类类别数相同,每个模块中的子模块个数N与特征模态数相同;
[0069] 步骤B2:设计类脑模块化神经网络的连接结构;每个子模块内部的神经元相互连接, 表示第m个模块中第k个子模块内部神经元的连接权值矩阵,其中k=1,2,…,N;m=1,2,…,M;每个模块内的子模块之间设计连接结构, 表示第m个模块中第k个子模块内部的神经元与第l个子模块内部的神经元之间的连接权值矩阵,其中k,l=1,2,…,N;m=1,
2,…,M;在每个模块对应的子模块之间设计连接结构, 表示第m个模块与第n个模块中对应的第k个子模块之间的连接权值矩阵,其中k=1,2,…,N;m,n=1,2,…,M;
[0070] 步骤B3:第m个模块的输出为一个神经元Rm,m=1,2,…,M,用来衡量该模块下所有神经元的活跃程度;首先定义每个神经元的活跃度如下:
[0071]
[0072] 其中, 表示第m个模块中第k个子模块内部神经元i对第p个训练样本的活跃程度, 为第p个训练样本的第k个模态下的第i个特征, 为第p个训练样本的第k个模态下的第j个特征, 为第p个训练样本的第l个模态下的第j个特征, 为第m个模块中第k个子模块内部神经元j与神经元i的连接权值, 为第m个模块中第l个子模块内部神经元j与第k个子模块内部神经元i之间的连接权值, 为第h个模块中第k个子模块内部神经元j与第m个模块中对应的第k个子模块内部神经元i之间的连接权值,Nk为第k个模态数据中特征的个数,Nl为第l个模态数据中特征的个数。将每个模块下的所有神经元的活跃度求和即得到每个模块活跃度,则第m个模块的输出神经元Rm定义如下:
[0073]
[0074] 采用“赢者全拿”策略判断对第p个训练样本的识别类别,即判定输出最大的模块所对应的类别为识别类别;
[0075] 在本实施例中,使用多模态情感数据,在情感的三个维度上(激活度Arousal、评价度Valence、优势度Dominance)分别进行二分类,因此M选取2。图2为本实施例中构建的类脑模型结构示意图。
[0076] 步骤C:将所有连接权值初始值设为0;使用属于每个模块对应类别的训练样本对其内部的连接权值矩阵 及 进行训练,其中k,l=1,2,…,N,m=1,2,…,M,连接权值的更新遵循Hebbian规则,使连接权值得到增强;对模块之间的双向连接权值矩阵 根据训练样本所属类别基于Hebbian规则分别进行增加或衰减更新,其中k=1,2,…,N,m,n=1,2,…,M;训练样本对所有连接权值的更新步骤只完成一次,至此完成所有连接权值的初步更新;
[0077] 该步骤具体包括:
[0078] 步骤C1:将每个模块中子模块内部神经元连接权值矩阵 子模块之间的连接权值矩阵 以及不同模块中对应子模块之间的连接权值矩阵 初始值设为0,其中k,l=1,2,…,N,m,n=1,2,…,M;
[0079] 步骤C2:对每个模块中子模块内部的连接权值矩阵 使用属于对应类别的样本进行训练。对于属于第r类的第p个训练样本,第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 更新规则如下:
[0080]
[0081]
[0082] 其中,i,j=1,2,…,Nk,t表示迭代步数,Nk为第k个模态下的特征个数。
[0083] 步骤C3:对每个模块中子模块之间的连接权值矩阵 使用属于对应类别的样本进行训练。对于属于第r类的第p个训练样本,第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 更新规则如下:
[0084]
[0085]
[0086] 其中,i=1,2,…,Nl,j=1,2,…,Nk,Nl和Nk分别为第l个模态及第k个模态下的特征个数。
[0087] 步骤C4:对不同模块中对应子模块之间的连接权值矩阵 使用属于对应类别的样本进行训练。设定模块对{r,s},其中s=1,2,…,M但是s≠r;对于属于第r类的第p个训练样本,从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 更新规则如下:
[0088]
[0089]
[0090] 其中,i,j=1,2,…,Nk,Nk为第k个模态下的特征个数。
[0091] 相反地,从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 更新规则如下:
[0092]
[0093] ΔUj,i(k)=ΔUi,j(k)  (11)
[0094] 步骤C5:重复步骤C2-C4,直至完成对所有样本的一次训练,至此实现了连接权值的初步更新。
[0095] 步骤D:设定类脑模型连接权值的更新准则,目标在于增加样本所属类别的竞争力;将所有训练样本依次输入模型;当模型对当前训练样本能够进行可靠分类时,连接权值不更新;当模型并不能实现对当前训练样本的可靠分类时,则对权值矩阵 及依次进行更新,权值反复更新直至实现当前训练样本的可靠分类,则对当前训练样本的训练结束,将下一个训练样本输入模型;当模型对所有训练样本均完成一次训练后,则完成一次迭代;以上类脑模型连接权值的更新过程包括多次迭代,直至模型对所有训练样本均能实现可靠分类,迭代结束,至此完成所有连接权值的次级更新;
[0096] 具体步骤包括:
[0097] 步骤D1:将第p个训练样本输入类脑模块化神经网络模型,初次执行该步骤时p=1,使用当前连接矩阵按照公式(2)、(3)计算各模块的输出Rm,m=1,2,…,M;
[0098] 步骤D2:若样本p属于第r类,寻找除了第r个模块外,在其它模块中输出最大的模块,标记为模块s。计算第r个模块输出与第s个模块输出的差异百分比PD,定义如下;
[0099]
[0100] 其中,Rr为第r个模块的输出,Rs为第s个模块的输出;则会出现以下三种情况:(a)若PD<0,则表示分类错误;(b)若0γ>0,则认为实现了可靠的分类,其中γ取值范围在[0.01,0.30];当出现情况(a)和(b)时,将执行步骤D3-D5,对连接权值进行更新,以增加模块r的竞争力而减弱模块s的竞争力;当出现情况(c)时,连接权值不更新,直接跳至步骤D6。
[0101] 步骤D3:模块r内部的连接权值以及从模块s中子模块连向模块r中对应子模块的连接权值将得到增强;具体为:第r个模块中第k个子模块内部神经元i和神经元j之间的连接权值 按照公式(4)、(5)规则进行更新;第r个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 按照公式(6)、(7)规则进行更新;从模块s中第k个子模块内部神经元i连向模块r中第k个子模块内部神经元j的连接权值 按照公式(8)、(9)规则进行更新。
[0102] 步骤D4:模块s内部的连接权值以及从模块r中子模块连向模块s中对应子模块的连接权值将得到减弱。具体为:第s个模块中第k个子模块内部神经元i和神经元j之间的连接权值 衰减ΔWi,j(k),更新规则如下:
[0103]
[0104] 第s个模块中第l个子模块内部神经元i和第k个子模块内部神经元j之间的连接权值 衰减ΔVi(l),j(k),更新规则如下:
[0105]
[0106] 从模块r中第k个子模块内部神经元j连向模块s中第k个子模块内部神经元i的连接权值 按照公式(10)、(11)规则进行更新。
[0107] 步骤D5:重复步骤D1、D2;
[0108] 步骤D6:令p=p+1,重复D1-D5,直至p=P,其中P为样本个数,即完成了所有样本的一次迭代;
[0109] 步骤D7:判断当前类脑模型的连接权值是否能够实现对所有样本的可靠分类;若未能实现,设定p=1,重复D1-D7,进行下一次迭代,若已实现,则步骤结束;至此,完成所有连接权值的次级更新。
[0110] 步骤E:迭代更新完成后的连接权值用于测试数据,对分类效果进行评价。
[0111] 在本实施例中,通过对训练样本使用10折交叉验证方法进行调参,从而选择最佳阈值γ=0.21。使用留一交叉验证法进行实验,计算识别的平均准确率作为评价该分类方法的指标。将该方法与基于径向基函数的支持向量机方法(SVM-RBF)、基于多层感知器的支持向量机方法(SVM-MLP)方法进行对比,计算准确率及F1值作为分类评价指标,实验结果如图3、4所示。表明该方法有效地实现了多模态情感识别,并且识别效果相对于另外两种方法有所提高。