CN114529758A - 基于对比学习和多头自注意力机制的多模态情感分析方法 - Google Patents
基于对比学习和多头自注意力机制的多模态情感分析方法 Download PDFInfo
- Publication number
- CN114529758A CN114529758A CN202210084807.2A CN202210084807A CN114529758A CN 114529758 A CN114529758 A CN 114529758A CN 202210084807 A CN202210084807 A CN 202210084807A CN 114529758 A CN114529758 A CN 114529758A
- Authority
- CN
- China
- Prior art keywords
- text
- image
- data
- loss
- model
- 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.)
- Granted
Links
- 230000008451 emotion Effects 0.000 title claims abstract description 67
- 238000004458 analytical method Methods 0.000 title claims abstract description 31
- 230000004927 fusion Effects 0.000 claims abstract description 45
- 238000012549 training Methods 0.000 claims abstract description 36
- 239000000284 extract Substances 0.000 claims abstract description 6
- 239000013598 vector Substances 0.000 claims description 59
- 238000000034 method Methods 0.000 claims description 35
- 230000006870 function Effects 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005520 cutting process Methods 0.000 claims description 6
- 238000013434 data augmentation Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 5
- 238000013519 translation Methods 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 238000005253 cladding Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000008909 emotion recognition Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 230000002996 emotional effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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
- 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
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biomedical Technology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Image Analysis (AREA)
Abstract
本发明提出了一种基于对比学习和多头自注意力机制的多模态情感分析方法,本发明采用预训练模型,对文本和图片进行序列特征提取,之后针对图像采用基于多头自注意力机制的Transformer‑Encoder结构进行二次序列特征提取,然后将文本序列特征和图像序列特征拼接后使用Transformer‑Encoder进行特征提取,得益于自注意力机制,可以帮助文本和图像特征更好的对齐和融合;最后采用多任务学习,辅助模型更好的进行情感分类任务;同时加入两种辅助对比学习任务,帮助模型更好的提取学习文本和图像融合后的特征,帮助模型提升数据情感的区分能力。
Description
技术领域
本发明涉及自然语言处理技术领域,具体地,涉及一种基于对比学习和多头自注意力机制的多模态情感分析方法。
背景技术
随着互联网的发展,我国网民数量日益增加,网民规模日益庞大。越来越多的人通过终端设备,在微博、论坛、社交软件等平台中针对一些热门话题发表自己的观点看法。以微博为例,人们可以通过文字和图片等形式发表自己的观点,而人们在这些社交媒体发表的内容往往带有强烈的主观意识,蕴含着丰富的情感。情感分析也被称为观点挖掘,指对带有情感色彩的主观性文本进行识别并分析情感倾向的过程。情感分析的理论意义在于当人们做决策时,很大程度上依赖于他人的看法及评价,观点是影响人们行为的主要因素。情感分析包含多个子任务,如情感分类、情感信息抽取、主题识别、主客观分析等。而在社会价值方面,随着论坛、微博等社交媒体的普及,人们越来越倾向于在网络上表达自己对问题、事件、话题、新闻的看法,因此对社交媒体上的非结构性文本进行情感分析,可以知道群众的评论导向,提取群众对某事件的观点,从而帮助政府或者社会有关部门更好地掌握民意作出相应的决策。在其他方面,情感分析技术还被应用于心理学领域,为心理学理论证明提高提供了可行路径。情感分析还可以实现论文的自动评审、预测股票、电影票房的趋势等。
以往的社交网用户情绪分析主要着眼于用户状态更新中的文本信息,文本情感分析任务是根据文本内容判断用户的情绪极性。随着上传附带短文本的图像或视频成为用户在社交网上分享自己的心情和表达观点的主要方式,图像和文本共同构成社交媒体中内容的主要部分。多模态数据通常具有互补性、相互验证性、融合性和可转换性的特点。互补性是多模态数据的一个重要属性,各种各样的数据类型都能提供关于某个事物或现象的部分解释和描述。不同类型的原始数据之间的结构差异很大,但在进行适当的处理后,这些多样性的数据可以融合在一起,甚至可以互相转换,从而验证同一事件产生结果的一致性。最近,在数据融合领域,研究者将深度学习技术应用到多模态数据分析任务中,取得了一些重要进展。基于深度学习的多模态数据分析方法在情感分析、语言翻译、跨模态检索和医学辅助诊断等领域取得了一些成果,深度学习为多模态数据融合领域带来了新的机遇。
发明内容
本发明考虑到文本和图像特征难以融合和对齐,且融合之后的图文特征中存在一些和情感分析无关的信息,导致多模态图文情感分析一直是一个比较难的任务;提出了一种基于对比学习和多头自注意力机制的多模态情感分析方法;旨在使用基于多头自注意力机制的Transformer-Encoder结构帮助文本和图像特征进行对齐和融合,同时加入两种辅助对比学习任务,帮助模型更好的提取学习文本和图像融合后的特征,帮助模型提升数据情感的区分能力。
本发明是通过以下方案实现的:
一种基于对比学习和多头自注意力机制的多模态情感分析方法:
所述方法具体包括以下步骤:
步骤一:获取用于多模态情感分析的训练样本;并对训练样本进行数据划分和预处理;获得训练样本的文本与图像数据;
步骤二:将训练样本中的每条样本中的句子划分为子词,并在句子的开头和结尾加入标志符,之后将字词映射为词向量索引,完成文本的初步表示;
步骤三:将训练样本中的图像读入到内存中,并将图像格式映射为RGB格式的向量数据,完成图像的初步表示;
步骤四:将步骤二获得的文本的初步表示以及步骤三获得的图像的初步表示分别输入到文本预训练模型BERT和图像特征提取模型ResNet-50中,分别得到文本文本的序列特征表示和图像的特征表示;
步骤五:将步骤四得到的图像特征表示输入到多层的Transformer-Encoder网络中,获取二次提取的图像特征;
步骤六:将步骤四得到的文本特征表示和步骤五中得到的二次提取的图像特征进行拼接,获取文本-图像特征序列表示,将文本-图像特征序列表示输入到多层的Transformer-Encoder网络中,通过多头自注意力机制的计算,对文本-图像特征进行对齐和融合,得到文本-图像序列融合特征向量;
步骤七:将步骤六中的文本-图像序列融合特征向量,经过attention层,获取最终的文本-图像融合特征向量;
步骤八:将步骤七中得到的文本-图像融合特征向量输入到情感分类器中,得到情感分类的结果和损失函数;
步骤九:将步骤七中得到的文本-图像融合特征向量,经过基于同一batch集合中相同标签数据之间进行Info-NCE对比学习,作为辅助任务,计算损失函数;
步骤十:将步骤一中得到的文本-图像数据进行数据增强,并通过步骤二到步骤七,得到数据增强的文本-图像融合特征向量,之后将步骤七中得到的最终的文本-图像融合特征向量与数据增强的文本-图像融合特征向量进行Info-NCE的对比学习,作为辅助任务,计算损失函数;
步骤十一:将步骤八到步骤十的三个损失函数按权重相加,优化整个多模态情感分析模型。
进一步地,在步骤一中,所述数据划分具体方法为:将数据集按照8∶1∶1的比例划分成训练集,验证集和测试集;并保证每个集合中的文本与图像数据的数量均衡。
进一步地,在步骤二中,将训练样本的文本序列S={w1w2...wN}进行切词,并在首尾加入开始和结束符;
切词后的文本序列为Ssub={[start],w1,w2,...,wN,[end]},之后将切词后的文本序列转换成词向量索引:
进一步地,在步骤三中:将图像读入到内存中,得到图像的RGB格式的向量数据,并经过缩放,得到图像向量数据Img:
Img=convert_to_RGB(Image_Read(image_file_path))。
进一步地,步骤四:将文本词向量索引Sindex和图像向量数据Img分别输入到模型中,分别得到文本的序列特征表示Text_Model(Sindex)和图像的序列特征表示 Image_Model(Img);
[Tr[cls],Tr1,Tr2,...,TrN,Tr[end]]=Text_Model(Sindex) [Ir1,Ir2,...,Ir49]=Image_Model(Img)。
进一步地,在步骤五中,将图像序列特征输入到多层Transformer-Encoder网络中,得到和文本更加相近的图像特征,得到二次图像特征Transformerimg([Ir1,Ir2,...,Ir49]);
进一步地,在步骤六中,所述文本-图像特征序列表示:
将文本-图像特征序列表示输入到多层Transformer-Encoder中,得到文本-图像序列融合特征向量[M1,M2,...,MN+51];
[M1,M2,...,MN+51]=Transformertext-img(T_Img);
在步骤七中,最终的文本-图像的融合特征向量:
[q1,q2,...,qN+51]=Softmax(Linear([M1,M2,...,MN+51]))
进一步地,在步骤八中,所述情感分类的结果和损失函数为:
f=GELU(Rtext-imageWf+bf)
o=softmax(fWo+bo)
y′=argmax(o)∈[1,c]
Lossc=ylog(o(y′))/len(labels)
其中,f为情感类别特征向量,o为情感类别概率值, m和n均是线性层的隐层维度,c表示情感类别数量,y′表示最终的情感类别,y表示真实的情感标签,labels表示同一个batch中所有的标签,损失函数Lossc采用交叉熵损失函数进行计算;
在步骤九中,具体计算公式如下:
cl_self_labels=get_target_labels(labels)
cl_self_encoder=cl_self_encoder/temperature
cl_self_loss=gather(cl_self_encoder,dim=1,index=cl_self_labels)
Losscl_self=cl_self_loss/len(labels)
其中get_target_labels()函数根据原始的标签,生成Info-NCE对比学习中需要的同一batch集合中需要最大化概率的相同标签的索引数据,gather()函数根据给定的标签的索引数据,从对比学习编码特征中抽取最大化选中的特征并进行损失计算;
步骤十:针对数据增强得到的文本-图像特征和原始数据的文本-图像特征之间进行 Info-NCE对比学习,计算公式如下:
Ta,Ia=Data_augmentation(S,Img)
Rtext-image,a=Multimodal_model(Ta,Ia)
cl_labels=range(len(labels))
Losscl=CrossEntropyLoss(cl_encoder,cl_labels)/len(labels)
公式中的Data_augmentation()用于对文本-图像数据进行数据增强,其中针对文本进行反向翻译,即源语言-翻译语言-源语言的形式;针对图像数据,采用明暗变换,裁剪,对比度变换进行数据增强;公式中的Multimodal_model为步骤四到步骤七中的操作,其中的模型参数和原始数据的所使用的模型是参数共享的;
步骤十一:最后将步骤八至步骤十得到的Lossc、Losscl self和Losscl按比例相加,共同优化多模态情感分析模型,公式如下:
Loss=Lossc+αLosscl_self+βLosscl
其中α和β取1。
一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时实现上述方法的步骤。
本发明有益效果
本发明使用基于多头自注意力机制的Transformer-Encoder结构帮助文本和图像特征进行对齐和融合,同时加入两种辅助对比学习任务,分别是针对标签类型的对比学习和针对图文融合特征的对比学习,分别帮助模型更加关注于图文融合特征中的情感特征和图文融合过程中相关联的特征,帮助模型提升数据情感的区分能力。
附图说明
图1为本发明的整体模型结构图;
图2为本发明模型结构中数据特征提取组件的结构图;
图3为本发明模型结构中基于多头自注意力机制的多模态融合组件的结构图;
图4为本发明的模型训练流程图。
具体实施方式
下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
结合图1至图4,
一种基于对比学习和多头自注意力机制的多模态情感分析方法:
所述方法具体包括以下步骤:
步骤一:获取用于多模态情感分析的训练样本;并对训练样本进行数据划分和预处理;获得训练样本的文本与图像数据;
步骤二:将训练样本中的每条样本中的句子划分为子词,并在句子的开头和结尾加入标志符,之后将字词映射为词向量索引,完成文本的初步表示;
步骤三:将训练样本中的图像读入到内存中,并将图像格式映射为RGB格式的向量数据,完成图像的初步表示;
步骤四:将步骤二获得的文本的初步表示以及步骤三获得的图像的初步表示分别输入到文本预训练模型BERT和图像特征提取模型ResNet-50中,分别得到文本文本的序列特征表示和图像的特征表示;
步骤五:将步骤四得到的图像特征表示输入到多层的Transformer-Encoder网络中,这一步是为了将图像特征转成和文本更加相近的图像特征,获取二次提取的图像特征;
步骤六:将步骤四得到的文本特征表示和步骤五中得到的二次提取的图像特征进行拼接,获取文本-图像特征序列表示,将文本-图像特征序列表示输入到多层的Transformer-Encoder网络中,通过多头自注意力机制的计算,对文本-图像特征进行对齐和融合,得到文本-图像序列融合特征向量;
步骤七:将步骤六中的文本-图像序列融合特征向量,经过attention层,获取最终的文本-图像融合特征向量;
步骤八:将步骤七中得到的文本-图像融合特征向量输入到情感分类器中(全连接层和 softmax层),得到情感分类的结果和损失函数;
步骤九:将步骤七中得到的文本-图像融合特征向量,经过基于同一batch集合中相同标签数据之间进行Info-NCE对比学习,作为辅助任务,计算损失函数;
步骤十:将步骤一中得到的文本-图像数据进行数据增强,并通过步骤二到步骤七,得到数据增强的文本-图像融合特征向量,之后将步骤七中得到的最终的文本-图像融合特征向量与数据增强的文本-图像融合特征向量进行Info-NCE的对比学习,作为辅助任务,计算损失函数;
步骤十一:将步骤八到步骤十的三个损失函数按权重相加,优化整个多模态情感分析模型。
在步骤一中,所述数据划分具体方法为:将数据集按照8∶1∶1的比例划分成训练集,验证集和测试集;并保证每个集合中的文本与图像数据的数量均衡。
在步骤二中,将训练样本的文本序列S={w1w2...wN}进行切词,并在首尾加入开始和结束符;
切词后的文本序列为Ssub={[start],w1,w2,...,wN,[end]},之后将切词后的文本序列转换成词向量索引:
在步骤三中:将图像读入到内存中,得到图像的RGB格式的向量数据,并经过缩放,得到3*224*224的图像向量数据Img:
Img=convert_to_RGB(Image_Read(image_file_path))。
步骤四:将文本词向量索引Sindex和图像向量数据Img分别输入到模型中,分别得到文本的序列特征表示Text_Model(Sindex)和图像的序列特征表示Image_Model(Img);(如图2数据特征提取组件的结构图所示):
[Tr[cls],Tr1,Tr2,...,TrN,Tr[end]]=Text_Model(Sindex) [Ir1,Ir2,...,Ir49]=Image_Model(Img)。
对于文本序列特征,这里针对每个子词,提取到了768维的特征向量,对于图像,得到的是49*768维的特征向量。
在步骤五中,将图像序列特征输入到多层Transformer-Encoder网络中,得到和文本更加相近的图像特征,得到二次图像特征Transformerimg([Ir1,Ir2,...,Ir49]);(如图3基于多头自注意力机制的多模态融合组件的结构图);
这里是为了让图像特征和文本特征更加契合,帮助模型更好的进行之后的文本-图像特征融合;
在步骤六中,所述文本-图像特征序列表示:
将文本-图像特征序列表示输入到多层Transformer-Encoder中,得到文本-图像序列融合特征向量[M1,M2,...,MN+51];(如图3基于多头自注意力机制的多模态融合组件的结构图):
[M1,M2,...,MN+51]=Transformertext-img(T_Img);
在步骤七中,最终的文本-图像的融合特征向量:
[q1,q2,...,qN+51]=Softmax(Linear([M1,M2,...,MN+51]))
在步骤八中,所述情感分类的结果和损失函数为:(如图1左上第一个任务):
f=GELU(Rtext-imageWf+bf)
o=softmax(fWo+bo)
y′=argmax(o)∈[1,c]
Lossc=ylog(o(y′))/len(labels)
其中,f为情感类别特征向量,o为情感类别概率值, m和n均是线性层的隐层维度,c表示情感类别数量,y′表示最终的情感类别,y表示真实的情感标签,labels表示同一个batch中所有的标签,损失函数Lossc采用交叉熵损失函数进行计算;
在步骤九中,将同一batch集合中的相同标签数据之间进行Info-NCE对比学习,这里是为了让模型可以偏向学习到文本-图像融合之后的情感信息特征,而不是仅仅关注于如何融合文本和图像特征,具体计算公式如下:
cl_self_labels=get_target_labels(labels)
cl_self_encoder=cl_self_encoder/temperature
cl_self_loss=gath er(cl_self_encoder,dim=1,index=cl_self_labels)
Losscl_self=cl_self_loss/len(labels)
其中get_target_labels()函数根据原始的标签,生成Info-NCE对比学习中需要的同一 batch集合中需要最大化概率的相同标签的索引数据,参考图1中间矩阵的阴影部分, gather()函数根据给定的标签的索引数据,从对比学习编码特征中抽取最大化选中的特征 (需要的特征)并进行损失计算;
步骤十:针对数据增强得到的文本-图像特征和原始数据的文本-图像特征之间进行 Info-NCE对比学习(如图1的左上矩阵的阴影部分),计算公式如下:
Ta,Ia=Data_augmentation(S,Img)
Rtext-image,a=Multimodal_model(Ta,Ia)
cl_labels=range(len(labels))
Losscl=CrossEntropyLoss(cl_encoder,cl_labels)/len(labels)
公式中的Data_augmentation()用于对文本-图像数据进行数据增强,其中针对文本进行反向翻译,即源语言-翻译语言-源语言的形式;针对图像数据,采用明暗变换,裁剪,对比度变换等策略进行数据增强;公式中的Multimodal_model为步骤四到步骤七中的操作,其中的模型参数和原始数据的所使用的模型是参数共享的;
步骤十一:最后将步骤八至步骤十得到的Lossc、Losscl self和Losscl按比例相加,共同优化多模态情感分析模型,公式如下:
Loss=Lossc+αLosscl_self+βLosscl
其中α和β取1。
一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时实现上述方法的步骤。
模型优化时的训练规则如图4流程图所示,定义一个总训练轮次数epoch,和两个分层训练轮次数epoch1和epoch2,且epoch=epoch1+epoch2,对文本进行训练,训练过程中采用分层优化,首先优化图3部分的模型参数,经过epoch1之后,对全部模型参数进行优化。定义一个批训练大小batch size,为模型在一个批次(batch)中取用的训练样本数目。
可选的,本实施例中,学习率为2e-5,使用Adamw优化器。
实施例数据及评估指标介绍
本实施例中,使用了渥太华大学的MCR实验室提供的用于多模态图文情感分析的数据集MVSA-Single,MVSA-Single数据集需要手动进行划分为训练集,验证集和测试集。数据划分之后的分布情况如表1所示:
表1:MVSA-Single数据集情感标签分布情况
本次实施例中,还使用了清华大学提供的基于Twitter的讽刺识别多模态情感数据集 HFM。数据集本身已经划分好了训练集,验证集和测试集,其数据分布情况如表2所示:
表2:HFM数据集情感标签分布情况
本发明采用F1值和准确率作为评价指标。
实验结果
在MVSA-Single数据集上的实验结果如表3所示:
表3:MVSA-Single数据集情感分类实验结果
在HFM数据集上的实验结果如表4所示:
表4:MVSA-Single数据集情感分类实验结果
针对MVSA-Single数据集的实验结果,BERT和ResNet-50是文本和图像预训练模型。 MultiSentiNet是基于多场景语义的多模态情感识别方法,CoMN(6)是基于互注意力机制的多模态情感识别方法,MGNNS是基于多通道图神经网络的多模式情感识别方法;
针对HFM数据集的实验结果,BERT和ResNet-50是文本和图像预训练模型。Random表示随机生成答案得到的预测结果。Concat是将文本和图像的特征拼接起来进行分类的方法,Hierarchical FM是基于层次的局部和全局特征的多模态情感识别方法。
以上对本发明所提出的一种基于对比学习和多头自注意力机制的多模态情感分析方法,进行了详细介绍,对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于对比学习和多头自注意力机制的多模态情感分析方法,其特征在于:
所述方法具体包括以下步骤:
步骤一:获取用于多模态情感分析的训练样本;并对训练样本进行数据划分和预处理;获得训练样本的文本与图像数据;
步骤二:将训练样本中的每条样本中的句子划分为子词,并在句子的开头和结尾加入标志符,之后将字词映射为词向量索引,完成文本的初步表示;
步骤三:将训练样本中的图像读入到内存中,并将图像格式映射为RGB格式的向量数据,完成图像的初步表示;
步骤四:将步骤二获得的文本的初步表示以及步骤三获得的图像的初步表示分别输入到文本预训练模型BERT和图像特征提取模型ResNet-50中,分别得到文本文本的序列特征表示和图像的特征表示;
步骤五:将步骤四得到的图像特征表示输入到多层的Transformer-Encoder网络中,获取二次提取的图像特征;
步骤六:将步骤四得到的文本特征表示和步骤五中得到的二次提取的图像特征进行拼接,获取文本-图像特征序列表示,将文本-图像特征序列表示输入到多层的Transformer-Encoder网络中,通过多头自注意力机制的计算,对文本-图像特征进行对齐和融合,得到文本-图像序列融合特征向量;
步骤七:将步骤六中的文本-图像序列融合特征向量,经过attention层,获取最终的文本-图像融合特征向量;
步骤八:将步骤七中得到的文本-图像融合特征向量输入到情感分类器中,得到情感分类的结果和损失函数;
步骤九:将步骤七中得到的文本-图像融合特征向量,经过基于同一batch集合中相同标签数据之间进行Info-NCE对比学习,作为辅助任务,计算损失函数;
步骤十:将步骤一中得到的文本-图像数据进行数据增强,并通过步骤二到步骤七,得到数据增强的文本-图像融合特征向量,之后将步骤七中得到的最终的文本-图像融合特征向量与数据增强的文本-图像融合特征向量进行Info-NCE的对比学习,作为辅助任务,计算损失函数;
步骤十一:将步骤八到步骤十的三个损失函数按权重相加,优化整个多模态情感分析模型。
2.根据权利要求1所述方法,其特征在于:
在步骤一中,所述数据划分具体方法为:将数据集按照8∶1∶1的比例划分成训练集,验证集和测试集;并保证每个集合中的文本与图像数据的数量均衡。
4.根据权利要求3所述方法,其特征在于:
在步骤三中:将图像读入到内存中,得到图像的RGB格式的向量数据,并经过缩放,得到图像向量数据Img:
Img=convert_to_RGB(Image_Read(image_file_path))。
5.根据权利要求4所述方法,其特征在于:
步骤四:将文本词向量索引Sindex和图像向量数据Img分别输入到模型中,分别得到文本的序列特征表示Text_Model(Sindex)和图像的序列特征表示Image_Model(Img);
[Tr[cls],Tr1,Tr2,...,TrN,Tr[end]]=Text_Model(Sindex)
[Ir1,Ir2,...,Ir49]=Image_Model(Img)。
8.根据权利要求7所述方法,其特征在于:
在步骤八中,所述情感分类的结果和损失函数为::
f=GELU(Rtext-imageWf+bf)
o=softmax(fWo+bo)
y′=argmax(o)∈[1,c]
Lossc=ylog(o(y′))/len(labels)
其中,f为情感类别特征向量,o为情感类别概率值, m和n均是线性层的隐层维度,c表示情感类别数量,y′表示最终的情感类别,y表示真实的情感标签,labels表示同一个batch中所有的标签,损失函数Lossc采用交叉熵损失函数进行计算;
在步骤九中,具体计算公式如下:
cl_self_labels=get_target_labels(labels)
cl_self_encoder=cl_self_encoder/temperature
cl_self_loss=gath er(cl_self_encoder,dim=1,index=cl_self_labels)
Losscl_self=cl_self_loss/len(labels)
其中get_target_labels()函数根据原始的标签,生成Info-NCE对比学习中需要的同一batch集合中需要最大化概率的相同标签的索引数据,gather()函数根据给定的标签的索引数据,从对比学习编码特征中抽取最大化选中的特征并进行损失计算;
步骤十:针对数据增强得到的文本-图像特征和原始数据的文本-图像特征之间进行Info-NCE对比学习,计算公式如下:
Ta,Ia=Data_augmentation(S,Img)
Rtext-image,a=Multimodal_model(Ta,Ia)
cl_labels=range(len(labels))
Losscl=CrossEntropyLoss(cl_encoder,cl_labels)/len(labels)
公式中的Data_augmentation( )用于对文本-图像数据进行数据增强,其中针对文本进行反向翻译,即源语言-翻译语言-源语言的形式;针对图像数据,采用明暗变换,裁剪,对比度变换进行数据增强;公式中的Multimodal_model为步骤四到步骤七中的操作,其中的模型参数和原始数据的所使用的模型是参数共享的;
步骤十一:最后将步骤八至步骤十得到的Lossc、Losscl_self和Losscl按比例相加,共同优化多模态情感分析模型,公式如下:
Loss=Lossc+αLosscl_self+βLosscl
其中α和β取1。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-8所述方法的步骤;
10.一种计算机可读存储介质,用于存储计算机指令,其特征在于,所述计算机指令被处理器执行时实现权利要求1-8所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210084807.2A CN114529758B (zh) | 2022-01-25 | 2022-01-25 | 基于对比学习和多头自注意力机制的多模态情感分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210084807.2A CN114529758B (zh) | 2022-01-25 | 2022-01-25 | 基于对比学习和多头自注意力机制的多模态情感分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114529758A true CN114529758A (zh) | 2022-05-24 |
CN114529758B CN114529758B (zh) | 2024-10-01 |
Family
ID=81620754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210084807.2A Active CN114529758B (zh) | 2022-01-25 | 2022-01-25 | 基于对比学习和多头自注意力机制的多模态情感分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114529758B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114882978A (zh) * | 2022-07-12 | 2022-08-09 | 紫东信息科技(苏州)有限公司 | 引入图片翻译信息的胃部图像处理方法及系统 |
CN115082430A (zh) * | 2022-07-20 | 2022-09-20 | 中国科学院自动化研究所 | 图像分析方法、装置及电子设备 |
CN115186683A (zh) * | 2022-07-15 | 2022-10-14 | 哈尔滨工业大学 | 一种基于跨模态翻译的属性级多模态情感分类方法 |
CN115544260A (zh) * | 2022-12-05 | 2022-12-30 | 湖南工商大学 | 用于文本情感分析的对比优化编解码模型及方法 |
CN115809438A (zh) * | 2023-01-18 | 2023-03-17 | 中国科学技术大学 | 多模态情感分析方法、系统、设备及存储介质 |
CN116304984A (zh) * | 2023-03-14 | 2023-06-23 | 烟台大学 | 基于对比学习的多模态意图识别方法及系统 |
CN116402063A (zh) * | 2023-06-09 | 2023-07-07 | 华南师范大学 | 多模态讽刺识别方法、装置、设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102020756B1 (ko) * | 2018-10-23 | 2019-11-04 | 주식회사 리나소프트 | 머신러닝을 이용한 리뷰 분석 방법 |
CN113283551A (zh) * | 2021-07-22 | 2021-08-20 | 智者四海(北京)技术有限公司 | 多模态预训练模型的训练方法、训练装置及电子设备 |
CN113723463A (zh) * | 2021-08-02 | 2021-11-30 | 北京工业大学 | 情感分类方法及装置 |
CN113822340A (zh) * | 2021-08-27 | 2021-12-21 | 北京工业大学 | 一种基于注意力机制的图文情感识别方法 |
-
2022
- 2022-01-25 CN CN202210084807.2A patent/CN114529758B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102020756B1 (ko) * | 2018-10-23 | 2019-11-04 | 주식회사 리나소프트 | 머신러닝을 이용한 리뷰 분석 방법 |
CN113283551A (zh) * | 2021-07-22 | 2021-08-20 | 智者四海(北京)技术有限公司 | 多模态预训练模型的训练方法、训练装置及电子设备 |
CN113723463A (zh) * | 2021-08-02 | 2021-11-30 | 北京工业大学 | 情感分类方法及装置 |
CN113822340A (zh) * | 2021-08-27 | 2021-12-21 | 北京工业大学 | 一种基于注意力机制的图文情感识别方法 |
Non-Patent Citations (1)
Title |
---|
凌海彬;缪裕青;张万桢;周明;武继刚;: "多特征融合的图文微博情感分析", 计算机应用研究, no. 07, 6 June 2019 (2019-06-06) * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114882978A (zh) * | 2022-07-12 | 2022-08-09 | 紫东信息科技(苏州)有限公司 | 引入图片翻译信息的胃部图像处理方法及系统 |
CN115186683A (zh) * | 2022-07-15 | 2022-10-14 | 哈尔滨工业大学 | 一种基于跨模态翻译的属性级多模态情感分类方法 |
CN115186683B (zh) * | 2022-07-15 | 2023-05-23 | 哈尔滨工业大学 | 一种基于跨模态翻译的属性级多模态情感分类方法 |
CN115082430A (zh) * | 2022-07-20 | 2022-09-20 | 中国科学院自动化研究所 | 图像分析方法、装置及电子设备 |
CN115082430B (zh) * | 2022-07-20 | 2022-12-06 | 中国科学院自动化研究所 | 图像分析方法、装置及电子设备 |
CN115544260A (zh) * | 2022-12-05 | 2022-12-30 | 湖南工商大学 | 用于文本情感分析的对比优化编解码模型及方法 |
CN115809438A (zh) * | 2023-01-18 | 2023-03-17 | 中国科学技术大学 | 多模态情感分析方法、系统、设备及存储介质 |
CN115809438B (zh) * | 2023-01-18 | 2023-06-16 | 中国科学技术大学 | 多模态情感分析方法、系统、设备及存储介质 |
CN116304984A (zh) * | 2023-03-14 | 2023-06-23 | 烟台大学 | 基于对比学习的多模态意图识别方法及系统 |
CN116402063A (zh) * | 2023-06-09 | 2023-07-07 | 华南师范大学 | 多模态讽刺识别方法、装置、设备以及存储介质 |
CN116402063B (zh) * | 2023-06-09 | 2023-08-15 | 华南师范大学 | 多模态讽刺识别方法、装置、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114529758B (zh) | 2024-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114529758B (zh) | 基于对比学习和多头自注意力机制的多模态情感分析方法 | |
CN110390103B (zh) | 基于双编码器的短文本自动摘要方法及系统 | |
Saikh et al. | Scienceqa: A novel resource for question answering on scholarly articles | |
Omran et al. | Transfer learning and sentiment analysis of Bahraini dialects sequential text data using multilingual deep learning approach | |
CN117574904A (zh) | 基于对比学习和多模态语义交互的命名实体识别方法 | |
CN117391051B (zh) | 一种融合情感的共同注意网络多模态虚假新闻检测方法 | |
CN115390806A (zh) | 基于双模态联合建模的软件设计模式推荐方法 | |
Gandhi et al. | Multimodal sentiment analysis: review, application domains and future directions | |
CN118014086B (zh) | 数据处理方法、装置、设备、存储介质及产品 | |
Kumar et al. | Emotion recognition in Hindi text using multilingual BERT transformer | |
CN116186236A (zh) | 一种基于单模态和多模态联合训练的情感分析方法及系统 | |
CN117765450B (zh) | 一种视频语言理解方法、装置、设备及可读存储介质 | |
Zeng et al. | Robust multimodal sentiment analysis via tag encoding of uncertain missing modalities | |
CN114969458A (zh) | 基于文本指导的层级自适应融合的多模态情感分析方法 | |
Alonso del Barrio et al. | Framing the news: from human perception to large language model inferences | |
Da et al. | Deep learning based dual encoder retrieval model for citation recommendation | |
CN114443846A (zh) | 一种基于多层级文本异构图的分类方法、装置及电子设备 | |
Ren et al. | Product promotion copywriting from multimodal data: New benchmark and model | |
Gao | Interpreters' ideological positioning through evaluative language in conference interpreting | |
Aurnhammer et al. | Manual Annotation of Unsupervised Models: Close and Distant Reading of Politics on Reddit. | |
Attai et al. | A survey on arabic image captioning systems using deep learning models | |
Chen et al. | An artificial intelligence approach for interpreting creative combinational designs | |
Novais | A framework for emotion and sentiment predicting supported in ensembles | |
Coumans et al. | Definitions in practice: An interview study | |
Barnes et al. | Centralising Qualitative Research in Big Data Methods Through Algorithmic Ethnography |
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 |