一种说话人自适应的多视角对话情感识别方法及系统

文档序号:170886 发布日期:2021-10-29 浏览:23次 >En<

阅读说明:本技术 一种说话人自适应的多视角对话情感识别方法及系统 (Speaker self-adaptive multi-view dialogue emotion recognition method and system ) 是由 阮玉平 李太豪 汪芬 郑书凯 于 2021-09-28 设计创作,主要内容包括:本发明公开了一种说话人自适应的多视角对话情感识别方法及系统,方法包括:S1,将多轮对话中,每条对话语句的说话人,映射到对应的说话人ID序列,去除说话人具体身份;S2,对说话人ID标记后的多轮对话,进行融合说话人信息的上下文编码,得到对话中每个语句的上下文编码表征;S3,基于上下文编码表征,进行说话人自适应的多视角全局对话信息融合编码,得到对话的多视角全局融合信息;S4,将多视角的全局融合信息,进行自适应的信息汇总,并对语句最终情感进行识别;系统包括:依次连接的多轮对话预处理模块、上下文编码模块、多视角全局融合编码模块和情感识别模块。(The invention discloses a speaker self-adaptive multi-view dialogue emotion recognition method and a speaker self-adaptive multi-view dialogue emotion recognition system, wherein the method comprises the following steps: s1, mapping the speaker of each dialogue statement in the multi-turn dialogue to the corresponding speaker ID sequence, and removing the specific identity of the speaker; s2, carrying out context coding of the integrated speaker information on the multiple rounds of dialogs marked by the speaker ID to obtain the context coding representation of each statement in the dialogs; s3, based on the context coding representation, carrying out speaker self-adaptive multi-view global dialog information fusion coding to obtain multi-view global fusion information of dialog; s4, self-adaptive information summarization is carried out on the multi-view global fusion information, and final emotion of the sentence is identified; the system comprises: the system comprises a multi-round conversation preprocessing module, a context coding module, a multi-view global fusion coding module and an emotion recognition module which are sequentially connected.)

一种说话人自适应的多视角对话情感识别方法及系统

技术领域

本发明涉及人工智能领域,尤其是涉及一种说话人自适应的多视角对话情感识别方法及系统。

背景技术

对话机器人作为人工智能领域的重要研究方向,赋予机器人拟人化的情感计算能力,近来引起了学术界和产业界的广泛关注。多说话人参与的多轮对话作为最普适的对话场景形式,其特点在于:1)参与对话的说话人数不定;2)说话人在对话中发言的次序不定;3)影响说话人的情感状态变迁的因素复杂,不仅存在自身因素、他者因素、还受到整体对话进程的影响。

现有主流方法大多假设对话为两人交替参与的形式,难以拓展到多说话人的场景;针对对话语句的上下文编码,现有方法大多未能有效融入说话人信息;针对说话人情感状态变迁因素复杂的问题,现有方法存在多说话人场景下适用拓展性差、模型结构复杂等问题。

因此,如何有效解决多轮对话场景中多说话人自适应,并从多视角(方面)对用户情感状态进行建模,进而提高说话人情感识别的精确度,是一项亟待解决的问题。

发明内容

为解决现有技术的不足,实现提高对话情感识别精度的目的,本发明采用如下的技术方案:

一种说话人自适应的多视角对话情感识别方法,包括如下步骤:

S1,将多轮对话中,每条对话语句的说话人,映射到对应的说话人ID序列,去除说话人具体身份的同时,保留一段对话中不同说话人之间的区分性;

S2,对进行说话人ID标记后的多轮对话,进行融合说话人信息的上下文编码,得到对话中每个语句的上下文编码表征;

S3,基于上下文编码表征,进行说话人自适应的多视角全局对话信息融合编码,得到对话的多视角全局融合信息,包括如下步骤:

S31,根据说话人ID序列,分别从说话人自身视角、他者视角、全局视角构建维度为掩码矩阵:

S32,将上下文编码表征,分别输入到不同的单层多头注意力网络:,三个网络分别接收 作为对应的注意力控制掩码,分别从不同视角输出对话的多视角全局融合表征向量:

S4,将多视角的全局融合信息,进行自适应的信息汇总,并对语句最终情感进行识别,包括如下步骤:

S41,将语句多视角全局融合表征向量,作为向量序列,输入单层多头注意力网络中,网络的编码输出经过池化层(Pooling) 后,输入到单层的全连接网络(FC),得到语句的m维特征向量,其中m表示情感类别数;

S42,将特征向量进行归一化处理,得到语句属于每一类情感的概率值,取类 别概率值最大的作为最终情感类别。

进一步地,所述S31中对于的元素,其满足如下条件:

对于的元素,其满足如下条件:

对于的元素,其满足如下条件:

其中i表示注意力机制中查询语句query的索引,j表示注意力机制中接收查找语句key的索引。

进一步地,所述S42中的特征向量,将其作为Softmax算子的自 变量,计算Softmax的最终值:

其中为常量,将作为语句属于每一类情感的概率值。

进一步地,所述S2包括如下步骤:

S21,将多轮对话中各语句以特定分隔符为间隔拼接起来,得到包含所有对话语句的字符长序列;

S22,根据字符长序列和说话人ID序列,构建对应的说话人ID字符序列;

S23,根据字符长序列,计算用于预训练模型BERT的注意力掩码矩阵 ,用于编码阶段,控制字符长序列中每个分隔符只关注到其后紧邻的语句中的字符;针对第 i个语句中的字符,该mask控制其不能关注未来语句中的任何字符;

S24,在获取说话人ID标记后的多轮对话的预训练模型BERT中的嵌入阶段,添加说 话人嵌入层,将说话人ID字符序列映射为说话人ID嵌入向量矩阵,与 预训练模型BERT中的对话向量矩阵、对话类型向量矩阵、对话位置向量矩 阵进行叠加,并输出至预训练模型BERT的编码阶段;

S25,取各分隔符在预训练模型BERT的编码阶段输出的编码向量,作为对应对话语句的上下文编码表征。

进一步地,所述S21中的分隔符为[SEP],字符长序列为:

其中表示对话中第i个语句的字符序列,n表示总对话轮次长度。

进一步地,所述S22中说话人ID字符序列为:

其中表示第i个语句对应的说话人匿名ID,表示第i个语句对应的 字符序列的长度。

进一步地,所述S25中的上下文编码表征,构成融入说话人信息的整体对话语句上下文编码表征矩阵:

其中表示语句的上下文编码表征。

进一步地,所述S1包括如下步骤:

S11,将一段长度为n的多轮对话中出现的所有说话人,按其首次发言的先后顺序,构建一个有序列表,所述有序列表包含说话人身份信息;

S12,根据有序列表,构建说话人到说话人ID的映射字典;

S13,根据映射字典,将多轮对话中每条语句的说话人身份,映射到对应的说话人ID,得到与对话语句序列对齐的长度为n的说话人ID序列。

一种说话人自适应的多视角对话情感识别系统,包括依次连接的多轮对话预处理模块、上下文编码模块和情感识别模块,所述上下文编码模块与情感识别模块之间,设有多视角全局融合编码模块;

所述多轮对话预处理模块,对多轮对话中各语句的说话人身份信息,进行统一的说话人ID映射,得到说话人ID序列,去除说话人具体身份的同时,保留该段对话中不同说话人之间的区分性;

所述上下文编码模块,对进行说话人ID标记后的多轮对话,进行融合说话人信息的上下文编码,得到对话中每个语句的上下文编码表征;

所述多视角全局融合编码模块,包括三个单层多头注意力网络,获取上下文编码表征,将三个掩码矩阵作为对应网络的注意力控制掩码,从而对说话人情感变迁因素进行多视角建模,得到说话人自身角度、他者角度、全局角度的对话的多视角全局融合信息,所述三个掩码矩阵,是根据说话人ID序列,从说话人自身视角、他者视角、全局视角构建的掩码矩阵;

所述情感识别模块,对多视角全局融合信息进行汇总,并预测对话语句的情感类别。

进一步地,所述上下文编码模块,包括嵌入层、注意力掩码模块和编码层,嵌入层 包括对话嵌入层、对话类型嵌入层、对话位置嵌入层和说话人嵌入层,用于获取说话人ID标 记后的多轮对话,将各子嵌入层分别对应得到的对话向量矩阵、对话类型向量矩阵、对话位 置向量矩阵和说话人ID嵌入向量矩阵进行叠加,并输出至编码层;注意力掩码模块根据字 符长序列,计算用于预训练模型BERT的注意力掩码矩阵,并输出至编码层, 所述字符长序列是将多轮对话中各语句以特定分隔符为间隔拼接起来得到的;编码器通过 注意力掩码矩阵,控制字符长序列中每个分隔符只关注到其后紧邻的语句中的字符,针对 第i个语句中的字符,该mask控制其不能关注未来语句中的任何字符,取各分隔 符在预训练模型BERT的编码器输出的编码向量,作为对应对话语句的上下文编码表征。

本发明的优势和有益效果在于:

本发明通过将实际多轮对话中的说话人身份映射到统一的说话人ID表,在去除说话人具体身份的同时,保留了一段对话中不同说话人之间的区分性,极大提高了模型在多说话人场景下的适应性、拓展性;通过在模型输入层引入说话人ID相关的embedding层,有效的在对话语句进行上下文编码的过程中,引入了说话人身份信息;通过引入多视角下的Multi-Head Attention网络,并结合不同的注意力控制mask,针对说话人情感变迁因素复杂这一问题,从说话者自身视角、他者视角、全局视角提出了有效的信息融合编码解决方案,该方案同时在多说人场景下具有极高的适应性。

附图说明

图1为本发明的系统结构示意图。

图2为原始BERT模型结构示意图。

图3为本发明的BERT模型结构示意图。

图4为本发明的方法流程图。

图5为本发明的网络结构示意图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

如图1所示,一种说话人自适应的多视角对话情感识别系统,包括:

多轮对话预处理模块,用于对多轮对话中各语句的说话人身份信息进行统一的说话人ID映射;

上下文编码模块,基于预训练模型BERT获取融入说话人ID信息的对话语句上下文编码表征。具体为:如图2、图3所示,在原始BERT模型中的Embedding Layer加入额外的针对说话人ID编码的Speaker Embedding层,以此在上下文编码过程中融入说话人ID信息。

多视角全局融合编码模块,分别从说话人自身视角、他者视角、全局视角对对话上下文编码表征进行融合编码。具体为,通过引入多个Multi-Head Attention网络,并结合不同的注意力控制mask,实现对说话人情感变迁因素的多视角建模。

情感识别模块,对多视角全局融合后的对话表征进行汇总综合,并预测对话语句的情感类别。

如图4、图5所示,一种说话人自适应的多视角对话情感识别方法,包括以下步骤:

S1:将多轮对话中的每条对话语句的说话人映射到对应的说话人ID,去除说话人具体身份的同时,保留一段对话中不同说话人之间的区分性。具体地,包括如下步骤:

S1.1:将一段长度为n的多轮对话中出现的所有说话人按其首次发言的先后顺序构建一个有序列表,如:

此列表包含该多轮对话中所有出现的说话人的身份信息(姓名),其中不同说话人在speakers列表中的次序表示该说话人首次发言的先后顺序。

S1.2:根据S1.1中得到的说话人有序列表,构建说话人到说话人ID的映射字典,如:

S1.3:根据S1.2中得到的映射字典,将该多轮对话中每条语句的说话人身份映射到对应的说话人ID,得到与对话语句序列对齐的长度为n的说话人ID序列。

S2:对进行说话人ID标记后的多轮对话进行融合说话人信息的上下文编码,得到对话中每个语句的上下文编码表征。具体的,包括如下步骤:

S2.1:将多轮对话中各语句以特定分隔符“[SEP]”为间隔拼接起来,得到包含所有对话语句的字符长序列:

其中表示对话中第i个语句的字符序列,n表示总对话轮次长度。例如,原始对 话为{“Evan”:我今天很开心,“Alice”:发生了什么事},则为“我今天很开心”,为 “发生了什么事”,为“我今天很开心发生了什么事”,其中“”整体当 作一个字符,字符序列长度为14。

S2.2:根据S2.1中得到的对话字符长序列,构建对应的说话人ID字符序列:

其中表示第i个语句对应的说话人匿名ID,表示第i个语句对应的字符 序列的长度。针对S2.1中的实际例子,为6,为6,

S2.3:根据S2.1中得到的对话字符长序列,计算适用于预训练模型BERT的 注意力mask(掩码)矩阵,掩码矩阵的获取过程通过逻辑控制(代码)实现,结 合BERT中的attention机制使用,该mask矩阵控制中每个分隔符“[SEP]”只关注到其 后紧邻的语句中的字符;针对第i个语句中的字符,该mask控制其不能关注未来语句中的任何字符。针对S2.1中的实际例子,中的第一个”字符对应的 mask向量应为中各字符的mask向量应为,第二个”字符对应的mask向量应为中字符的mask向量应为,其中“1” 表示可以关注,“0”表示不能关注,是维度的0-1矩阵。

S2.4:如图3所示,在预训练模型BERT中的Embedding Layer新定义一个speaker embedding层,该层将S2.2中得到的说话人ID字符序列映射为说话人ID embedding向量矩阵,其会与BERT模型中原始定义的token向量矩阵、 token类型向量矩阵、token位置向量矩阵进行叠加输入到后续编码层。

S2.5:取各分隔符“[SEP]”在BERT模型最后一层编码层输出的编码向量,作为对应对话语句的上下文编码表征,得到融入说话人信息的对话整体上下文编码表征矩阵:

其中表示语句的上下文编码表征,维度为768。

S3:基于得到的对话语句上下文编码表征,进行说话人自适应的多视角全局对话信息融合编码。具体的,包括如下步骤:

S3.1:根据S1.3中得到的说话人ID序列,分别从说话人自身视角、他者视角、全局 视角构建维度为0-1 mask矩阵:,其中对于的元素,其满足如下条件:

对于的元素,其满足如下条件:

对于的元素,其满足如下条件:

其中i表示attention中query语句的index,j表示attention中 key语句的index。 例如,对于长度为3且说话人序列为[“Evan”,“Alice”,“Evan”]的对话,,

S3.2:将S2.5中得到的对话上下文编码表征分别输入到3个不 同的单层Multi-Head Attention网络:,该网络Head数 目设为8,前向隐层维度设为2048;三个网络分别接收S3.1中得到的作为对应的Attention控制mask;最终3个网络分别从不同 视角输出对话的全局融合表征:,其中各表征向量维度为 768。

S4:将多视角的全局融合信息进行自适应的信息汇总,并对语句最终情感进行识别。具体的,包括如下步骤:

S4.1:将S3.2中得到的语句的3个不同视角的全局表征向量 作为向量序列输入到单层Multi-Head Attention网络中,该网络Head数 设为1,前向隐层维度设为2048;该网络的编码输出经过池化层后,输入到单层的全连接网 络,得到语句的m维特征向量,其中m表示情感类别数。

S4.2:将S4.1得到的特征向量作为Softmax算子的自变量,计 算Softmax的最终值,做为语句属于每一类情感的概率值,最后取类别概率值最大的作为 最终情感类别,其中Softmax的计算公式如下:

其中为常量。

综上所述,本实施提供的方法,通过在上下文编码中融入说话人信息,并对说话人情感变迁因素从多个视角进行全局信息融合编码,提升了模型在多说话人场景下的适应性及情感建模能力,能够提高最终对话情感识别的精度。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:负载梁侧轨冲击接触特征

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!