基于Transformer结构搜索的脑电信号情绪识别方法

文档序号:29815405发布日期:2022-04-27 10:03阅读:717来源:国知局
基于Transformer结构搜索的脑电信号情绪识别方法
基于transformer结构搜索的脑电信号情绪识别方法
技术领域
1.本发明涉及情感计算领域,具体的说是一种通过算法自动搜索最优网络用于脑电情绪识别的方法。


背景技术:

2.情绪是人类心理和生理状态的综合表现,它在很大程度上影响着我们的意识、行为和人际交往。实践证明,积极情绪可以改善人际关系和工作效率,而消极情绪会产生自卑感和无助感,甚至导致严重的心理问题。随着交互技术的飞速发展,情感计算(ac)在人机交互(hci)领域展现出巨大的潜力。系统能否有效地理解人类情感,将直接影响交互体验和交互能力。此外,情绪识别也已应用于医疗保健,并已成为一种新兴的情绪障碍机器辅助诊断方法,因此,探索有效的情感识别方法以满足实际应用的需求具有重要意义。
3.基于eeg信号的情绪识别的传统算法中,通常是先从eeg信号中提取特征,再将提取到的特征运用到分类器中进行识别任务。常用的脑电特征有时域特征、频域特征和时频特征等。除此之外、功率谱特征、小波特征和微分熵等特征作为情绪相关特征进行情绪分类时,也可以取得比较好的结果。
4.由于传统方法手动提取特征的复杂性以及深度学习的快速发展,研究人员逐渐将深度学习这种新的高效算法应用到脑电解码中,并展示了其相对于传统方法的优势。深度学习(dl)技术由于其自动特征提取和特征选择能力,许多研究人员已经将这种有效的算法应用于脑电图解码,以捕获有区别的高级特征和潜在的依赖关系,基于自注意力机制的transformer在处理远距离时间序列信号方面显示出了其优越性。此外,端到端dl框架结合了特征提取和分类,无需复杂的预处理,与传统方法相比具有很大的优势。
5.尽管dl在基于脑电图的情感识别方面显示出突出的优势,但这一进展的关键方面是新的网络结构的出现。事实证明,特征表示和最终性能在很大程度上取决于网络的体系结构。研究人员设计了各种复杂的架构,以实现更好的数据特征表示和分类识别效果。然而,现有的体系结构大多是由人类专家设计的,需要大量的先验知识和经验,这是一个耗时且容易出错的过程。同时,由于固有知识的局限性,专家们很难跳出原有的思维范式去设计理想的模型,导致人工设计的网络架构不够新颖,缺乏创新性,在设计的过程中会消耗大量的人力物力资源,耗时问题和效率问题得不到有效的解决,同时手工设计的模型的泛化性不强,造成人为设计的模型无法应用到更广泛的领域。


技术实现要素:

6.本发明为克服现有技术的不足之处,提出一种基于transformer结构搜索的脑电信号情绪识别方法,以期能自适应搜索情绪分类的最优transformer结构模型用于情绪识别分类,从而克服人工设计网络结构的缺陷,并提高情绪识别率。
7.本发明为达到上述发明目的,采用如下技术方案:
8.本发明一种基于transformer结构搜索的脑电信号情绪识别方法的特点是按如下
步骤进行:
9.步骤1、获取任一受试者a的带有m种情绪标签的脑电信号数据并进行去基线和样本分割处理,从而得到受试者a的带有m种情绪标签的n个脑电信号样本,记为x={x1,x2,...,xi,...,xn},其中,表示带有m种情绪标签的第i个脑电信号样本,h表示脑电信号的通道数,g表示采样点数,i=1,2,...,n;n是样本数量;
10.步骤2、定义transformer结构搜索的搜索空间包含有不同架构参数的若干个transformer候选架构,所述架构参数包括:架构的嵌入维度e∈(e1,e2,...,en);架构的多头注意力层的头数量h∈(h1,h2,...,hm);架构的多层感知机mlp层的隐藏层维度与嵌入维度比例ratio∈(r1,r2,...,rv)以及transformer架构的网络层数l∈(l1,l2,...,lq);其中,en表示嵌入维度的第n个取值,hm表示头数量的第m个取值,rv表示mlp层隐藏层维度与嵌入维度比例的第v个取值,lq表示网络层数的第q个取值;n表示嵌入维度的取值个数,m表示头数量的取值个数,v表示隐藏层维度与嵌入维度比例的取值个数,q表示网络层数的取值个数;
11.步骤3、按照所定义的搜索空间,建立一个包含搜索空间内所有transformer候选架构的超网,所述超网的参数分别取架构参数的最大值;
12.步骤4、利用式(1)构建情绪标签的损失函数l来训练超网:
[0013][0014]
式(1)中,表示第i个脑电信号样本xi的第r类情绪标签的标签值,p
r,i
表示所述超网预测第i个脑电信号样本xi的第r类情绪标签的概率值;
[0015]
步骤5、将带有情绪标签的脑电信号样本x输入所述超网中,并采用反向传播法对所述超网的参数进行训练,同时计算所述损失函数l,直到所述损失函数l收敛为止,从而得到训练好的超网;
[0016]
步骤6、从所定义的搜索空间中通过随机采样得到若干个子模型,并由若干个子模型组成一个种群
[0017]
步骤7、计算种群中每个子模型的模型尺寸,并在验证集上得到子模型的准确率,从而利用式(2)得到单个子模型的多目标函数值:
[0018][0019]
式(2)中,α表示当前随机采样得到的子模型,val_acc
α
表示当前子模型α在验证集上的准确率,modelsize
α
表示当前子模型α的模型尺寸;λ1表示val_acc
α
函数的权重,λ2表示modelsize
α
函数的权重,score
α
表示当前子模型α的多目标函数值,
[0020]
步骤8、对当前种群中所有子模型多的目标函数值进行降序排序,并取排名前k个目标函数值所对应的子模型进行交叉操作和变异操作,从而得到2k个子模型并作为新的种群
[0021]
步骤9、将赋值给后,返回步骤7顺序执行,直至达到最大迭代次数为止,从而得到最终的种群,并选取最终的种群中多目标函数值最大的子模型作为最优子模型;
[0022]
步骤10、以所述最优子模型作为最终搜索的transformer架构,并继承训练好的超网的参数,从而得到情绪识别模型,用于实现对脑电情绪的识别。
[0023]
与已有技术相比,本发明的有益效果体现在:
[0024]
1、本发明首次通过设计一种自动化transformer结构搜索用于情绪的分类识别,相比于常规的手动设计transformer结构,根据脑电数据的特性,通过自适应算法来设计最优的网络结构,无需大量的计算资源和人为的干涉,并能在大量的子模型中找到最优的模型,使得最终的模型具有较好的分类表现性能。
[0025]
2、本发明通过transformer结构搜索得到最优的网络模型用于情绪识别,该方法是一种端到端的数据驱动方法,不需要手工设计复杂的情绪相关特征,同时可以从原始脑电信号中提取时间特征,实现了准确的情感分类任务。
附图说明
[0026]
图1为本发明方法流程示意图;
[0027]
图2为本发明中的transformer架构图;
[0028]
图3为本发中超网的结构图;
[0029]
图4为本发中多目标进化算法的流程图;
[0030]
图5为deap数据库中效价维度上32名受试者的平均识别精度及标准差图;
[0031]
图6为deap数据库中唤醒度维度上32名受试者的平均识别精度及标准差图。
具体实施方式
[0032]
本实施例中,一种基于transformer结构搜索的脑电信号情绪识别方法,主要是建立一个包含搜索空间内所有transformer架构的一个超网,该超网具有最大的架构参数,将超网训练至收敛后,在搜索空间上执行多目标进化算法来选择出最优子模型,最优子模型能够充分表征脑电数据中的时域特征,最终实现基于eeg信号的情绪分类。具体的说,如图1所示,该方法是按如下步骤进行:
[0033]
步骤1、获取任一受试者a的带有m种情绪标签的脑电信号数据并进行去基线和样本分割处理,从而得到受试者a的带有m种情绪标签的n个脑电信号样本,记为x={x1,x2,...,xi,...,xn},其中,表示带有m种情绪标签的第i个脑电信号样本,h表示脑电信号的通道数,g表示采样点数,i=1,2,...,n;n是样本数量,本实施例中,使用的是公开数据库deap中脑电数据做训练和测试,数据集包含了32名受试者,分别观看了40段一分钟的视频后采集的脑电信号,每位受试者一次trial采集的脑电信号其中前3s的数据是基线数据,标签是由受试者一次trial后的评分,包含了两种情绪类型arousal和valence,每类情绪标签分为两类;
[0034]
具体实施中,对每个受试者的40段脑电信号进行预处理,包括:
[0035]
假定一次trial的原始eeg信号为h是脑电信号的通道数,g是采样点数,其中基线信号是b=1,2,...,s.在deap数据集中,每位受试者的基线时长s=3。
[0036]
去基线:计算1s的平均基线数据如下:
[0037][0038]
式(1)中,表示第b个脑电信号样本对应的1s的平均基线数据,xb表示第b个脑电信号样本。
[0039]
为了减小静息状态脑电的干扰,使用平均基线数据对脑电信号做去基线预处理如下:
[0040][0041]
式(2)中,xj′
表示第j个脑电信号样本去除基线信号后的数据,xj表示第j个脑电信号样本。
[0042]
样本分割:为了扩大样本数量,将一位受试者60s的脑电信号用1s的滑动窗分割,相应的样本标签也随之增加,最终每位受试者的脑电样本。在测试集上进行十次实验后的平均识别率作为最终识别精度。
[0043]
步骤2、定义transformer结构搜索的搜索空间包含有不同架构参数的若干个transformer候选架构,架构参数包括:架构的嵌入维度e∈(e1,e2,...,en);架构的多头注意力层的头数量h∈(h1,h2,...,hm);架构的多层感知机mlp层的隐藏层维度与嵌入维度比例ratio∈(r1,r2,...,rv)以及transformer架构的网络层数l∈(l1,l2,...,lq);其中,en表示嵌入维度的第n个取值,hm表示头数量的第m个取值,rv表示mlp层隐藏层维度与嵌入维度比例的第v个取值,lq表示网络层数的第q个取值;n表示嵌入维度的取值个数,m表示头数量的取值个数,v表示隐藏层维度与嵌入维度比例的取值个数,q表示网络层数的取值个数,具体来说,对搜索空间内任一transformer架构,如图2所示,首先输入对上述去基线处理后的输入数据x={x1,x2,...,xi,...,xn},其中,表示32个通道和128的采样频率。然后将输入进行切片并展平为2d的序列数据其中,32表示的是切片序列长度。然后采用一个可训练投影将x
p
映射为一个d维向量,其中d∈(168,192,216,240)即为架构的嵌入维度embeddingdimension。此外,在序列数据的头部放置一个可学习的类嵌入x
class
,以表示整个输入序列的类别。再将标准的1d位置向量加入到各个切片中以表示其位置信息,因此最终的输入z0被表示为如式(3)所示:
[0044][0045]
式(3)中,在标注的自注意力层,经过嵌入表示的输入z∈rn×d首先通过一个线性投影被转换为三个矩阵因此多头注意力层的输出可表示为如下式(4)所示:
[0046]
msa(q,k,v)=concat(head1,...,headh)woꢀꢀ
(4)
[0047]
式(4)中,并且
其中多头注意力层的head数量h∈(2,4,6)。因此第l层的多头注意力层的输出z
l
'表示为式(5):
[0048]zl
'=msa(ln(z
l-1
))+z
l-1
,l=...,l,
ꢀꢀ
(5)
[0049]
第l层的mlp层的输出z
l
表示为式(6)所示:
[0050]zl
=mlp(ln(z
l
'))+z
l
',l=...,l,
ꢀꢀ
(6)
[0051]
式(6)中,l表示transformer结构的层数,ln表示层标准化操作,感知机mlp层的隐藏层维度与嵌入维度比例ratio∈(3,3.5,4),transformer架构的网络层数l∈(6,7,8,9,10)。
[0052]
步骤3、按照所定义的搜索空间,建立一个包含搜索空间内所有transformer候选架构的超网,超网的参数分别取架构参数的最大值,超网的架构如图3所示,其共包含了投影层,分类层,以及中间l个运算层,其中每个运算层包含了上述的多头注意力层和mlp层如图3右边所示,具体的运算过程如过程2所示;
[0053]
步骤4、利用式(6)构建情绪标签的损失函数l来训练超网:
[0054][0055]
式(6)中,表示第i个脑电信号样本xi的第r类情绪标签的标签值,p
r,i
表示超网预测第i个脑电信号样本xi的第r类情绪标签的概率值,softmax函数可以将样本的输出转变成概率密度函数,概率最大的结点对应的标签作为情绪识别的目标;
[0056]
步骤5、将带有情绪标签的脑电信号样本x输入超网中,并采用反向传播法对超网的参数进行训练,同时计算损失函数l,并采用adam优化器来进行求解,直到损失函数l收敛为止,从而得到训练好的超网;
[0057]
步骤6、从所定义的搜索空间中通过随机采样得到若干个子模型,并由若干个子模型组成一个种群这是一个种群初始化的操作,通过初始化赋予种群数量一个初始值;
[0058]
步骤7、计算种群中每个子模型的模型尺寸,并在验证集上得到子模型的准确率,从而利用式(2)得到单个子模型的多目标函数值:
[0059][0060]
式(2)中,α表示当前随机采样得到的子模型,val_acc
α
表示当前子模型α在验证集上的准确率,modelsize
α
表示当前子模型α的模型尺寸;λ1表示val_acc
α
函数的权重,λ2表示modelsize
α
函数的权重,score
α
表示当前子模型α的多目标函数值,具体来说,多目标进化算法旨在同时在精度和模型大小之间取得平衡,因此,本研究采用加权和的方法为每个目标函数分配不同的权重如公式(7)所示。
[0061]
步骤8、对当前种群中所有子模型多的目标函数值进行降序排序,并取排名前k个目标函数值所对应的子模型进行交叉操作和变异操作,从而得到2k个子模型并作为新的种群图4表示了多目标进化算法的流程图,多目标进化算法首先从定义好的搜索空间内通过随机采样得到初始种群,然后在初始种群的架构中计算式(7)的score值,并取score值最大的k个子模型分别进行交叉操作和变异操作生成2k个新子模型,作为本轮搜索的结果;
[0062]
步骤9、将赋值给后,返回步骤7顺序执行,直至达到最大迭代次数为止,从而得到最终的种群,并选取最终的种群中多目标函数值最大的子模型作为最优子模型,得到最优子模型之后,将不再重复上述工作,将最优子模型作为最终的搜索结果用于情绪识别;
[0063]
步骤10、以最优子模型作为最终搜索的transformer架构,并继承训练好的超网的参数,能够使得继承权重的子模型达到和训练收敛后的超网相近的识别效果,具体来说,这是一种权重共享的概念,权重共享的中心是让不同的块在同一层共享它们的公共部分的权重。假设从搜索空间中得到一个有l层的子网α,其网络架构α和每层的权重w可以用式(8)来表示:
[0064][0065]
式(8)中,αi和wi表示当前子模型α的第i层的结构和权重,该权重可以直接从训练收敛的超网中继承,继承权重的子网,从而得到情绪识别模型,用于实现对脑电情绪的识别。
[0066]
具体实施中,基于网络结构搜索得到的最优模型与支持向量机(svm)、决策树(dt),以及深度学习模型(dgcnn)进行对比,将测试集的平均识别精度作为评价指标,当识别精度越高,模型的识别能力越好。32名受试者十次平均识别精度如下表:
[0067]
表1.deap数据库上不同方法对两种情绪的平均识别结果
[0068] 效价(%)唤醒度(%)dt71.63
±
4.7173.70
±
5.09svm88.65
±
6.1889.07
±
5.89dgcnn92.55
±
3.9393.50
±
3.35ours98.68
±
0.9898.66
±
0.94
[0069]
32名受试者的十折交叉验证结果如图5和图6所示。结果分析:
[0070]
表1实验结果表明,与传统方法svm和dt相比,基于网络结构搜索得到的最优模型在两种情绪维度(效价和唤醒度)的识别精度都有提升。与深度学习模型dgcnn相比,本方法也提升了识别结果,验证了基于网络结构搜索得到的最优模型可以充分利用eeg信号的时域相关信息,对情绪的分类识别有着显著的效果。同时在所有对比方法中,基于网络结构搜索的方法具有最小的方差,证明了该方法具有较为稳定的识别能力。此外,从图5和图6中可以发现,该模型在对32名受试者的识别效果均为最优,说明该方法对不同受试者均有很好的识别能力和很强的泛化效果。
[0071]
综上所述,本发明充分利用eeg原始信号所含有的时域信息,使用网络结构搜索充分提取脑电信号相关特征,并以此建立最优的网络模型,提升了在公开数据集deap中两种情绪的识别精度。
[0072]
本发明提出基于网络结构搜索得到的最优模型,在公共数据集deap上达到很好的识别结果,且在所有受试者上的识别结果更加稳定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1