CN113722477B - 基于多任务学习的网民情绪识别方法、系统及电子设备 - Google Patents
基于多任务学习的网民情绪识别方法、系统及电子设备 Download PDFInfo
- Publication number
- CN113722477B CN113722477B CN202110906528.5A CN202110906528A CN113722477B CN 113722477 B CN113722477 B CN 113722477B CN 202110906528 A CN202110906528 A CN 202110906528A CN 113722477 B CN113722477 B CN 113722477B
- Authority
- CN
- China
- Prior art keywords
- text
- information
- training
- expression symbol
- loss function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了一种基于多任务学习的网民情绪识别方法、系统及电子设备,该方法包括:将每一个训练文本的文字信息、表情符号信息和原文信息进行向量化得到文字向量、表情符号向量和原文向量;将上述三个向量分别输入到共享模型中得到文字特征矩阵、表情符号特征矩阵和原文特征矩阵;将这三个矩阵分别通过softmax计算生成文字概率值、表情符号概率值以及原文概率值;根据这三个概率值和真实值之间的误差计算得到总损失函数,根据总损失函数更新模型参数,根据测试集进行验证得到最大acc和f1值对应的模型,并将该模型作为最优情绪识别模型;将待识别文本输入最优情绪识别模型得到情绪预测类别。通过三种不同学习任务得到最优情绪识别模型,提高识别准确度。
Description
技术领域
本发明涉及文本分析领域,具体涉及到一种基于多任务学习的网民情绪识别方法、系统、电子设备及存储介质。
背景技术
现有的网民情感识别,主要有以下几类:
(1)基于规则匹配
搜集每种情绪的情绪词,并构建情绪词典,通过匹配情绪词,并根据情感词在文章的位置不同给予不同的权重,并根据权重对全文进行情绪打分,最终通过情绪分数来判断情绪类别。
(2)基于语义的学习
基于机器学习、深度学习的方法,对上下文语义进行建模,通过对标注的数据集进行模型训练学习,利用训练好的模型来预测未知文本的可信度最大的情绪类别。
然而,互联网自媒体发文越来越口语化和表情化,越简单越明了,仅根据字面语义已经无法准确的识别网民内心情绪。
发明内容
有鉴于此,本发明实施例提供了一种基于多任务学习的网民情绪识别方法、系统、电子设备及存储介质,以解决现有技术中情绪识别不准确的缺点。
为此,本发明实施例提供了如下技术方案:
根据第一方面,本发明实施例提供了一种基于多任务学习的网民情绪识别方法,包括:
获取训练集,所述训练集中包括多个训练文本;
根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;
分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;
将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;
分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;
分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;
根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;
获取测试集,所述测试集中包括多个测试文本;
将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;
将最大acc和f1值对应的模型作为最优情绪识别模型;
获取待识别文本;
将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
可选地,分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量的步骤中,包括:
分别对每一个训练文本对应的文字信息进行词向量化得到文字信息中每一个单词对应的词向量,将词向量作为单词对应的文字向量;
分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量;
分别根据每一个训练文本对应的文字信息中每一个单词对应的词向量和表情符号信息中每一个表情符号对应的表情符号向量得到每一个训练文本对应的原文向量。
可选地,分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量的步骤中,包括:
根据每一个训练文本对应的表情符号信息得到每一个表情符号的iwf值;
对表情符号的iwf值进行排序,过滤掉iwf值小于预设分数阈值的表情符号,得到表情符号序列表;
根据预设均值、预设标准差和预设向量维度将表情符号生成embedding表;
将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
可选地,分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值的步骤中,包括:
分别根据每一个训练文本对应的文本概率值、表情符号概率值、原文概率值、文本真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值;
根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值;
根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数。
可选地,训练文本对应的总损失函数值的计算公式如下所示,
losssum=loss1+loss2+loss3
其中,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;losssum为训练文本对应的融合损失函数;loss为训练文本对应的总损失函数。
可选地,attention模型的计算公式如下所示,
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态,St为通过attention注意力机制后的隐状态,ws和wv为训练参数,bv为偏置参数。
可选地,所述共享模型包括两层的bi-lstm和attention模型。
根据第二方面,本发明实施例提供了一种基于多任务学习的网民情绪识别系统,包括:
第一获取模块,用于获取训练集,所述训练集中包括多个训练文本;
第一处理模块,用于根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;
第二处理模块,用于分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;
第三处理模块,用于将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;
第四处理模块,用于分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;
第五处理模块,用于分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;
第六处理模块,用于根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;
第二获取模块,用于获取测试集,所述测试集中包括多个测试文本;
第七处理模块,用于将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;
第八处理模块,用于将最大acc和f1值对应的模型作为最优情绪识别模型;
第三获取模块,用于获取待识别文本;
第九处理模块,用于将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
可选地,所述第二处理模块包括:第一处理单元,用于分别对每一个训练文本对应的文字信息进行词向量化得到文字信息中每一个单词对应的词向量,将词向量作为单词对应的文字向量;第二处理单元,用于分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量;第三处理单元,用于分别根据每一个训练文本对应的文字信息中每一个单词对应的词向量和表情符号信息中每一个表情符号对应的表情符号向量得到每一个训练文本对应的原文向量。
可选地,所述第二处理单元包括:第一处理子单元,用于根据每一个训练文本对应的表情符号信息得到每一个表情符号的iwf值;第二处理子单元,用于对表情符号的iwf值进行排序,过滤掉iwf值小于预设分数阈值的表情符号,得到表情符号序列表;第三处理子单元,用于根据预设均值、预设标准差和预设向量维度将表情符号生成embedding表;第四处理子单元,用于将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
可选地,所述第五处理模块包括:第四处理单元,用于分别根据每一个训练文本对应的文本概率值、表情符号概率值、原文概率值、文本真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值;第五处理单元,用于根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值;第六处理单元,用于根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数。
可选地,训练文本对应的总损失函数值的计算公式如下所示,
losssum=loss1+loss2+loss3
其中,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;losssum为训练文本对应的融合损失函数值;loss为训练文本对应的总损失函数。
可选地,attention模型的计算公式如下所示,
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态,St为通过attention注意力机制后的隐状态,ws和wv为训练参数,bv为偏置参数。
可选地,所述共享模型包括两层的bi-lstm和attention模型。
根据第三方面,本发明实施例提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的计算机程序,计算机程序被至少一个处理器执行,以使至少一个处理器执行上述第一方面任意一项描述的基于多任务学习的网民情绪识别方法。
根据第四方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令用于使计算机执行上述第一方面任意一项描述的基于多任务学习的网民情绪识别方法。
本发明实施例技术方案,具有如下优点:
本发明实施例提供了一种基于多任务学习的网民情绪识别方法、系统、电子设备及存储介质,其中,该方法包括:获取训练集,所述训练集中包括多个训练文本;根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;获取测试集,所述测试集中包括多个测试文本;将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;将最大acc和f1值对应的模型作为最优情绪识别模型;获取待识别文本;将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。上述步骤,根据训练集中的每一个训练文本得到训练文本对应的文字信息、表情符号信息以及原文信息,分别对训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到对应的文字向量、表情符号向量和原文向量;将上述三个向量分别输入到共享模型中进行特征学习,使模型参数能学习到三个任务的知识特征,通过共享模型后输出文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;再将这三个矩阵分别通过softmax计算生成每一个训练文本对应的文字概率值、表情符号概率值以及原文概率值;之后,根据这三个概率值和真实值之间的误差计算得到每一个训练文本对应的总损失函数,根据总损失函数进行误差反向传播更新模型参数,根据测试集进行验证得到最大acc和f1值对应的模型,并将最大acc和f1值对应的模型作为最优情绪识别模型。最后,将待识别文本输入至最优情绪识别模型进行情绪预测得到情绪预测类别。通过对文本的文字数据、表情符号、原文文本分别建模,构建三种不同的学习任务,把相关的任务放在一起学习,通过在浅层的参数共享表示,来互相分享、互相补充学习到的相关的信息,互相促进学习,提升泛化的效果;提高了情绪识别的准确度。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的基于多任务学习的网民情绪识别方法的一个具体示例的流程图;
图2为本发明实施例的基于多任务学习的网民情绪识别方法对应的训练模型的一个具体示例的示意图;
图3为本发明实施例的基于多任务学习的网民情绪识别方法对应的情绪识别模型的一个具体示例的示意图;
图4为本发明实施例的基于多任务学习的网民情绪识别系统的一个具体示例的框图;
图5为本发明实施例的电子设备的示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中提供了一种基于多任务学习的网民情绪识别方法,如图1所示,包括步骤S1-S12。
步骤S1:获取训练集,所述训练集中包括多个训练文本。
本实施例中,对互联上包含用户情绪的多个文本数据进行文本标注,标注每一条文本数据对应的情绪类别,得到多个标注后的文本,并将多个标注后的文本进行划分,分为训练文本和测试文本;也就是将多个标注后的文本其中的部分作为训练文本,其余作为测试文本。用训练集中的训练文本进行模型训练,模型训练好后用测试集中的测试文本进行模型误差计算,选择泛化能力强的模型,验证模型的情绪识别效果。
例如,标注文本共有10000条,训练集和测试集中的标注文本的比例可以是7:3,将其中的7000条标注文本作为训练集中的7000个训练文本,剩余的3000作为测试集中的3000个测试文本。本实施例中对此仅作示意性描述,不以此为限,在实际应用中根据实际需要合理设置训练集和测试集中的文本数量即可。具体的情绪类别可包括高兴、快乐、愤怒、悲伤、忧愁、惊讶、恐惧,本实施例中对此仅作示意性描述,不以此为限;当然,在其它实施例中,情绪类别还可以包括其它情绪,如厌恶、喜悦等等,根据需要合理设置即可。
步骤S2:根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息。
本实施例中,将每一个训练文本的原文进行文字和表情符号的拆分,得到每一个训练文本中的文字对应的文字信息,表情符号对应的表情符号信息。也就是,将训练文本的原文信息中所有文字部分作为文字信息,表情符号作为表情符号信息。
通常文字是以字符串的形式进行存储,则将训练文本的原文信息进行字符串提取,提取到原文信息中文字部分对应的字符串,这些字符串便是训练文本中文字对应的文字信息;原文信息中除去字符串部分即为表情符号,便得到了训练文本对应的表情符号信息。
步骤S3:分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字词向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量。
本实施例中,通过预训练词向量模型对文字信息进行词向量化得到文字信息对应的文字向量。具体地,预训练词向量模型可以是word2vector模型,该模型是通过对历史海量文本数据进行无监督的训练学习得到的。通过jieba分词器对历史海量文本数据进行分词,把词当作最小的语义单元,通过对海量文本数据的上下文理解来学习到每个词的语义特征,并保存模型。当然,在其它实施例中,预训练词向量模型还可以是现有技术中的其它词向量模型,根据需要合理确定即可。
本实施例中,先获取预设表情符号序列表,该预设表情符号序列表包括表情符号的编号和表情符号对应的iwf(Inverse Word Frequency)分数。然后,利用正太分布,给定预设的均值和标准差,以及向量的维度随机生成embedding表;通过表的index(序列号)与预设表情符号序列表进行映射,这样每个表情符号就可以映射一个embedding,即一个表情向量,这样表情符号就向量化了。
为了方便后续计算,将文字词向量和表情符号向量的维度设置为相同的维度,具体维度的数值根据需要合理设置即可。
本实施例中,将文字信息向量化后得到的文字向量和表情符号信息向量化后得到的表情符号向量按照在原文信息中的位置先后顺序进行排列,得到原文信息对应的原文向量。
步骤S4:将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型。
本实施例中,共享模型用了2层的bi-lstm加attention模型,单层的结构如图2所示,在此设置2层,是因为在本实施例中2层就能抽象出文本特征,在多层就过拟合了;当然,在其它实施例中,共享模型的层数还可以设置为其它值,如单层的bi-lstm加attention,或者3层的bi-lstm加attention等,根据需要合理设置即可。
本实施例中,将训练文本中的文字向量输入到共享模型中,得到文字特征矩阵;然后,将表情符号向量输入到共享模型中,得到表情符号特征矩阵;之后,将原文向量输入到共享模型中,得到原文特征矩阵。通过上述三个任务共享一个模型,来训练模型参数,使模型参数能学习到三个任务的知识特征。
本实施例中,Attention的计算公式如下所示:
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态矩阵,St为通过attention注意力机制后的隐状态矩阵,ws和wv为训练参数,bv为偏置参数。
步骤S5:分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值。
本实施例中,Softmax生成分类输出的概率分布公式如下所示:
其中,St为经过注意力机制输出的隐状态矩阵;n为情绪类别的分类数量。
此部分是直接利用attention加权之后的隐状态序列s的最后一个时间步t的特征矩阵来做分类输出的。
步骤S6:分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值。
本实施例中,根据每一个训练文本对应的文字概率值和文字真实值得到每一个训练文本对应的文字损失函数值;根据每一个训练文本对应的表情符号概率值和表情符号真实值得到每一个训练文本对应的表情符号损失函数值;根据每一个训练文本对应的原文概率值和原文真实值得到每一个训练文本对应的原文损失函数值。之后,将文字损失函数值、表情符号损失函数值和原文损失函数值相加得到训练文本对应的融合损失函数值。根据融合损失函数值对三个任务得到的文字损失函数值、表情符号损失函数值和原文损失函数值这三个损失函数值做了一个平滑处理,得到最终的总损失函数值。平滑处理使得某个任务的loss越大最终的loss对其关注就越大;反之,某个任务的loss越小最终的loss对其关注就越小。综合考虑三个任务的loss,对loss取均值,通过平滑处理防止误差过大或者过小。
步骤S7:根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型。
本实施例中,通过总损失函数值的计算对模型进行误差反向传播,模型参数的更新,保存每次更新的模型参数,得到多个情绪识别模型。
步骤S8:获取测试集,所述测试集中包括多个测试文本。
本实施例中,测试集中包括多个标注好的测试文本,用测试文本对情绪识别模型的识别准确度进行验证,以确定模型的识别效果。
步骤S9:将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值。
本实施例中,将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应每一个测试文本的情绪类别预测结果。分别将每一个情绪识别模型输出的预测结果与测试文本标注的情绪类别进行比较,统计得到每一个情绪识别模型对应的TP、TN、FP和FN文本数量。
将预测正确的测试文本数量除以测试文本总数量得到每一个情绪识别模型的精确率,也就是acc值。
多分类也可以看成2分类,就是某一类别的情绪,统计混淆矩阵的时候,可以构建是这一类和不是这一类的二分类,分别计算每个类别的f1值。
步骤S10:将最大acc和f1值对应的模型作为最优情绪识别模型。
本实施例中,对各个情绪识别模型对应的acc和f1值进行比较,找到最大acc和f1值对应的模型,并将该模型作为最优情绪识别模型,用于后续情绪预测。
步骤S11:获取待识别文本。
本实施例中,根据情绪预测需求确定待识别文本。
步骤S12:将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
本实施例中,将待识别文本输入至最优情绪识别模型中进行情绪预测,最优情绪识别模型输出待识别文本对应的情绪预测类别,情绪预测类别对应的情绪即为待识别文本对应的情绪。
上述步骤,根据训练集中的每一个训练文本得到训练文本对应的文字信息、表情符号信息以及原文信息,分别对训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到对应的文字向量、表情符号向量和原文向量;将上述三个向量分别输入到共享模型中进行特征学习,使模型参数能学习到三个任务的知识特征,通过共享模型后输出文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;再将这三个矩阵分别通过softmax计算生成每一个训练文本对应的文字概率值、表情符号概率值以及原文概率值;之后,根据这三个概率值和真实值之间的误差计算得到每一个训练文本对应的总损失函数,根据总损失函数进行误差反向传播更新模型参数,根据测试集进行验证得到最大acc和f1值对应的模型,并将最大acc和f1值对应的模型作为最优情绪识别模型。最后,将待识别文本输入至最优情绪识别模型进行情绪预测得到情绪预测类别。通过对文本的文字数据、表情符号、原文文本分别建模,构建三种不同的学习任务,把相关的任务放在一起学习,通过在浅层的参数共享表示,来互相分享、互相补充学习到的相关的信息,互相促进学习,提升泛化的效果;提高了情绪识别的准确度。
作为示例性的实施例,步骤S3分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文本向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量的步骤中,包括步骤S31-S33。
步骤S31:分别对每一个训练文本对应的文字信息进行词向量化得到文字信息中每一个单词对应的词向量,将词向量作为单词对应的文本向量。
本实施例中,对训练文本的文字信息进行结巴分词,得到文字信息中包含的每一个单词,然后将这些单词输入到word2vector模型,通过该模型进行词向量化得到每一个单词对应的词向量,这些单词对应的词向量便是文字信息对应的文字向量。
本实施例中,通过word2vector模型对海量数据进行预训练,获取富含丰富语义信息的词向量,并通过深度学习模型,对训练语料进行上下文特征抽取学习,理解上下文语义,捕获语义上的情绪。
步骤S32:分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量。
本实施例中,通过iwf(Inverse Word Frequency)算法,对海量文本数据进行表情符号训练学习,得到每个表情符号的iwf分数。对表情符号的iwf值由大到小进行排序,上述排序就构成了一个表情符号序列表。利用正太分布,给定预设的均值、标准差以及向量维度随机生成embedding表,表的大小跟表情符号序列表一样。通过embedding表的index(序列号)与表情符号序列表进行映射,这样每个表情符号就可以映射一个embedding,即一个表情向量,这样表情符号就向量化了。
步骤S33:分别根据每一个训练文本对应的文字信息中每一个单词对应的词向量和表情符号信息中每一个表情符号对应的表情符号向量得到每一个训练文本对应的原文向量。
本实施例中,将文字信息向量化后得到的文字向量和表情符号信息向量化后得到的表情符号向量按照在原文信息中的位置先后顺序进行排序,得到原文信息对应的原文向量。
上述步骤,通过预训练词向量模型得到文字信息中每一个单词对应的词向量;通过iwf(Inverse Word Frequency)算法进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量;之后,将词向量和表情符号向量按照原文本顺序排列后得到原文向量,以便后续根据三个向量分别进行模型训练,提高模型的识别准确度。
作为示例性的实施例,步骤S32分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量的步骤中,包括步骤S321-S324。
步骤S321:根据每一个训练文本对应的表情符号信息得到每一个表情符号的iwf(Inverse Word Frequency)值。
本实施例中,表情符号的iwf值的计算公式如下所示:
其中,iwfi指第i个表情符号的iwf值;指训练集中所有表情符号出现次数之和;nwi指第i个表情符号在训练集中出现的次数之和。/>
步骤S322:对表情符号的iwf值进行排序,过滤掉iwf值小于预设分数阈值的表情符号,得到表情符号序列表。
本实施例中,将所有表情符号的iwf值按照预设顺序进行排序,具体的预设顺序可以是升序,也可以是降序,本实施例中对此仅作示意性描述,不以此为限;根据预设分数阈值,过滤掉iwf值小于该阈值的表情符号,保留iwf值大于或者等于预设分数阈值的表情符号。根据上述排序就构成了一个表情符号序列表。表情符号序列表包括表情符号对应的序列号、表情符号对应的iwf值。序列号是表情符号的标识,每一个表情符号对应一个唯一的序列号,也就是序列号和表情符号是一一对应的关系。
iwf是用来计算表情符号在一个文本集合中的重要性权值,根据iwf排序把重要性低的表情符号去掉,也就是把iwf数值小于预设分数阈值的表情符号去掉,保留重要性高的表情符号;然后根据iwf对保留下来的表情符号进行排序,生成一个表情符号序列表。然后这个序列表进行随机生成embedding,根据index索引进行一一对应。这样就完成了表情符号的embedding向量化。
步骤S323:根据预设均值、预设标准差和预设向量维度将表情符号生成embedding表。
本实施例中,预设均值是和预设标准差是基于经验值确定的,具体数值根据需要合理设置即可。
预设向量维度与词向量维度相同;具体预设向量维度可以是256维,本实施例中对此仅作示意性描述,不以此为限。
embedding表是一堆文本集计算出的表情符号的iwf值,具体iwf计算可以根据上面描述的公式进行计算,根据计算得到的iwf值按照由大到小的顺序进行排序,把iwf值小于预设分数阈值的表情符号去掉,得到一个iwf排序的表情符号表,表情符号表中表情符号对应的序号就是index;后续步骤则通过这个index和随机生成的embeddin表进行映射。
步骤S324:将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
本实施例中,embedding表和表情符号序列表中均包含表情符号对应的序列号,故通过序列号将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
上述步骤,通过iwf(Inverse Word Frequency)算法,对海量文本数据集,进行表情符号训练学习,得到表情符号对应的iwf分数;将表情符号的iwf值由大到小进行排序,根据预设分数阈值过滤掉小于阈值的部分表情符号,根据上述排序就构成了一个表情符号序列表;利用正太分布,给定预设的均值和标准差以及预设向量维度随机生成embedding表,表的大小跟表情符号表一样,通过表的index(序列号)与表情表情符号序列表进行映射,这样每个表情符号就可以映射一个embedding即一个表情向量。通过上述步骤过滤掉干扰性比较大的表情符号,然后根据iwf值排序后的次序映射embedding表情表,来构建表情符号向量,使得表情符号向量更加准确。
作为示例性的实施例,步骤S6分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值的步骤中,包括步骤S61-S63。
步骤S61:分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值。
本实施例中,损失函数值的计算公式如下所示:
其中,c表示用于训练集中训练文本的个数;j为1、2和3,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;yij为真实值;pij为计算出的概率值。
步骤S62:根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值。
本实施例中,将一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值进行相加,将相加后的损失函数值作为该训练文本对应的融合损失函数值。
融合损失函数值的计算公式如下所示:
losssum=loss1+loss2+loss3
其中,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;losssum为训练文本对应的融合损失函数值。
步骤S63:根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数。
本实施例中,模型loss对三个任务的loss最大或最小做了一个平滑,使得某个任务的loss越大最终的loss对其关注就越大;反之,某个任务的loss越小最终的loss对其关注就越小。
总损失函数的计算公式如下所示:
其中,loss为训练文本对应的融合损失函数。
上述步骤,对三个任务的loss最大或最小做了一个平滑,如上述loss计算公式,某个任务的loss越大最终的loss对其关注就越大;反之,某个任务的loss越小最终的loss对其关注就越小,通过loss对模型进行误差反向传播来更新模型参数,提高模型的准确度。
本实施例中,模型训练部分设计是通过三个任务(即输入和lable不一样)共享一个模型,来训练模型参数,使模型参数能学习到三个任务的知识特征,模型的具体结构如图2所示。
其中,共享的模型部分用了2层的bi-lstm加attention模型,单层的结构如图2共享模型部分所示。本方法结合表情和文本语义的多任务学习方法以及表情向量化技术,来更好的识别网民情绪。
训练好的情绪识别模型的一个具体示例的示意图如图3所示,对未知情绪类别的自媒体数据进行情绪预测,具体模型架构如图3,输入为文本+标签数据,模型为训练好的bi-lstm+attention,最后通过softmax生成情绪类别概率分布,对自媒体数据进行情绪预测,概率最大的情绪类别即最有可能为文本的情绪。
在本实施例中还提供了一种基于多任务学习的网民情绪识别系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例还提供一种基于多任务学习的网民情绪识别系统,如图4所示,包括:
第一获取模块1,用于获取训练集,所述训练集中包括多个训练文本;
第一处理模块2,用于根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;
第二处理模块3,用于分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;
第三处理模块4,用于将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;
第四处理模块5,用于分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;
第五处理模块6,用于分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;
第六处理模块7,用于根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;
第二获取模块8,用于获取测试集,所述测试集中包括多个测试文本;
第七处理模块9,用于将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;
第八处理模块10,用于将最大acc和f1值对应的模型作为最优情绪识别模型;
第三获取模块11,用于获取待识别文本;
第九处理模块12,用于将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
作为示例性的实施例,所述第二处理模块包括:第一处理单元,用于分别对每一个训练文本对应的文字信息进行词向量化得到文字信息中每一个单词对应的词向量,将词向量作为单词对应的文字向量;第二处理单元,用于分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量;第三处理单元,用于分别根据每一个训练文本对应的文字信息中每一个单词对应的词向量和表情符号信息中每一个表情符号对应的表情符号向量得到每一个训练文本对应的原文向量。
作为示例性的实施例,所述第二处理单元包括:第一处理子单元,用于根据每一个训练文本对应的表情符号信息得到每一个表情符号的iwf值;第二处理子单元,用于对表情符号的iwf值进行排序,过滤掉iwf值小于预设分数阈值的表情符号,得到表情符号序列表;第三处理子单元,用于根据预设均值、预设标准差和预设向量维度将表情符号生成embedding表;第四处理子单元,用于将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
作为示例性的实施例,所述第五处理模块包括:第四处理单元,用于分别根据每一个训练文本对应的文本概率值、表情符号概率值、原文概率值、文本真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值;第五处理单元,用于根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值;第六处理单元,用于根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数。
作为示例性的实施例,训练文本对应的总损失函数值的计算公式如下所示,
losssum=loss1+loss2+loss3
其中,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;losssum为训练文本对应的融合损失函数;loss为训练文本对应的总损失函数。
作为示例性的实施例,attention模型的计算公式如下所示,
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态,St为通过attention注意力机制后的隐状态,ws和wv为训练参数,bv为偏置参数。
作为示例性的实施例,所述共享模型包括两层的bi-lstm和attention模型。
本实施例中的基于多任务学习的网民情绪识别系统是以功能单元的形式来呈现,这里的单元是指ASIC电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
上述各个模块的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本发明实施例还提供了一种电子设备,如图5所示,该电子设备包括一个或多个处理器71以及存储器72,图5中以一个处理器71为例。
该控制器还可以包括:输入装置73和输出装置74。
处理器71、存储器72、输入装置73和输出装置74可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器71可以为中央处理器(Central Processing Unit,CPU)。处理器71还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者是任何常规的处理器等。
存储器72作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的基于多任务学习的网民情绪识别方法对应的程序指令/模块。处理器71通过运行存储在存储器72中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的基于多任务学习的网民情绪识别方法。
存储器72可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据服务器操作的处理装置的使用所创建的数据等。此外,存储器72可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器72可选包括相对于处理器71远程设置的存储器,这些远程存储器可以通过网络连接至网络连接装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置73可接收输入的数字或字符信息,以及产生与服务器的处理装置的用户设置以及功能控制有关的键信号输入。输出装置74可包括显示屏等显示设备。
一个或者多个模块存储在存储器72中,当被一个或者多个处理器71执行时,执行如图1所示的方法。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指示相关的硬件来完成,被执行的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述基于多任务学习的网民情绪识别方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (7)
1.一种基于多任务学习的网民情绪识别方法,其特征在于,包括:
获取训练集,所述训练集中包括多个训练文本;
根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;
分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;
将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;
attention模型的计算公式如下所示,
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态,St为通过attention注意力机制后的隐状态,ws和wv为训练参数,bv为偏置参数;
分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;
分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;
分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值的步骤中,包括:分别根据每一个训练文本对应的文本概率值、表情符号概率值、原文概率值、文本真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值;根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值;根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数;
根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;
获取测试集,所述测试集中包括多个测试文本;
将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;
将最大acc和f1值对应的模型作为最优情绪识别模型;
获取待识别文本;
将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
2.根据权利要求1所述的基于多任务学习的网民情绪识别方法,其特征在于,分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量的步骤中,包括:
分别对每一个训练文本对应的文字信息进行词向量化得到文字信息中每一个单词对应的词向量,将词向量作为单词对应的文字向量;
分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量;
分别根据每一个训练文本对应的文字信息中每一个单词对应的词向量和表情符号信息中每一个表情符号对应的表情符号向量得到每一个训练文本对应的原文向量。
3.根据权利要求2所述的基于多任务学习的网民情绪识别方法,其特征在于,分别对每一个训练文本对应的表情符号信息进行表情符号向量化得到表情符号信息中每一个表情符号对应的表情符号向量的步骤中,包括:
根据每一个训练文本对应的表情符号信息得到每一个表情符号的iwf值;
对表情符号的iwf值进行排序,过滤掉iwf值小于预设分数阈值的表情符号,得到表情符号序列表;
根据预设均值、预设标准差和预设向量维度将表情符号生成embedding表;
将embedding表和表情符号序列表进行映射,得到每一个表情符号对应的表情符号向量。
4.根据权利要求1所述的基于多任务学习的网民情绪识别方法,其特征在于,
训练文本对应的总损失函数值的计算公式如下所示,
losssum=loss1+loss2+loss3
其中,loss1为训练文本对应的文字损失函数值;loss2为训练文本对应的表情符号损失函数值;loss3为训练文本对应的原文损失函数;losssum为训练文本对应的融合损失函数;loss为训练文本对应的总损失函数。
5.一种基于多任务学习的网民情绪识别系统,其特征在于,包括:
第一获取模块,用于获取训练集,所述训练集中包括多个训练文本;
第一处理模块,用于根据训练集得到每一个训练文本对应的文字信息、表情符号信息以及原文信息;
第二处理模块,用于分别对每一个训练文本对应的文字信息、表情符号信息以及原文信息进行向量化处理,得到文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量;
第三处理模块,用于将每一个训练文本的文字信息对应的文字向量、表情符号信息对应的表情符号向量以及原文信息对应的原文向量分别输入到共享模型中,得到每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵;所述共享模型包括bi-lstm和attention模型;
attention模型的计算公式如下所示,
ui=tanh(wu*hi+bu)
St=tanh(ws*St-1+wv*vt+bv)
其中,uw为初始化随机生成的注意力参数矩阵,后续用来学习的参数;tanh为双曲正切激活函数;hi为每个时刻隐状态矩阵,wu为学习参数;bu为偏置;St-1为t-1时刻输出的隐状态,St为通过attention注意力机制后的隐状态,ws和wv为训练参数,bv为偏置参数;
第四处理模块,用于分别将每一个训练文本的文字信息对应的文字特征矩阵、表情符号信息对应的表情符号特征矩阵以及原文信息对应的原文特征矩阵通过softmax计算生成每一个训练文本的文字信息对应的文字概率值、表情符号信息对应的表情符号概率值以及原文信息对应的原文概率值;
第五处理模块,用于分别根据每一个训练文本对应的文字概率值、表情符号概率值、原文概率值、文字真实值、表情符号真实值和原文真实值得到每一个训练文本对应的总损失函数值;
所述第五处理模块包括:第四处理单元,用于分别根据每一个训练文本对应的文本概率值、表情符号概率值、原文概率值、文本真实值、表情符号真实值和原文真实值得到每一个训练文本中文字信息对应的文字损失函数值、表情符号信息对应的表情符号损失函数值和原文信息对应的原文损失函数值;第五处理单元,用于根据每一个训练文本对应的文字损失函数值、表情符号损失函数值和原文损失函数值分别得到每一个训练文本对应的融合损失函数值;第六处理单元,用于根据融合损失函数对文字损失函数值、表情符号损失函数值和原文损失函数值进行平滑处理,得到每一个训练文本对应的总损失函数;
第六处理模块,用于根据每一个训练文本的总损失函数值进行误差反向传播更新模型参数得到多个情绪识别模型;
第二获取模块,用于获取测试集,所述测试集中包括多个测试文本;
第七处理模块,用于将多个测试文本分别输入到每一个情绪识别模型中,得到每一个情绪识别模型对应的acc和f1值;
第八处理模块,用于将最大acc和f1值对应的模型作为最优情绪识别模型;
第三获取模块,用于获取待识别文本;
第九处理模块,用于将待识别文本输入至最优情绪识别模型得到待识别文本对应的情绪预测类别,将所述情绪预测类别对应的情绪作为待识别文本对应的情绪。
6.一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-4任意一项所述的基于多任务学习的网民情绪识别方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-4任意一项所述的基于多任务学习的网民情绪识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110906528.5A CN113722477B (zh) | 2021-08-09 | 2021-08-09 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110906528.5A CN113722477B (zh) | 2021-08-09 | 2021-08-09 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113722477A CN113722477A (zh) | 2021-11-30 |
CN113722477B true CN113722477B (zh) | 2023-09-19 |
Family
ID=78675174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110906528.5A Active CN113722477B (zh) | 2021-08-09 | 2021-08-09 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113722477B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116108836B (zh) * | 2023-04-10 | 2023-07-11 | 之江实验室 | 文本情感识别方法、装置、计算机设备及可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733651A (zh) * | 2018-05-17 | 2018-11-02 | 新华网股份有限公司 | 表情符号预测方法及模型构建方法、装置、终端 |
CN110517121A (zh) * | 2019-09-23 | 2019-11-29 | 重庆邮电大学 | 基于评论文本情感分析的商品推荐方法及商品推荐装置 |
CN110597963A (zh) * | 2019-09-23 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 表情问答库的构建方法、表情搜索方法、装置及存储介质 |
GB202000377D0 (en) * | 2019-04-01 | 2020-02-26 | Samsung Electronics Co Ltd | Methods for generating modified images |
CN112613324A (zh) * | 2020-12-29 | 2021-04-06 | 北京中科闻歌科技股份有限公司 | 语义情绪识别方法、装置、设备及存储介质 |
CN112633364A (zh) * | 2020-12-21 | 2021-04-09 | 上海海事大学 | 一种基于Transformer-ESIM注意力机制的多模态情绪识别方法 |
CN112651448A (zh) * | 2020-12-29 | 2021-04-13 | 中山大学 | 一种面向社交平台表情包的多模态情感分析方法 |
-
2021
- 2021-08-09 CN CN202110906528.5A patent/CN113722477B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733651A (zh) * | 2018-05-17 | 2018-11-02 | 新华网股份有限公司 | 表情符号预测方法及模型构建方法、装置、终端 |
GB202000377D0 (en) * | 2019-04-01 | 2020-02-26 | Samsung Electronics Co Ltd | Methods for generating modified images |
CN110517121A (zh) * | 2019-09-23 | 2019-11-29 | 重庆邮电大学 | 基于评论文本情感分析的商品推荐方法及商品推荐装置 |
CN110597963A (zh) * | 2019-09-23 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 表情问答库的构建方法、表情搜索方法、装置及存储介质 |
CN112633364A (zh) * | 2020-12-21 | 2021-04-09 | 上海海事大学 | 一种基于Transformer-ESIM注意力机制的多模态情绪识别方法 |
CN112613324A (zh) * | 2020-12-29 | 2021-04-06 | 北京中科闻歌科技股份有限公司 | 语义情绪识别方法、装置、设备及存储介质 |
CN112651448A (zh) * | 2020-12-29 | 2021-04-13 | 中山大学 | 一种面向社交平台表情包的多模态情感分析方法 |
Non-Patent Citations (4)
Title |
---|
a text sentiment classification modeling method based on coordinated cnn-lstm-attention model;yangsen zhang等;chinese journal of electronics;第28卷(第1期);120-126 * |
基于双层注意力和Bi-LSTM的公共安全事件微博情感分析;曾子明;万品玉;;情报科学;第37卷(第06期);23-29 * |
基于注意力机制Bi-LSTM算法的双语文本情感分析;翟社平;杨媛媛;邱程;李婧;毋志云;;计算机应用与软件;第36卷(第12期);251-255 * |
融合情感符号的自注意力BLSTM情感分析;刘臣;方结;郝宇辰;;软件导刊;第19卷(第03期);39-43 * |
Also Published As
Publication number | Publication date |
---|---|
CN113722477A (zh) | 2021-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112270196B (zh) | 实体关系的识别方法、装置及电子设备 | |
WO2023024412A1 (zh) | 基于深度学习模型的视觉问答方法及装置、介质、设备 | |
CN107943784B (zh) | 基于生成对抗网络的关系抽取方法 | |
CN110609891A (zh) | 一种基于上下文感知图神经网络的视觉对话生成方法 | |
CN110555084B (zh) | 基于pcnn和多层注意力的远程监督关系分类方法 | |
CN108363790A (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
US11669740B2 (en) | Graph-based labeling rule augmentation for weakly supervised training of machine-learning-based named entity recognition | |
CN113392209B (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN113361258A (zh) | 基于图卷积网络和选择注意力的方面级情感分析方法及系统 | |
CN113742733B (zh) | 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置 | |
CN111027292B (zh) | 一种限定采样文本序列生成方法及其系统 | |
CN109933792A (zh) | 基于多层双向lstm和验证模型的观点型问题阅读理解方法 | |
CN110968725B (zh) | 图像内容描述信息生成方法、电子设备及存储介质 | |
CN113807103B (zh) | 基于人工智能的招聘方法、装置、设备及存储介质 | |
CN117151222B (zh) | 领域知识引导的突发事件案例实体属性及其关系抽取方法、电子设备和存储介质 | |
CN114647713A (zh) | 基于虚拟对抗的知识图谱问答方法、设备及存储介质 | |
CN116205482A (zh) | 重点人员风险等级评估方法及相关设备 | |
CN113849653A (zh) | 一种文本分类方法及装置 | |
CN116821373A (zh) | 基于图谱的prompt推荐方法、装置、设备及介质 | |
CN116881470A (zh) | 一种生成问答对的方法及装置 | |
CN113722477B (zh) | 基于多任务学习的网民情绪识别方法、系统及电子设备 | |
CN114722832A (zh) | 一种摘要提取方法、装置、设备以及存储介质 | |
CN111382243A (zh) | 文本的类别匹配方法、类别匹配装置及终端 | |
CN113705207A (zh) | 语法错误识别方法及装置 | |
CN112560440A (zh) | 一种基于深度学习的面向方面级情感分析的句法依赖方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |