首页> 中国专利> 一种融合Prompt和SRU的蒙古语情感分析方法与系统

一种融合Prompt和SRU的蒙古语情感分析方法与系统

摘要

一种融合Prompt和SRU的蒙古语情感分析方法,在BERT模型训练中引入Prompt,利用数据集训练;将蒙古语输入到训练好的BERT模型中对应的单词嵌入、分段嵌入和位置嵌入,生成处理后的向量T;将向量T输入到内置Attention的SRU中进行全局特征提取,同时输入到CNN中进行局部特征提取;将SRU和CNN提取到的特征通过神经网络进行特征融合;将融合后的特征进行最大池化操作;将最大池化操作得到的向量输入至朴素贝叶斯分类器进行情感判别。本发明还提供了相应的蒙古语情感分析系统,本发明利用Prompt训练BERT模型,使得预处理模型适配下游任务。

著录项

  • 公开/公告号CN115630156A

    专利类型发明专利

  • 公开/公告日2023-01-20

    原文格式PDF

  • 申请/专利权人 内蒙古工业大学;

    申请/专利号CN202211152077.1

  • 申请日2022-09-21

  • 分类号G06F16/35(2019.01);G06N3/047(2023.01);G06N3/0464(2023.01);G06N3/08(2023.01);

  • 代理机构西安智大知识产权代理事务所 61215;

  • 代理人段俊涛

  • 地址 010080 内蒙古自治区呼和浩特市土默特左旗内蒙古工业大学金川校区

  • 入库时间 2023-06-19 18:22:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-14

    实质审查的生效 IPC(主分类):G06F16/35 专利申请号:2022111520771 申请日:20220921

    实质审查的生效

  • 2023-01-20

    公开

    发明专利申请公布

说明书

技术领域

本发明属于人工智能技术领域,涉及情感分类,特别涉及一种融合Prompt和SRU的蒙古语情感分析方法。

背景技术

情感分析又称为意见挖掘,是指对带有感情色彩的文本进行感情色彩分析,挖掘出其中包含的情感倾向,对情感态度进行划分。

情感分析按照处理文本粒度的大小可大致分为三类:篇章级情感分析,句子级情感分析和方面级情感分析三个层次。篇章级和句子级情感分析分别将文章和句子作为一个数据样本进行分析,属于粗粒度的情感分析任务,而方面级情感分析则属于细粒度的任务,它能够分析句子中不同方面所表达的不同情感极性。所有粒度的情感分析任务都包含三类分类结果,即“积极”、“消极”或“中性”,通常使用数组[-1,0,1]分别对应。方面级情感分析的重点在于对方面信息的提取和学习,尤其是在处理包含多个方面的句子时,不同方面可能表达相反的情感极性,特定方面的情感修饰词可能对其他方面造成负面影响,从而导致算法判断错误,因此需要模型学习到与方面相关的局部上下文信息。

目前情感分析领域有几种主要的主流方法。首先是基于情感词典的情感分析,是指根据现有的已构的情感词典对待分析的文本进行情感词抽取,计算文本的情感倾向,分类结果十分依赖情感词典的完整性。随着技术的发展出现了基于机器学习的情感分析,它是指将情感词作为特征词将文本矩阵化,使用机器学习相关技术进行分类,但是某些领域文本没有标注或情感词典的不完善则需要消耗大量的成本,例如对于蒙古语而言,其情感词典尚不完善。目前主流的做法是基于深度学习的情感分析,深度学习具有深层次的非线性网络结构,能够学习数据低维到高维的特征,在自然语言处理领域体现在能够学习数据样本的内在联系以及依赖关系,形成抽象的、高层的表示形式,从而有效克服传统机器学习的约束。

主流的BERT模型等采用下游任务适应预训练模型的方式,不仅参数量相对较多,而且BERT严重依赖标注数据,近年来,预训练语言模型通过预测被MASK的词可以获得实体间高置信度的关系,但是预训练和微调之间存在gap使得不能充分利用预训练模型所有的优势。传统RNN存在训练速度慢、梯度爆炸等情况,在情感分析的应用领域中存在一些需要克服的缺点。

发明内容

为了克服上述现有技术的缺点,本发明的目的在于提供一种融合Prompt和SRU的蒙古语情感分析方法与系统,使用Prompt将预BERT训练模式转换为预训练模型适应下游任务,使得预训练语言模型能够发挥更大的效用,且SRU的速度相较于RNN有了明显的提升、在解决梯度爆炸方面也有了很好的改进效果。

为了实现上述目的,本发明采用的技术方案是:

一种融合Prompt和SRU的蒙古语情感分析方法,包括如下步骤:

步骤1,在BERT模型训练中引入Prompt,利用数据集训练;

步骤2,将蒙古语输入到训练好的BERT模型中对应的单词嵌入、分段嵌入和位置嵌入,生成处理后的向量T;

步骤3,将向量T输入到内置Attention的SRU中进行全局特征提取,同时输入到CNN中进行局部特征提取;

步骤4,将SRU和CNN提取到的特征通过神经网络进行特征融合;

步骤5,将融合后的特征进行最大池化操作;

步骤6,将最大池化操作得到的向量输入至朴素贝叶斯分类器进行情感判别。

本发明还提供了一种融合Prompt和SRU的蒙古语情感分析系统,包括:

数据预处理模块,采用Prompt-BERT模块进行数据预处理,用于将输入的蒙古语转换为可数据处理的向量T;所述Prompt-BERT模块是在BERT模型训练中引入Prompt;

特征提取模块,包括全局特征提取单元和局部特征提取单元,所述全局特征提取单元采用Attention的SRU,用于对所述向量T进行全局特征提取,所述局部特征提取单元采用CNN,用于对所述向量T进行局部特征提取;

特征融合模块,用于将所述特征提取模块提取的全局特征和局部特征进行特征融合,并进行最大池化操作;

情感分析模块,采用朴素贝叶斯分类器,输入最大池化操作得到的向量,实现蒙古语情感分类。

与现有技术相比,本发明的有益效果是:

利用Prompt训练BERT模型,使得预处理模型适配下游任务,预处理模型会发挥出更强的优势,插入Attention的SRU模型和CNN模型双重提取特征并进行融合,在特征提取的任务中更加全面,最后朴素贝叶斯模型具有稳定的分类效率并且对缺失数据不太敏感,选择此方式可以很好地判别蒙古语的情感。

附图说明

图1为本发明总体流程图。

图2为Prompt-BERT模型图。

图3为Prompt流程图。

图4为BERT模型图。

图5为Attention-SRU模型图。

图6为CNN模型图。

具体实施方式

下面结合附图和实施例详细说明本发明的实施方式。

如图1所示,本发明为一种融合Prompt和SRU的蒙古语情感分析方法,包括如下步骤:

步骤1,在BERT模型训练中引入Prompt,利用数据集训练。

如图2,本发明中,通过引入Prompt,将数据输入Prompt,Prompt对输入的数据添加MASK标签,之后输入至BERT模型,BERT模型通过对MASK标签预测进行训练。

通过将Prompt与BERT相结合,改变了BERT模型的训练方式。Prompt能够给BERT模型一个提示,帮助其更好地理解任务,Prompt将下游任务的输入改造成预训练任务中的形式,即MLM(Masked Language Model)的形式,不需要为下游任务新增分类器,因为任务形式与预训练模型本身相适应,只需要建立一个简单的映射。Prompt目的是为了更好挖掘与预训练语言模型的能力,通过在输入端添加文本的方式实现。

在一个实施例中,其具体步骤可参考图3,分为四步:

第一步,对Prompt模板进行构造,定义一个模板,包含两处待填入的slots:[z]和[y],slots:[z]和[y]指添加MASK标签操作。例如输入:

第二步,对于Prompt,需要知道预测词y和词典标签label之间的关系,但是不可能让y对应任意的词语,所以就需要设置一个对应的映射函数,将BERT模型输出的词与词典标签label映射。就如当前的例子,根据句意假定输出的label为两个,一个是有趣

第三步,通过BERT模型对待填入的空位slots:[y]进行预测,通过模型训练,得到结果(上述例子中,结果为有趣

第四步,将预测得到的[y]的结果Answer映射回Prompt原本的标签label,并观察是否结果与标签属性与之相对应,以比较预测是否准确。

通过这四步,能够改变BERT原有的下游任务适应模型的特点,生成新的BERT预训练模型。

另外,由于蒙古语存在语料库不足、且语料库噪声较大的缺点。而采用Prompt可以使用其他语言预训练模型,训练好的模型通过微调便可以直接应用于蒙古语的数据预处理。

步骤2,将蒙古语输入到训练好的BERT模型中对应的单词嵌入、分段嵌入和位置嵌入,生成处理后的向量T。

如图4,BERT模型的输入由三部分组成,一是单词的位置嵌入,用于表示单词在句子中的相对位置;二是分段嵌入,将句子分割为两段或多段分别表示;三是单词嵌入,即单词的词向量表示当输入蒙古语文本时。训练后的BERT预训练模型将文本加入对应的TokenEmbeddings、Segment Embeddings和Position Embeddings,输出处理后的向量T。

步骤3,将向量T输入到内置Attention的SRU中进行全局特征提取,同时输入到CNN中进行局部特征提取。

本步骤中,向量T分别进行SRU和CNN的特征提取,SRU对蒙古语文本进行全局特征提取,其中的Attention在SRU特征提取前计算相关内容的注意力分布,SRU对全局特征提取容易忽略其中某个局部的特征,所以采用并行加入CNN对文本进行局部特征提取。由于蒙古语语料库存在比较大的噪音,所以采用两种不同的神经网络对蒙古语进行特征提取可以有效避免因噪声导致的偏差。

内置Attention的SRU模型如图5所示,利用其进行全局特征提取的步骤如下:

向量T输入到内置Attention的SRU中,先通过Attention计算注意力分布,采用如下加性模型进行注意力打分:

s(T

其中,s(T

完成计算后,进入到SRU模型,SRU模型表达公式为:

f

r

其中,

CNN模型如图6所示,利用其进行局部特征提取的步骤如下:

首先通过映射函数f:T→V

然后,在卷积层对向量矩阵中的向量进行卷积运算。卷积层包含e个神经元,每个神经元对应的卷积核K∈V

Z

其中b

并在滑动窗口的作用下,得到第j个神经元产生的特征Z

E=[G

最后,E进入全连接层得到如下输出:

H=ReLU(CE+I)

其中C为向量权重矩阵,C∈V

至此CNN局部特征提取工作结束。

步骤4,将SRU和CNN提取到的特征通过神经网络进行特征融合。

本步骤采用神经网络的concat方法进行特征融合,公式如下:

通过Concat进行特征融合,输入为双通道,输入的特征分别是h

步骤5,将融合后的特征进行最大池化(MaxPooling)操作。

concat会将向量进行张量拼接,会扩充两个张量的维度。因此在特征融合之后,通过最大池化操作对不同位置的特征进行聚合统计,以防止出现过拟合现象,池化结果为:

Pool=Maxpooling(Z

步骤6,将最大池化操作得到的向量输入至朴素贝叶斯分类器进行情感判别。

朴素贝叶斯分类器是一种简单强大的算法,朴素贝叶斯分类法是基于独立性假设的前提,并且结合了贝叶斯定理的概率分类方法,通过学习和总结输入和输出变量之间的文本特征,从而对新数据输出变量值进行分类预测,首先将向量按照一定比例分为训练集和测试集,首先将向量全部作为训练集Q={Q

计算某个向量Q

输出类别:通过对测试集每个特征向量在文本的所属类别,最后按照最大后验概率进行分类:

按照上述步骤操作便可以得出蒙古语对应的类别,至此完成并得到最终对蒙古语判别的结果。

本发明还提供了相应的情感分析系统,包括:

数据预处理模块,采用加入Prompt-BERT模块进行数据预处理,用于将输入的蒙古语转换为可数据处理的向量,方便后续特征提取。具体地,首先将数据输入进Prompt,Prompt会构建一个模板,模板的作用就是将输入进Prompt以及后续输出的文本转换为带有MSAK的文本,令预训练模型进行训练并补全MASK。定义一个label词典,将构建好的带有MASK标签的语句输入到BERT中,使得BERT对MASK标签进行预测,预测MASK的内容,检查预测后的内容与label中哪一类标签相对应,然后将对应的标签映射回带MASK的语句,使得语句完整。Prompt将输入的内容按照BERT模型的输入格式进行添加MASK的操作,让BERT节省了一步操作,提高了预训练模型的效率。通过训练好的模型最终将输入的内容转化为后续所需要的向量格式。在实际应用中,可以首先采用汉语或是英语对Prompt-BERT模型进行预训练,克服蒙古语语料库不足可能导致的预训练模型训练不充分的问题。然后将训练好的模型微调用于蒙古语的预处理任务中。

特征提取模块,主要采用SRU和CNN实现对数据的特征提取,其中在SRU中加入Attention,Attention首先对向量进行初步的注意力计算,再输入至SRU。SRU中也包含相应的神经门控制信息流防止梯度爆炸,并且SRU门计算只依赖于当前输入的循环,使得模型只有逐点相乘的计算是依赖于之前时间步的,从而使得网络能够容易的并行化,SRU在全局特征提取时,存在一些对局部特征提取方面的不足,因此采用双通道,另取CNN对局部特征进行提取,最终将SRU和CNN提取到的特征进行特征融合,并进行最大池化操作令融合后的特征向量降维。

特征融合模块,用于将所述特征提取模块提取的全局特征和局部特征进行特征融合,并进行最大池化操作;

情感分析模块,用于实现蒙古语情感判别功能。具体为,将处理后的向量输入至朴素贝叶斯模型,朴素贝叶斯分类器最终对文本进行情感判别。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号