CN116340513A - 一种基于标签与文本交互的多标签情感分类方法和系统 - Google Patents
一种基于标签与文本交互的多标签情感分类方法和系统 Download PDFInfo
- Publication number
- CN116340513A CN116340513A CN202310207001.2A CN202310207001A CN116340513A CN 116340513 A CN116340513 A CN 116340513A CN 202310207001 A CN202310207001 A CN 202310207001A CN 116340513 A CN116340513 A CN 116340513A
- Authority
- CN
- China
- Prior art keywords
- text
- layer
- label
- emotion
- tag
- 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.)
- Pending
Links
- 230000008451 emotion Effects 0.000 title claims abstract description 170
- 230000003993 interaction Effects 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012545 processing Methods 0.000 claims abstract description 43
- 238000013145 classification model Methods 0.000 claims abstract description 28
- 238000004140 cleaning Methods 0.000 claims abstract description 13
- 238000010606 normalization Methods 0.000 claims abstract description 12
- 239000013598 vector Substances 0.000 claims description 112
- 238000013528 artificial neural network Methods 0.000 claims description 42
- 238000012549 training Methods 0.000 claims description 32
- 230000002452 interceptive effect Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000013136 deep learning model Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 208000025174 PANDAS Diseases 0.000 claims description 3
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 claims description 3
- 235000016496 Panda oleosa Nutrition 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 239000012633 leachable Substances 0.000 claims description 3
- 210000002569 neuron Anatomy 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 240000000220 Panda oleosa Species 0.000 claims 1
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 240000004718 Panda Species 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 241000590419 Polygonia interrogationis Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于标签与文本交互的多标签情感分类方法,包括:获取待分析的文本,对获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本,对带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板,将id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型中,以得到该文本对应的情感标签。本发明能够解决现有基于深度学习的情感分类方法由于忽略了情感分类这个特定领域太多的潜在信息,导致句子语义学习不够深入的技术问题;以及由于对情绪进行独立分类处理从而忽略了情绪的共存性和关联性,导致多标签情感分类任务精度不高的技术问题。
Description
技术领域
本发明属于自然语言处理技术领域,更具体地,涉及一种基于标签与文本交互的多标签情感分类方法和系统。
背景技术
情感分类(Emotion Classification)是指根据文本所表达的含义和情感信息将文本划分成褒扬的或贬义的两种或几种类型。当今时代是信息过载的时代,尤其是社交、购物和外卖等软件平台的兴起导致了海量的文本数据,这些文本蕴含了大量的信息,包含了各种各样的用户的情感集合,充分利用这些信息并进行情感分类无论是对于平台方还是用户都是非常有意义的。对于平台方,可以用其监控用户的反馈从而及时发现并解决用户的问题从而促进平台和用户的共同进步。对于用户,一方面可以让其尽量避免其他用户消极煽动的言论,另一方面也可以帮助用户在网络上合理约束自己。因此,一个准确的情感分类方法有着较大的现实意义。
由于传统的机器学习方法提取的特征过浅,目前主流的情感分类方法主要倾向于深度学习领域,第一种方法是基于transformer(使用自注意力机制的基于编码器和解码器架构的深度学习模型)的编码器架构,该方法主要就是利用transformer的编码器远优越于循环神经网络(Recurrent Neural Network,简称RNN)和长短期记忆(Long Short TermMemory,简称LSTM)网络的特征抽取能力来到达更好的效果,简单来说就是使用无监督数据预训练该模型,然后将其作为编码器抽取词特征随后接上分类器在情感分类任务上进行微调;第二种方法是基于图神经网络的方法EmoGraph,其通过图网络来捕捉不同情绪之间的依赖关系从而提高分类性能,其中用到的图表是通过利用不同情绪类别之间的共现统计数据构建的;第三种方法是基于片段预测的SpanEmo,其主要是把情感分类问题转化为片段预测问题并使用基于transformer的双向编码器表示(Bidirectional EncoderRepresentation from Transformers,简称BERT)的预训练模型来实现的。
然而,上述方法都存在一些不可忽略的缺陷:基于transformer的编码器架构的方法针对于情感分类这个特定领域忽略了太多的潜在信息,因此导致句子语义学习不够深入;此外,该方法对情绪进行独立分类处理,忽略了情绪的共存性和关联性,因此会导致多标签情感分类任务精度不高;EmoGraph方法主要是统计类别标签之间的共现数据,但是对于标签和单词之间的关联挖掘得不够深入,因此导致情感分类模型泛化性不强;SpanEmo方法而言,由于一句话中存在多个对标签有重要影响的对象,SpanEmo的主干是基于BERT模型的,把标签和句子一起编码,那么就无法自适应地提取不同标签的局部判别特征,因此导致无法深度的学习到各个标签与待分析文本中各个部分的注意权重。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于标签与文本交互的多标签情感分类方法。其目的在于,解决现有基于深度学习的情感分类方法由于忽略了情感分类这个特定领域太多的潜在信息,导致句子语义学习不够深入的技术问题;以及由于对情绪进行独立分类处理从而忽略了情绪的共存性和关联性,导致多标签情感分类任务精度不高的技术问题;以及由于对标签和单词之间的关联挖掘得不够深入,导致情感分类模型泛化性不强的技术问题;以及无法自适应地提取不同标签的局部判别特征,导致无法深度的学习到各个标签与待分析文本中各个部分的注意权重的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于标签与文本交互的多标签情感分类方法,包括以下步骤:
(1)获取待分析的文本;
(2)对步骤(1)获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本。
(3)对步骤(2)得到的带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板。
(4)将步骤(3)得到的id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型中,以得到该文本对应的情感标签。
优选地,步骤(2)是使用ekphrasis将文本中的一些特殊符号抽取为单词,将日期或者用户抽取为统一表示,将拉长的单词抽取为带注释的正常单词,从而得到带有注释标记的预处理文本。
步骤(3)具体为,首先构建句子对,即首先以<cls>为开头,然后将所有的情感标签集合拼接为一句以问号结尾的话,作为句子对的第一个句子,随后接上<sep>,其后把带有注释标记的预处理文本作为句子对的第二个句子,最后接上<sep>,如果句子对总长度大于128就截断至128,小于128就往后面补<pad>直到总长度为128;然后构建掩码模板,其长度为128,与构建完成的句子对的词一一对应,对应<pad>的位置为0,其余为1;最后编码句子对,使用XLNet词元分析器将拼接好的最终句子对编码为id列表。
优选地,多标签情感分类模型包含依次连接的基于XLNet架构的编码端、基于标签查询的交互注意力的解码端,以及线性分类层三个部分;
基于XLNet结构的编码端包含1个嵌入层和c个编码层,其中c的取值为大于1的自然数;
对于嵌入层而言,其输入长为L的id列表,输出为L*d的句子对向量和L*d的位置编码,L为id列表的长度,d为嵌入维度大小;
对于编码层而言,其具体结构为:
第一层是多头自注意力层,输入为嵌入层得到的L*d的句子对向量和L*d的位置编码,输出为L*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的L*d的特征向量,输出为L*d的特征向量。
对于基于XLNet结构的编码端而言,由于每个编码层的输入与输出维度相同,最终通过1个嵌入层和c个编码层输出最终的L*d的句子对特征向量。
基于标签查询的交互注意力的解码端包含1个数据处理层和u个解码层,其中u的取值为大于1的自然数;
对于数据处理层而言,其输入为经过基于XLNet结构的编码端输出的L*d的句子对特征向量,输出为N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,其中N为情感标签的个数,M为句子对总长度减去由情感标签集合组成的句子对中第一个句子长度后的剩余长度;
对于解码层而言,其具体结构为:
第一层是多头交互注意力层,其输入为数据处理层的输出N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,输出为N*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的N*d的特征向量,输出为N*d的特征向量。
对于基于标签查询的交互注意力的解码端而言,由于每个解码层的输入与输出维度相同,最终通过1个输入处理层和u个解码层输出最终的N*d的情感标签特征向量。
线性分类层具体结构为:
第一层是线性层,其输入为经过基于标签查询的交互注意力的解码端输出的N*d的情感标签特征向量,输出为N*1的文本对于各个情感标签的关联特征向量;
第二层是概率化层,其输入为上一层得到的N*1的文本对于各个情感标签的关联特征向量,输出长度为N的文本对于各个标签的关联概率,根据该概率即可得到文本对应的情感标签。
优选地,基于标签与文本交互的多标签情感分类模型是通过以下步骤训练得到的:
(4-1)获取英文训练集数据;
(4-2)对步骤(4-1)获取的英文训练集数据先后进行数据读取、清洗和数据格式规范化处理,以得到id列表和掩码模板;
(4-3)将步骤(4-2)得到的id列表和掩码模板输入XLNet模型中进行编码,并对编码结果进行切分,以得到多个标签特征向量和多个待分析文本特征向量;
(4-4)将步骤(4-3)得到的标签特征向量和待分析文本特征向量输入解码端中进行解码,以得到最终的情感标签表征;
(4-5)将步骤(4-4)得到的最终的情感标签表征输入线性层中,以得到最终的该文本对于各个标签的关联特征,使用该文本对于各个标签的关联特征与步骤(4-2-1)中该文本对应的实际情感标签计算基于标签与文本交互的多标签情感分类模型的损失函数的损失值,并使用该损失值迭代训练XLNet模型、解码端和线性层的各参数,以得到训练好的基于标签与文本交互的多标签情感分类模型。
优选地,步骤(4-2)具体包括以下子步骤:
(4-2-1)使用Pandas对步骤(4-1)获取的英文训练集数据进行数据读取,以将其每一行拆分为文本和该文本对应的实际情感标签,对文本进行数据清洗,以得到带有注释标记的预处理文本,并直接读取英文训练集数据第一行表头获取所有情感标签,以得到情感标签集合;
(4-2-2)根据步骤(4-2-1)得到的带有注释标记的预处理文本和情感标签集合构建句子对,根据句子对构建对应的掩码模板,并对该句子对进行编码,以得到id列表;
优选地,步骤(4-3)具体包括以下子步骤;
(4-3-1)对步骤(4-2)得到的id列表先后进行嵌入操作和位置编码处理,以得到句子对的特征向量和位置编码,其维度为L*d,其中d为嵌入维度大小,其一般取值为512、768或1024,优选为768,L表示id列表的长度;
(4-3-2)将步骤(4-3-1)得到的句子对特征向量和位置编码以及步骤(4-2)得到的掩码模板输入XLNet模型中,以得到句子对的最终特征向量,其维度为L*d;
(4-3-3)对步骤(4-3-2)得到的句子对的最终特征向量进行切分处理,以得到维度为N*d的标签特征向量和维度为M*d的待分析文本特征向量,其中N是步骤(4-2-1)得到的情感标签集合中的情感标签个数,M为句子对的总长度减去句子对中第一个句子的长度后的剩余长度。
优选地,步骤(4-4)具体包括以下子步骤:
(4-4-1)将步骤(4-3-3)得到的维度为N*d的标签特征向量加上维度为N*d的可学习标签嵌入,以得到查询Q,将步骤(4-3-3)得到的维度为M*d的待分析文本特征向量作为值V,将值V加上维度为M*d的位置编码,以得到键K;
具体而言,本步骤中,根据标签特征向量的维度N*d初始化一个同样维度的嵌入表,该嵌入表的权重即为N*d的可学习标签嵌入,其与标签特征向量一一对应,M*d的位置编码与待分析文本特征向量一一对应,具体如下式求得:
PE(pos,2a)=sin(pos/100002a/d)
PE(pos,2a+1)=cos(pos/100002a/d)
其中pos表示文本特征向量中词的位置,且pos∈[0,M-1],2a表示嵌入维度的偶数索引,2a+1表示嵌入维度的奇数索引,且a∈[0,d/2-1],PE表示位置编码结果,sin表示正弦运算,cos表示余弦运算。
(4-4-2)将步骤(4-4-1)得到的查询Q、键K、值V和步骤(4-3)得到的标签特征向量输入多头交互注意力层中,以得到多头交互注意力层最终的输出,其维度为N*d;
具体而言,本步骤的多头交互注意力层中每个头的注意力结果以及多头交互注意力层最终的输出是由下式求出:
MultiHead=Concat(head1,head2,……,headh)WO
x=LayerNorm(Q0+Dropout(MultiHead))
其中headi为多头交互注意力层中第i个头的注意力结果,维度为N*dw,Q0为维度为N*d的标签特征向量,QEMB为维度为N*d的可学习标签嵌入,K0和V均为维度为M*d的待分析文本特征向量,KPOS是维度为M*d的不可学习的位置编码,Wi Q、Wi K和Wi V为分别将Q、K和V投影到单头维度的可学习的投影矩阵,其维度均为d*dw,dw=d/h,h表示多头交互注意力层的总头数,WO表示线性层的权重矩阵,维度为d*d,x为多头交互注意力层最终的输出,维度为N*d,其中i∈[1,多头交互注意力层的总头数h],Concat表示将输入张量按照最后一个维度拼接起来的函数,MultiHead表示经过多头计算后的注意力结果,LayerNorm表示对每个样本的所有特征做归一化处理,Dropout表示在深度学习模型的前向传播时,让某个神经元的激活值以一定的概率g停止工作,用于避免模型过拟合。
(4-4-3)将步骤(4-4-2)中得到的多头交互注意力层最终的输出输入前馈神经网络中,以得到前馈神经网络层最终的输出,其维度为N*d,同时将解码端中解码层的总数u减去1,如果u的值为0,那么得到的输出为最终的情感标签表征,否则得到的输出作为下一个解码层的输入。
具体而言,本步骤中前馈神经网络层最终的输出是由下式得出:
FFN(x)=max(0,xW1+b1)W2+b2
z=LayerNorm(x+Dropout(FFN(x)))
其中W1为前馈神经网络中第一个线性层的投影权重,维度为d*4d,b1为W1对应的偏置,同理地,W2为前馈神经网络中第二个线性层的投影权重,维度为4d*d,b2为W2对应的偏置,FFN表示前馈神经网络的初步输出,维度为N*d,z为前馈神经网络层最终的输出,维度为N*d,max表示取最大值的操作。
优选地,步骤(4-5)具体包括以下子步骤:
(4-5-1)对步骤(4-4)得到的维度为N*d的最终的情感标签表征进行线性层投影和概率化处理,以得到该文本对于各个标签关联的概率,其为长为N的一维张量;
具体而言,本步骤中,线性层投影是把维度为N*d的最终的情感标签表征投影到N*1,以得到该文本对于各个标签的关联特征,那么对该文本对于各个标签的关联特征进行概率化处理采用了sigmoid函数的方法:
(4-5-2)根据步骤(4-5-1)得到的该文本对于各个标签关联的概率和步骤(4-2-1)中该文本对应的实际情感标签进行基于标签与文本交互的多标签情感分类模型的损失函数的损失值计算,并使用该损失值迭代训练模型,得到训练好的基于标签与文本交互的多标签情感分类模型。
具体而言,本步骤中模型的训练过程中损失函数L主要包含两个损失函数L1和L2,其中前者是用于最大化正确标签的概率,后者用于最大化正负标签之间的距离,具体定义如下:
L=(1-α)L1+αL2
其中N表示情感标签个数,yn代表第n个情感标签的实际值,pn即为文本对于第n个情感标签的关联概率,N+为情感标签实际值为1的个数,N-为情感标签实际值为0的个数,pj代表向量p的第j个元素值,同理pk代表向量p的第k个元素值,α为控制L1和L2对总损失L的贡献的权重,且α∈[0,1]。
按照本发明的另一方面,提供了一种基于标签与文本交互的多标签情感分类系统,包括:
第一模块,用于获取待分析的文本;
第二模块,用于对第一模块获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本。
第三模块,用于对第二模块得到的带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板。
第四模块,用于将第三模块得到的id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型中,以得到该文本对应的情感标签。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)本发明由于采用了步骤(2),其通过Twitter的预处理工具ekpharasis对数据进行预处理清晰,得到通用的领域信息,从而挖掘到更多文本的潜在信息,因此能够解决句子语义学习不够深入的技术问题;
(2)本发明由于采用了步骤(4-2-2)到步骤(4-3),其通过将所有情感标签集合构建成一句以问号结尾的话和待分析文本拼接成句子对输入XLNet预训练模型中,使得模型能够学习到所有的标签,因此能够解决由于忽略了情绪的共存性和关联性而导致多标签情感分类任务精度不高的技术问题;
(3)本发明由于采用了步骤(4-3-3)到步骤(4-4),其通过将XLNet预训练模型的输出编码特征切分为标签和待分析句子特征并引入解码端让它们互相学习,从而深度挖掘标签和单词之间的关联,因此能够解决情感分类模型泛化性不强的技术问题;
(4)本发明由于采用了步骤(4-4-1)到步骤(4-4-2),其通过在解码端给标签引入与其一一对应的可学习标签嵌入,将其作为交互注意力模块中查询的重要组成,让其从待分析句子的特征中探测和收集与该标签相关的特征,从而能够自适应的提取不同标签的局部判别特征,因此能够解决无法深度的学习到各个标签与待分析文本各个部分的注意权重的技术问题。
附图说明
图1是本发明基于标签与文本交互的多标签情感分类方法的流程示意图;
图2是本发明基于标签与文本交互的多标签情感分类模型的架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的基本思路在于,从四个方面提升情感分类的效果,首先利用Twitter的预处理工具ekphrasis对数据进行预处理清洗,得到通用的领域信息,从而挖掘到更多文本的潜在信息;其次,将所有类标签构建成一句以问号结尾的话和待分析句子拼成句子对输入XLNet预训练模型中,使得模型能够学习到所有的标签,从而意识到标签的共存性和关联性。然后,将XLNet预训练模型的输出编码特征切分为标签和待分析句子特征并引入解码端让它们互相学习,从而深度挖掘标签和单词之间的关联;最后,在解码端给标签引入与其一一对应的可学习标签嵌入,将其作为交互注意力模块中查询的重要组成,让其从待分析句子的特征中探测和收集与该标签相关的特征,从而能够自适应的提取不同标签的局部判别特征。
如图1所示,本发明提供了一种基于标签与文本交互的多标签情感分类方法,包括以下步骤:
(1)获取待分析的文本;
(2)对步骤(1)获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本;
具体而言,本步骤使用ekphrasis(DataStories团队开发的用于数据预处理的库)将文本中的一些特殊符号抽取为单词,将日期或者用户抽取为统一表示,将拉长的单词抽取为带注释的正常单词,例如‘:)’,‘:-)’变为<happy>,‘gooooood’变为good<elongated>,以及October 7th变为<date>,从而得到带有注释标记的预处理文本。
本步骤的优点在于,可以得到通用的领域信息,从而挖掘到更多文本的潜在信息。
(3)对步骤(2)得到的带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板;
具体而言,本步骤首先构建句子对:首先以<cls>为开头,然后将所有的情感标签集合(包含anger、anticipation、disgust、fear、joy、love、optimism、pessimism、sadness、surprise和trust)拼接为一句以问号结尾的话,作为句子对的第一个句子,随后接上<sep>,其后把带有注释标记的预处理文本作为句子对的第二个句子,最后接上<sep>,如果句子对总长度大于128就截断至128,小于128就往后面补<pad>直到总长度为128;然后构建掩码模板,其长度为128,与构建完成的句子对的词一一对应,对应<pad>的位置为0,其余为1;最后编码句子对,使用XLNet词元分析器(出自Hugging Face的transformers库)将拼接好的最终句子对编码为id列表,具体而言就是把句子对中每个词转为词表中对应的id。
(4)将步骤(3)得到的id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型(如图2所示)中,以得到该文本对应的情感标签。
如图2所示,本发明的多标签情感分类模型包含依次连接的基于XLNet架构的编码端、基于标签查询的交互注意力的解码端,以及线性分类层三个部分。
基于XLNet结构的编码端包含1个嵌入层和c个编码层,其中c的取值为大于1的自然数,优选为12;
对于嵌入层而言,其输入长为L的id列表,输出为L*d的句子对向量和L*d的位置编码,L为id列表的长度(其等于128),d为嵌入维度大小(其等于768);
对于编码层而言,其具体结构为:
第一层是多头自注意力层,输入为嵌入层得到的L*d的句子对向量和L*d的位置编码,输出为L*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的L*d的特征向量,输出为L*d的特征向量。
对于基于XLNet结构的编码端而言,由于每个编码层的输入与输出维度相同,最终通过1个嵌入层和c个编码层输出最终的L*d的句子对特征向量。
基于标签查询的交互注意力的解码端包含1个数据处理层和u个解码层,其中u的取值为大于1的自然数,优选为3;
对于数据处理层而言,其输入为经过基于XLNet结构的编码端输出的L*d的句子对特征向量,输出为N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,其中N为情感标签的个数(其等于11),M为句子对总长度减去由情感标签集合组成的句子对中第一个句子长度后的剩余长度;
对于解码层而言,其具体结构为:
第一层是多头交互注意力层,其输入为数据处理层的输出N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,输出为N*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的N*d的特征向量,输出为N*d的特征向量。
对于基于标签查询的交互注意力的解码端而言,由于每个解码层的输入与输出维度相同,最终通过1个输入处理层和u个解码层输出最终的N*d的情感标签特征向量。
线性分类层具体结构为:
第一层是线性层,其输入为经过基于标签查询的交互注意力的解码端输出的N*d的情感标签特征向量,输出为N*1的文本对于各个情感标签的关联特征向量;
第二层是概率化层,其输入为上一层得到的N*1的文本对于各个情感标签的关联特征向量,输出长度为N的文本对于各个标签的关联概率,根据该概率即可得到文本对应的情感标签。
具体而言,本步骤(4)中基于标签与文本交互的多标签情感分类模型是通过以下步骤训练得到的:
(4-1)获取英文训练集数据;
具体而言,本步骤中获取的英文训练集数据,是SemEval 2018Task 1E-c数据集。
(4-2)对步骤(4-1)获取的英文训练集数据先后进行数据读取、清洗和数据格式规范化处理,以得到id列表和掩码模板;
本步骤具体包括以下子步骤:
(4-2-1)使用Pandas(python的一个数据分析包)对步骤(4-1)获取的英文训练集数据进行数据读取,以将其每一行拆分为文本和该文本对应的实际情感标签,对文本进行数据清洗,以得到带有注释标记的预处理文本,并直接读取英文训练集数据第一行表头获取所有情感标签,以得到情感标签集合;
具体而言,英文训练集数据的每一行包括一条文本、以及该文本与11个情感标签之间的关系,为0表示无关,为1表示无关,其中11个情感标签为anger(愤怒)、anticipation(期待)、disgust(厌恶)、fear(恐惧)、joy(快乐)、love(爱)、optimism(乐观)、pessimism(悲观)、sadness(悲伤)、surprise(惊讶)和trust(信任)。
(4-2-2)根据步骤(4-2-1)得到的带有注释标记的预处理文本和情感标签集合构建句子对,根据句子对构建对应的掩码模板,并对该句子对进行编码,以得到id列表;
本步骤具体为,首先构建句子对,句子对具体构建过程:首先以<cls>为开头,然后将情感标签集合拼接为一句以问号结尾的话,作为句子对的第一个句子,随后后面接上<sep>,其后把带有注释标记的预处理文本作为句子对的第二个句子,最后接上<sep>,如果总长度大于128就截断至128,如果小于128就往后面补<pad>直到总长度为128;然后构建掩码模板,其长度为128,与构建完成的句子对的词一一对应,对应<pad>的位置为0,其余为1;最后使用XLNet词元分析器(出自Hugging Face的transformers库)将拼接好的最终句子对编码为id列表,具体而言就是把句子对中每个词转为词表中对应的id。
本步骤的优点在于,使得模型能够学习到所有的情感标签,从而意识到情感的共存性和关联性。
(4-3)将步骤(4-2)得到的id列表和掩码模板输入XLNet模型中进行编码,并对编码结果进行切分,以得到多个标签特征向量和多个待分析文本特征向量;
本步骤具体包括以下子步骤;
(4-3-1)对步骤(4-2)得到的id列表先后进行嵌入操作和位置编码处理,以得到句子对的特征向量和位置编码,其维度为L*d,其中d为嵌入维度大小,其一般取值为512、768或1024,优选为768,L表示id列表的长度;
(4-3-2)将步骤(4-3-1)得到的句子对特征向量和位置编码以及步骤(4-2)得到的掩码模板输入XLNet(它是基于Bert和Transformer-XL改进的自回归模型)模型中,以得到句子对的最终特征向量,其维度为L*d;
(4-3-3)对步骤(4-3-2)得到的句子对的最终特征向量进行切分处理,以得到维度为N*d的标签特征向量和维度为M*d的待分析文本特征向量,其中N是步骤(4-2-1)得到的情感标签集合中的情感标签个数(其等于11),M为句子对的总长度减去句子对中第一个句子的长度后的剩余长度;
具体而言,第一个句子包括<cls>、所有情感标签组成的以问号结尾的句子、以及分割符<sep>。
上述步骤(4-3-1)到步骤(4-3-3)的优点在于,将编码端输出包含的标签与文本特征信息进行解耦,使得能够进一步去深度挖掘标签与单词之间的关联。
(4-4)将步骤(4-3)得到的标签特征向量和待分析文本特征向量输入解码端中进行解码,以得到最终的情感标签表征;
本步骤的解码端包含u个解码层,其中u的初始取值为大于1的自然数,优选为3。前一个解码层的输出作为下一个解码层的输入,最后一个解码层的输出则是最终的情感标签表征,本步骤包括以下子步骤:
(4-4-1)将步骤(4-3-3)得到的维度为N*d的标签特征向量加上维度为N*d的可学习标签嵌入,以得到查询(Query)Q,将步骤(4-3-3)得到的维度为M*d的待分析文本特征向量作为值V,将值V加上维度为M*d的位置编码,以得到键K;
具体而言,本步骤中,根据标签特征向量的维度N*d初始化一个同样维度的嵌入表,该嵌入表的权重即为N*d的可学习标签嵌入,其与标签特征向量一一对应,M*d的位置编码与待分析文本特征向量一一对应,具体如下式求得:
PE(pos,2a)=sin(pos/100002a/d)
PE(pos,2a+1)=cos(pos/100002a/d)
其中pos表示文本特征向量中词的位置,且pos∈[0,M-1],2a表示嵌入维度的偶数索引,2a+1表示嵌入维度的奇数索引,且a∈[0,d/2-1],PE表示位置编码结果,sin表示正弦运算,cos表示余弦运算。
(4-4-2)将步骤(4-4-1)得到的查询Q、键K、值V和步骤(4-3)得到的标签特征向量输入多头交互注意力层中,以得到多头交互注意力层最终的输出,其维度为N*d;
具体而言,本步骤的多头交互注意力层中每个头的注意力结果以及多头交互注意力层最终的输出是由下式求出:
MultiHead=Concat(head1,head2,……,headh)WO
x=LayerNorm(Q0+Dropout(MultiHead))
其中headi为多头交互注意力层中第i个头的注意力结果,维度为N*dw,Q0为维度为N*d的标签特征向量,QEMB为维度为N*d的可学习标签嵌入,K0和V均为维度为M*d的待分析文本特征向量,KPOS是维度为M*d的不可学习的位置编码,Wi Q、Wi K和Wi V为分别将Q、K和V投影到单头维度的可学习的投影矩阵,其维度均为d*dw,dw=d/h,h表示多头交互注意力层的总头数,WO表示线性层的权重矩阵,维度为d*d,x为多头交互注意力层最终的输出,维度为N*d,其中i∈[1,多头交互注意力层的总头数h],Concat表示将输入张量按照最后一个维度拼接起来的函数,MultiHead表示经过多头计算后的注意力结果,LayerNorm表示对每个样本的所有特征做归一化处理,Dropout表示在深度学习模型的前向传播时,让某个神经元的激活值以一定的概率g(伯努利分布)停止工作,用于避免模型过拟合。
上述步骤(4-4-1)到步骤(4-4-2)的优点在于,给标签引入了与其一一对应的可学习嵌入,将该嵌入与标签特征相加作为查询,从待分析句子的特征中查询与该标签相关的特征,从而能够自适应的提取不同标签的局部判别特征。
(4-4-3)将步骤(4-4-2)中得到的多头交互注意力层最终的输出输入前馈神经网络中,以得到前馈神经网络层最终的输出,其维度为N*d,同时将解码端中解码层的总数u减去1,如果u的值为0,那么得到的输出为最终的情感标签表征,否则得到的输出作为下一个解码层的输入。
具体而言,本步骤中前馈神经网络层最终的输出是由下式得出:
FFN(x)=max(0,xW1+b1)W2+b2
z=LayerNorm(x+Dropout(FFN(x)))
其中W1为前馈神经网络中第一个线性层的投影权重,维度为d*4d,b1为W1对应的偏置,同理地,W2为前馈神经网络中第二个线性层的投影权重,维度为4d*d,b2为W2对应的偏置,FFN表示前馈神经网络的初步输出,维度为N*d,z为前馈神经网络层最终的输出,维度为N*d,max表示取最大值的操作。
(4-5)将步骤(4-4)得到的最终的情感标签表征输入线性层中,以得到最终的该文本对于各个标签的关联特征,使用该文本对于各个标签的关联特征与步骤(4-2-1)中该文本对应的实际情感标签计算基于标签与文本交互的多标签情感分类模型的损失函数的损失值,并使用该损失值迭代训练XLNet模型、解码端和线性层的各参数,以得到训练好的基于标签与文本交互的多标签情感分类模型。
本步骤具体包括以下子步骤:
(4-5-1)对步骤(4-4)得到的维度为N*d的最终的情感标签表征进行线性层投影和概率化处理,以得到该文本对于各个标签关联的概率,其为长为N的一维张量;
具体而言,本步骤中,线性层投影是把维度为N*d的最终的情感标签表征投影到N*1,以得到该文本对于各个标签的关联特征,那么对该文本对于各个标签的关联特征进行概率化处理采用了sigmoid函数的方法:
(4-5-2)根据步骤(4-5-1)得到的该文本对于各个标签关联的概率和步骤(4-2-1)中该文本对应的实际情感标签进行基于标签与文本交互的多标签情感分类模型的损失函数的损失值计算,并使用该损失值迭代训练模型,得到训练好的基于标签与文本交互的多标签情感分类模型。
具体而言,本步骤中模型的训练过程中损失函数L主要包含两个损失函数L1和L2,其中前者是用于最大化正确标签的概率,后者用于最大化正负标签之间的距离,具体定义如下:
L=(1-α)L1+αL2
其中N表示情感标签个数,yn代表第n个情感标签的实际值(为0或者1),pn即为文本对于第n个情感标签的关联概率,N+为情感标签实际值为1的个数(如果N+=0,则L2=0),N-为情感标签实际值为0的个数(不存在包含所有情感标签的样本,所以N-不可能为0),pj代表向量p的第j个元素值,同理pk代表向量p的第k个元素值,α为控制L1和L2对总损失L的贡献的权重,且α∈[0,1]。
本步骤的优点在于,使用两个损失函数的加权和,一方面最大化正确标签的概率,另一方面最大化正负标签之间的距离,从而更进一步的提高分类准确性。
测试结果
本发明的测试环境:在Centos 7.9操作系统下,CPU为Intel(R)Xeon(R)E5-2678V3,GPU为1块NVIDIA Tesla M40 24GB,采用Pytorch编程实现本发明的算法,主要超参数具体设置如表1。
为了说明本发明方法的有效性以及对于分类效果的提升,在数据集SemEval2018Task 1E-c的英文测试集上测试,该数据集的测试集统计信息如表2,将本发明得到的测试结果与当前先进的方法进行对比,评估结果如表3。
根据表3记载的在数据集SemEval 2018Task 1E-c的英文测试集上的测试结果,可以看到本发明中提出的基于标签与文本交互的多标签情感分类方法,在Macro-F1、Micro-F1和Jaccard_Score这三项多标签分类指标上都优于现有的方法。
表1超参数设置
表2数据集统计信息(仅测试集)
表3测试结果对比
本发明提出的基于标签与文本交互的多标签情感分类方法,首先利用Twitter的预处理工具ekphrasis对数据进行预处理清洗,得到通用的领域信息,从而挖掘到更多文本的潜在信息;其次,将所有类标签构建成一句话和待分析句子拼成句子对输入XLNet预训练模型中,使得模型能够学习到所有的标签,从而考虑到情绪的共存性与关联性。然后,将XLNet预训练模型的输出编码特征切分为标签和待分析句子特征并引入解码端让它们互相学习,从而深度挖掘标签和单词之间的关联;最后,在解码端给标签引入与其一一对应的可学习标签嵌入,将其作为交互注意力模块中查询的重要组成,让其从待分析句子的特征中探测和收集与该标签相关的特征,从而能够自适应的提取不同标签的局部判别特征。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于标签与文本交互的多标签情感分类方法,其特征在于,包括以下步骤:
(1)获取待分析的文本;
(2)对步骤(1)获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本。
(3)对步骤(2)得到的带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板。
(4)将步骤(3)得到的id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型中,以得到该文本对应的情感标签。
2.根据权利要求1所述的基于标签与文本交互的多标签情感分类方法,其特征在于,
步骤(2)是使用ekphrasis将文本中的一些特殊符号抽取为单词,将日期或者用户抽取为统一表示,将拉长的单词抽取为带注释的正常单词,从而得到带有注释标记的预处理文本。
步骤(3)具体为,首先构建句子对,即首先以<cls>为开头,然后将所有的情感标签集合拼接为一句以问号结尾的话,作为句子对的第一个句子,随后接上<sep>,其后把带有注释标记的预处理文本作为句子对的第二个句子,最后接上<sep>,如果句子对总长度大于128就截断至128,小于128就往后面补<pad>直到总长度为128;然后构建掩码模板,其长度为128,与构建完成的句子对的词一一对应,对应<pad>的位置为0,其余为1;最后编码句子对,使用XLNet词元分析器将拼接好的最终句子对编码为id列表。
3.根据权利要求1或2所述的基于标签与文本交互的多标签情感分类方法,其特征在于,
多标签情感分类模型包含依次连接的基于XLNet架构的编码端、基于标签查询的交互注意力的解码端,以及线性分类层三个部分;
基于XLNet结构的编码端包含1个嵌入层和c个编码层,其中c的取值为大于1的自然数;
对于嵌入层而言,其输入长为L的id列表,输出为L*d的句子对向量和L*d的位置编码,L为id列表的长度,d为嵌入维度大小;
对于编码层而言,其具体结构为:
第一层是多头自注意力层,输入为嵌入层得到的L*d的句子对向量和L*d的位置编码,输出为L*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的L*d的特征向量,输出为L*d的特征向量。
对于基于XLNet结构的编码端而言,由于每个编码层的输入与输出维度相同,最终通过1个嵌入层和c个编码层输出最终的L*d的句子对特征向量。
基于标签查询的交互注意力的解码端包含1个数据处理层和u个解码层,其中u的取值为大于1的自然数;
对于数据处理层而言,其输入为经过基于XLNet结构的编码端输出的L*d的句子对特征向量,输出为N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,其中N为情感标签的个数,M为句子对总长度减去由情感标签集合组成的句子对中第一个句子长度后的剩余长度;
对于解码层而言,其具体结构为:
第一层是多头交互注意力层,其输入为数据处理层的输出N*d的标签特征向量、N*d的标签嵌入、M*d的文本特征向量和M*d的位置编码,输出为N*d的特征向量;
第二层是前馈神经网络层,其输入为上一层得到的N*d的特征向量,输出为N*d的特征向量。
对于基于标签查询的交互注意力的解码端而言,由于每个解码层的输入与输出维度相同,最终通过1个输入处理层和u个解码层输出最终的N*d的情感标签特征向量。
线性分类层具体结构为:
第一层是线性层,其输入为经过基于标签查询的交互注意力的解码端输出的N*d的情感标签特征向量,输出为N*1的文本对于各个情感标签的关联特征向量;
第二层是概率化层,其输入为上一层得到的N*1的文本对于各个情感标签的关联特征向量,输出长度为N的文本对于各个标签的关联概率,根据该概率即可得到文本对应的情感标签。
4.根据权利要求1至3中任意一项所述的基于标签与文本交互的多标签情感分类方法,其特征在于,基于标签与文本交互的多标签情感分类模型是通过以下步骤训练得到的:
(4-1)获取英文训练集数据;
(4-2)对步骤(4-1)获取的英文训练集数据先后进行数据读取、清洗和数据格式规范化处理,以得到id列表和掩码模板;
(4-3)将步骤(4-2)得到的id列表和掩码模板输入XLNet模型中进行编码,并对编码结果进行切分,以得到多个标签特征向量和多个待分析文本特征向量;
(4-4)将步骤(4-3)得到的标签特征向量和待分析文本特征向量输入解码端中进行解码,以得到最终的情感标签表征;
(4-5)将步骤(4-4)得到的最终的情感标签表征输入线性层中,以得到最终的该文本对于各个标签的关联特征,使用该文本对于各个标签的关联特征与步骤(4-2-1)中该文本对应的实际情感标签计算基于标签与文本交互的多标签情感分类模型的损失函数的损失值,并使用该损失值迭代训练XLNet模型、解码端和线性层的各参数,以得到训练好的基于标签与文本交互的多标签情感分类模型。
5.根据权利要求4所述的基于标签与文本交互的多标签情感分类方法,其特征在于,步骤(4-2)具体包括以下子步骤:
(4-2-1)使用Pandas对步骤(4-1)获取的英文训练集数据进行数据读取,以将其每一行拆分为文本和该文本对应的实际情感标签,对文本进行数据清洗,以得到带有注释标记的预处理文本,并直接读取英文训练集数据第一行表头获取所有情感标签,以得到情感标签集合;
(4-2-2)根据步骤(4-2-1)得到的带有注释标记的预处理文本和情感标签集合构建句子对,根据句子对构建对应的掩码模板,并对该句子对进行编码,以得到id列表。
6.根据权利要求5所述的基于标签与文本交互的多标签情感分类方法,其特征在于,步骤(4-3)具体包括以下子步骤;
(4-3-1)对步骤(4-2)得到的id列表先后进行嵌入操作和位置编码处理,以得到句子对的特征向量和位置编码,其维度为L*d,其中d为嵌入维度大小,L表示id列表的长度;
(4-3-2)将步骤(4-3-1)得到的句子对特征向量和位置编码以及步骤(4-2)得到的掩码模板输入XLNet模型中,以得到句子对的最终特征向量,其维度为L*d;
(4-3-3)对步骤(4-3-2)得到的句子对的最终特征向量进行切分处理,以得到维度为N*d的标签特征向量和维度为M*d的待分析文本特征向量,其中N是步骤(4-2-1)得到的情感标签集合中的情感标签个数,M为句子对的总长度减去句子对中第一个句子的长度后的剩余长度。
7.根据权利要求6所述的基于标签与文本交互的多标签情感分类方法,其特征在于,步骤(4-4)具体包括以下子步骤:
(4-4-1)将步骤(4-3-3)得到的维度为N*d的标签特征向量加上维度为N*d的可学习标签嵌入,以得到查询Q,将步骤(4-3-3)得到的维度为M*d的待分析文本特征向量作为值V,将值V加上维度为M*d的位置编码,以得到键K;
具体而言,本步骤中,根据标签特征向量的维度N*d初始化一个同样维度的嵌入表,该嵌入表的权重即为N*d的可学习标签嵌入,其与标签特征向量一一对应,M*d的位置编码与待分析文本特征向量一一对应,具体如下式求得:
PE(pos,2a)=sin(pos/100002a/d)
PE(pos,2a+1)=cos(pos/100002a/d)
其中pos表示文本特征向量中词的位置,且pos∈[0,M-1],2a表示嵌入维度的偶数索引,2a+1表示嵌入维度的奇数索引,且a∈[0,d/2-1],PE表示位置编码结果,sin表示正弦运算,cos表示余弦运算。
(4-4-2)将步骤(4-4-1)得到的查询Q、键K、值V和步骤(4-3)得到的标签特征向量输入多头交互注意力层中,以得到多头交互注意力层最终的输出,其维度为N*d;
具体而言,本步骤的多头交互注意力层中每个头的注意力结果以及多头交互注意力层最终的输出是由下式求出:
MultiHead=Concat(head1,head2,……,headh)WO
x=LayerNorm(Q0+Dropout(MultiHead))
其中headi为多头交互注意力层中第i个头的注意力结果,维度为N*dw,Q0为维度为N*d的标签特征向量,QEMB为维度为N*d的可学习标签嵌入,K0和V均为维度为M*d的待分析文本特征向量,KPOS是维度为M*d的不可学习的位置编码,Wi Q、Wi K和Wi V为分别将Q、K和V投影到单头维度的可学习的投影矩阵,其维度均为d*dw,dw=d/h,h表示多头交互注意力层的总头数,WO表示线性层的权重矩阵,维度为d*d,x为多头交互注意力层最终的输出,维度为N*d,其中i∈[1,多头交互注意力层的总头数h],Concat表示将输入张量按照最后一个维度拼接起来的函数,MultiHead表示经过多头计算后的注意力结果,LayerNorm表示对每个样本的所有特征做归一化处理,Dropout表示在深度学习模型的前向传播时,让某个神经元的激活值以一定的概率g停止工作,用于避免模型过拟合。
(4-4-3)将步骤(4-4-2)中得到的多头交互注意力层最终的输出输入前馈神经网络中,以得到前馈神经网络层最终的输出,其维度为N*d,同时将解码端中解码层的总数u减去1,如果u的值为0,那么得到的输出为最终的情感标签表征,否则得到的输出作为下一个解码层的输入。
具体而言,本步骤中前馈神经网络层最终的输出是由下式得出:
FFN(x)=max(0,xW1+b1)W2+b2
z=LayerNorm(x+Dropout(FFN(x)))
其中W1为前馈神经网络中第一个线性层的投影权重,维度为d*4d,b1为W1对应的偏置,同理地,W2为前馈神经网络中第二个线性层的投影权重,维度为4d*d,b2为W2对应的偏置,FFN表示前馈神经网络的初步输出,维度为N*d,z为前馈神经网络层最终的输出,维度为N*d,max表示取最大值的操作。
8.根据权利要求7所述的基于标签与文本交互的多标签情感分类方法,其特征在于,步骤(4-5)具体包括以下子步骤:
(4-5-1)对步骤(4-4)得到的维度为N*d的最终的情感标签表征进行线性层投影和概率化处理,以得到该文本对于各个标签关联的概率,其为长为N的一维张量;
具体而言,本步骤中,线性层投影是把维度为N*d的最终的情感标签表征投影到N*1,以得到该文本对于各个标签的关联特征,那么对该文本对于各个标签的关联特征进行概率化处理采用了sigmoid函数的方法:
(4-5-2)根据步骤(4-5-1)得到的该文本对于各个标签关联的概率和步骤(4-2-1)中该文本对应的实际情感标签进行基于标签与文本交互的多标签情感分类模型的损失函数的损失值计算,并使用该损失值迭代训练模型,得到训练好的基于标签与文本交互的多标签情感分类模型。
具体而言,本步骤中模型的训练过程中损失函数L主要包含两个损失函数L1和L2,其中前者是用于最大化正确标签的概率,后者用于最大化正负标签之间的距离,具体定义如下:
L=(1-α)L1+αL2
其中N表示情感标签个数,yn代表第n个情感标签的实际值,pn即为文本对于第n个情感标签的关联概率,N+为情感标签实际值为1的个数,N-为情感标签实际值为0的个数,pj代表向量p的第j个元素值,同理pk代表向量p的第k个元素值,α为控制L1和L2对总损失L的贡献的权重,且α∈[0,1]。
9.一种基于标签与文本交互的多标签情感分类系统,其特征在于,包括:
第一模块,用于获取待分析的文本;
第二模块,用于对第一模块获取的待分析本文进行数据清洗处理,以得到带有注释标记的预处理文本。
第三模块,用于对第二模块得到的带有注释标记的预处理文本进行数据格式规范化处理,以得到id列表和掩码模板。
第四模块,用于将第三模块得到的id列表和掩码模板输入预先训练好的基于标签与文本交互的多标签情感分类模型中,以得到该文本对应的情感标签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310207001.2A CN116340513A (zh) | 2023-03-07 | 2023-03-07 | 一种基于标签与文本交互的多标签情感分类方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310207001.2A CN116340513A (zh) | 2023-03-07 | 2023-03-07 | 一种基于标签与文本交互的多标签情感分类方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116340513A true CN116340513A (zh) | 2023-06-27 |
Family
ID=86885014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310207001.2A Pending CN116340513A (zh) | 2023-03-07 | 2023-03-07 | 一种基于标签与文本交互的多标签情感分类方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116340513A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116627915A (zh) * | 2023-07-25 | 2023-08-22 | 河海大学 | 基于槽位语义交互的大坝应急工况事件检测方法和系统 |
CN117556802A (zh) * | 2024-01-12 | 2024-02-13 | 碳丝路文化传播(成都)有限公司 | 一种基于大语言模型的用户画像方法、装置、设备及介质 |
-
2023
- 2023-03-07 CN CN202310207001.2A patent/CN116340513A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116627915A (zh) * | 2023-07-25 | 2023-08-22 | 河海大学 | 基于槽位语义交互的大坝应急工况事件检测方法和系统 |
CN116627915B (zh) * | 2023-07-25 | 2023-09-19 | 河海大学 | 基于槽位语义交互的大坝应急工况事件检测方法和系统 |
CN117556802A (zh) * | 2024-01-12 | 2024-02-13 | 碳丝路文化传播(成都)有限公司 | 一种基于大语言模型的用户画像方法、装置、设备及介质 |
CN117556802B (zh) * | 2024-01-12 | 2024-04-05 | 碳丝路文化传播(成都)有限公司 | 一种基于大语言模型的用户画像方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111738004A (zh) | 一种命名实体识别模型的训练方法及命名实体识别的方法 | |
CN116340513A (zh) | 一种基于标签与文本交互的多标签情感分类方法和系统 | |
Zhang et al. | Aspect-based sentiment analysis for user reviews | |
CN112287672A (zh) | 文本意图识别方法及装置、电子设备、存储介质 | |
CN113360582B (zh) | 基于bert模型融合多元实体信息的关系分类方法及系统 | |
CN114781392A (zh) | 一种基于bert改进模型的文本情感分析方法 | |
CN116661805B (zh) | 代码表示的生成方法和装置、存储介质及电子设备 | |
CN114154504A (zh) | 一种基于多信息增强的中文命名实体识别算法 | |
CN113869055A (zh) | 基于深度学习的电网项目特征属性识别方法 | |
CN115130591A (zh) | 一种基于交叉监督的多模态数据分类方法及装置 | |
CN116663539A (zh) | 基于RoBERTa和指针网络的中文实体与关系联合抽取方法及系统 | |
CN112036189A (zh) | 一种金文语义识别方法和系统 | |
CN113051904B (zh) | 一种面向小规模知识图谱的链接预测方法 | |
CN114356924A (zh) | 用于从结构化文档提取数据的方法和设备 | |
CN117333146A (zh) | 基于人工智能的人力资源管理系统及方法 | |
CN117131877A (zh) | 一种基于对比学习的文本检测方法及系统 | |
CN115408506B (zh) | 联合语义解析和语义成分匹配的nl2sql的方法 | |
CN116756320A (zh) | 基于预训练语言模型和主题增强的农业问句分类方法 | |
CN116822513A (zh) | 一种融合实体类型与关键词特征的命名实体识别方法 | |
CN116662924A (zh) | 基于双通道与注意力机制的方面级多模态情感分析方法 | |
CN115964497A (zh) | 一种融合注意力机制与卷积神经网络的事件抽取方法 | |
CN116432632A (zh) | 一种基于t5神经网络的可解释阅读理解模型 | |
CN115510230A (zh) | 一种基于多维特征融合与比较增强学习机制的蒙古语情感分析方法 | |
CN115422945A (zh) | 一种融合情感挖掘的谣言检测方法及系统 | |
CN114611489A (zh) | 文本逻辑条件抽取ai模型构建方法、抽取方法及系统 |
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 |