CN117094835A - 面向社交媒体内容的多目标群体分类方法 - Google Patents
面向社交媒体内容的多目标群体分类方法 Download PDFInfo
- Publication number
- CN117094835A CN117094835A CN202311035552.1A CN202311035552A CN117094835A CN 117094835 A CN117094835 A CN 117094835A CN 202311035552 A CN202311035552 A CN 202311035552A CN 117094835 A CN117094835 A CN 117094835A
- Authority
- CN
- China
- Prior art keywords
- target
- text
- representation
- training
- correlation
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012549 training Methods 0.000 claims abstract description 66
- 238000001514 detection method Methods 0.000 claims abstract description 45
- 230000008447 perception Effects 0.000 claims abstract description 22
- 238000004458 analytical method Methods 0.000 claims abstract description 20
- 230000003993 interaction Effects 0.000 claims abstract description 9
- 238000012546 transfer Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 45
- 239000013598 vector Substances 0.000 claims description 28
- 238000012360 testing method Methods 0.000 claims description 24
- 239000011229 interlayer Substances 0.000 claims description 14
- 239000010410 layer Substances 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 9
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 4
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000008450 motivation Effects 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- 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
-
- 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/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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/048—Activation functions
-
- 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/0499—Feedforward 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Bioinformatics & Computational Biology (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向社交媒体内容的多目标群体分类方法。本发明首先从训练语料库中检测每个目标的指示词,形成对每个目标的文本描述;然后依次进行目标相关性检测和目标倾向性分析,前者用于检测文本与各个目标的相关性,后者用于预测文本对各个相关目标的倾向性。在目标相关性检测中,使用目标嵌入注意力建立文本与各级目标之间的语义交互,并通过层间目标动态路由和一级相关性注意力,建模多种形式的级间信息传递。在目标倾向性分析中,结合模板将文本映射为提示,充分利用预训练语言模型中的语言学知识;使用目标感知的对比学习促进模型训练。实验结果证明,本发明能有效识别社交媒体内容在多个目标上的群体类别。
Description
技术领域
本发明属于计算机技术领域,具体涉及一种面向社交媒体内容的多目标群体分类方法,用于立场检测和舆情分析技术领域。
背景技术
随着信息技术的快速发展和普及,网络社交媒体已经成为当代重要舆论场,其上每天都会产生巨量的个性化内容。分析社交媒体上的文本内容对某些特定目标的立场就显得尤为重要,它可以帮助舆情管理者快速掌握当前的舆论动向,进行相应的决策应对,并有针对性地开展舆论干预和引导。针对立场检测,目前的技术大致可分为单目标立场检测、多目标立场检测和跨目标立场检测。
单目标立场检测旨在识别文本作者对一个目标的态度(如“支持”、“反对”、“中立”等),其核心步骤通常包括文本表示学习、目标表示学习和立场分类,也有不少工作将目标语义融入文本表示学习过程,从而获得目标特定的文本表示。同一个文本中,作者可能对多个目标对象发表立场观点,多目标立场检测即判断文本作者对多个给定目标所持有的立场,现有方法可大致分为独立目标检测和联合目标检测,前者针对每个目标,单独训练一个模型来进行分类预测,即将多目标立场检测划分为多个单目标立场检测;后者则为所有目标训练同一个模型进行预测,因此训练成本更低,应用场景更广。跨目标立场检测旨在实现对训练时未出现的目标(称作“终目标”)的立场预测,因此需要建立源目标(即训练样本中的目标)与终目标之间的关联。基于迁移学习的跨目标立场检测,利用源目标和终目标所包含的共同主题,进行知识迁移,增强表示学习。
上述立场检测中的目标大多是具体的实体或事件,这些方法或任务都是针对通用领域中的特定对象,能够有效检测出网络文本对于特定实体或事件的立场态度,但是若将其应用到专用领域,表现可能并不理想。
发明内容
针对现有技术的应用场景限制和改进需求,本发明提供了一种面向社交媒体内容的多目标群体分类方法,其目的在于,实现一种独立于特定实体或事件的多目标群体分类方法,进而能够从更宏观的角度分析网络用户的倾向与立场。
为实现上述目的,本发明提供了一种面向社交媒体内容的多目标群体分类方法,包括目标指示词检测步骤、目标相关性检测步骤和目标倾向性分析步骤,其中目标相关性检测步骤包括文本与目标编码、一级目标嵌入注意力、一级目标相关性分类、层间目标动态路由、二级目标嵌入注意力、一级相关性注意力、二级目标相关性分类、训练和测试网络;目标倾向性分析步骤包括输入模板映射、文本编码、目标感知的对比学习、目标倾向性分类、训练和测试网络;其中:
(1)目标指示词检测步骤:使用基于概率统计学的方法,从训练语料库中自动检测与各个目标最相关的一些词,从而将抽象的目标概念转换为具体的词汇描述;包括以下子步骤:
(1-1)对训练语料库中的所有文本进行分词;
(1-2)记两级目标的集合为 T1,T2分别为一级、二级目标集合,n1,n2分别为一级、二级目标的个数。对l(l=1,2)级目标从训练语料库中选择与/>相关的文本组成语料库cr,其余与/>不相关的文本组成语料库cu;
(1-3)对cr和cu中的所有词进行排序,一个词在cr中的重要性越高、在cu中的重要性越低,则排序位置越靠前,取排名前k的词作为目标的指示词。
(2)目标相关性检测步骤:由于一条文本通常只会涉及T中的部分目标,因此该步骤检测文本与每个目标的相关性,得到文本在每一级的相关目标和不相关目标对于每条文本,目标相关性检测包括以下步骤:
(2-1)文本与目标编码:使用预训练语言模型对文本和目标进行编码,得到文本和目标的向量化表示,包括以下子步骤:
(2-1-1)将文本和目标转换为预训练语言模型的输入形式。对于文本,在文本的前后添加特殊词:
[CLS]文本[SEP]
对于目标,使用指示词的组合作为目标的文本描述,并在每个指示词之间添加特殊词:
[CLS]指示词1[SEP]指示词2[SEP]…[SEP]指示词k[SEP]
(2-1-2)转换后的文本和目标分别输入两个预训练语言模型BERTweet,捕获深度上下文语义特征;
(2-1-3)从预训练语言模型最后一层提取文本中每个词的表示(m为文本中词的个数,d为表示向量维度),取[CLS]对应的向量作为目标表示/> 此外,提取一级目标每个指示词的表示/>
(2-2)一级目标嵌入注意力:建立文本与一级目标的语义交互,得到一级目标感知的文本表示。对于每条文本,一级目标嵌入注意力包括以下子步骤:
(2-2-1)计算文本中词与一级目标的余弦相似度矩阵G中每个元素
(2-2-2)在G上进行卷积,衡量长度为2r+1的文本窗口与目标的相关程度。对以位置l为中心,长为2r+1的文本窗口Gl-r:l+r,计算
ul=ReLU(wfGl-r:l+r+bf)
其中,为神经网络可学习参数,/>提取ul中的最大值:
vl=MaxPooling(ul)
以步长1移动文本窗口,得到
(2-2-3)对v进行归一化得到文本中每个词的注意力权重,根据权重对词的表示向量做加权求和,得到一级目标感知的文本表示:
α=softmax(v)
(2-3)一级目标相关性分类:将一级目标感知的文本表示输入两层的前馈网络,并通过sigmoid函数得到文本与每个一级目标相关的概率:
其中,均为可学习参数,f为激活函数,/> 表示文本与第i个一级目标相关的概率,则/>
(2-4)层间目标动态路由:二级目标是所属一级目标的不同方面,一级目标的指示词也可看作是从不同角度描述对应的目标,因此一级目标的指示词与对应的二级目标之间存在关联,通过层间动态路由建立二者的信息传递,包括以下子步骤:
(2-4-1)初始化由动态路由得到的二级目标嵌入一级目标的第i个指示词与该一级目标下的第j个二级目标之间的耦合系数bij=0;
(2-4-2)用一级目标指示词嵌入pi与对应二级目标嵌入的向量点积更新bij:
(2-4-3)使用softmax函数对bij进行归一化,
(2-4-4)以βij为权重对一级目标指示词嵌入做加权和,得到二级目标嵌入的中间表示:
(2-4-5)将ej经过非线性squashing函数得到二级目标嵌入:
(2-4-6)重复步骤(2-4-2)~(2-4-5)z次,最终的即为由动态路由得到的二级目标嵌入。
(2-5)二级目标嵌入注意力:现在有两种二级目标嵌入,一种是步骤(2-1)中指示词经过编码得到的一种是步骤(2-4)中由层间目标动态路由得到的/>对这两种二级目标嵌入,分别执行与步骤(2-2)类似的操作,建立文本与二级目标之间的语义交互,得到两种二级目标感知的文本表示/>和/>
(2-6)一级相关性注意力:由于一级目标数量较少,相关性预测更容易,准确率较高,因此可以将一级相关性预测结果引入二级相关性预测的过程,帮助提升二级相关性预测的准确率。使用一级相关性注意力实现上述动机,包括以下子步骤:
(2-6-1)以步骤(2-3)得到的一级目标相关概率为权重,对一级目标嵌入做加权和:
(2-6-2)计算d与文本中每个词嵌入的余弦相似度,并使用softmax函数做归一化,得到每个词的注意力权重αi:
(2-6-3)根据每个词的注意力权重对文本词嵌入做加权求和操作,得到一级相关性预测结果感知的文本表示:
(2-7)二级目标相关性分类:融合两种二级目标感知的文本表示 以及一级相关性预测结果感知的文本表示/>使用前馈神经网络,预测二级目标相关性,包括以下子步骤:
(2-7-1)使用门控机制计算三种文本表示对最终预测的贡献程度:
其中,为可学习参数;
(2-7-2)基于三种文本表示的门控系数计算最终的文本表示:
其中,⊙表示向量元素对位相乘;
(2-7-3)以文本表示为输入,使用前馈神经网络预测文本与每个二级目标相关的概率:
其中,均为可学习参数,σ为激活函数,/> 表示文本与第i个二级目标相关的概率,则/>
(2-8)训练和测试网络:基于预测的目标相关概率和真实的目标相关概率y1,y2构建损失函数,然后使用BP算法训练网络以最小化损失函数。训练完成后,输入测试集中的文本从而得到各个测试样本的相关目标。
(3)目标倾向性分析步骤:使用基于提示(prompt)模板的文本编码方式,预测文本对中每个二级相关目标的倾向性。对于每条文本,目标倾向性分析包括以下子步骤:
(3-1)输入模板映射:给定一个模板和一个相关目标,将输入文本xinp和相关目标指示词xind映射为提示文本xprompt:
(3-2)文本编码:将提示文本xprompt输入预训练语言模型RoBERTa,捕获深度上下文语义特征,从预训练语言模型最后一层提取[MASK]对应的隐藏向量作为文本表示:
s=h[MASK]
(3-3)目标感知的对比学习:为了使相同倾向性类别文本的向量表示尽量接近,不同倾向性类别文本的向量表示尽量远离,同时促使模型更加关注目标信息,进行目标感知的对比学习。对于一个训练batch内的每一条文本xi,目标感知的对比学习包括以下子步骤:
(3-3-1)给定训练batch内,与xi的倾向性类别相同且目标相同的文本作为xi的正例,与xi的倾向性类别不同或目标不同的文本作为xi的负例;
(3-3-2)记xi的目标为ti,向量表示为si,计算目标感知的对比学习损失:
其中,B为训练batch大小,P(i)={j|i≠j,ti=tj,yi=yj},B(i)={1,2,...,B}\{i},τ为温度系数;
(3-4)目标倾向性分类:基于步骤(3-2)得到的文本表示,使用前馈网络预测文本对给定目标的倾向性类别。为了利用倾向性类别的顺序性,在预测过程中使用了steak-breaking方法。对于每一条文本,目标倾向性分类包括以下子步骤:
(3-4-1)将文本表示输入前馈网络,并经过sigmoid函数:
a=σ(W2f(W1s+b1)+b2)
其中,W1,W2,b1,b2为可学习参数,f为激活函数,a的每一维ai是一个决策边界,表示第i类的概率在后续所有类别({j|j≥i})的概率中所占的比例;
(3-4-2)使用steak-breaking方法将前馈网络的输出转换为概率分布
表示文本对给定目标的倾向性属于第i类的概率;
(3-5)训练和测试网络:基于预测的倾向性类别概率分布和真实倾向性标签构建损失函数,并联合目标感知的对比学习损失/>使用BP算法训练网络以最小化损失函数。训练完成后,输入测试集中的文本从而得到各个测试样本对各个相关目标的倾向性类别。
优选地,步骤(1-3)中,使用带有Dirichlet先验的加权对数比(weighted log-odds-ratio)方法对语料库cr和cu中的词进行排序,具体步骤如下:
使用带有Dirichlet先验的加权对数比计算词w在两个语料库中的使用频率差异:
其中,nr为语料库cr中词的数量,nu语料库cu中词的数量,分别为词w在语料库cr,cu中出现的次数;n0为背景语料库中词的数量,/>为词w在背景语料库中出现的次数。
计算对数比的方差,最后计算词w的Z分数:
Zw越高说明词w在语料库cr中越重要,而在语料库cu中越不重要。根据Zw对语料库cr,cu中的所有词进行排序,取排名前k的词作为指示词。
优选地,步骤(2-1)中,预训练语言模型使用BERTweet;所述步骤(3-2)中,预训练模型使用RoBERTa。BERTweet和RoBERTa在预训练时使用的语料库不同,但使用相同的训练流程,且模型结构相同,都是基于transformer编码器的多层堆叠,每个编码层包含两个子层:多头自注意力、前馈网络,每个子层都带有残差连接和层标准化。其中,多头自注意力的公式表示如下:
O=[head1,...,headh]Wo
Qi=XWi,Q,Ki=XWi,K,Vi=XWi,V
其中,h为注意力头数,分别为输入输出,/> 为可训练参数。
优选地,步骤(2-4)使用了层间目标动态路由,建立了一级目标指示词与二级目标之间的交互,从不同角度归纳一级目标指示词的语义,实现了目标语义信息从一级向二级的传递。
优选地,步骤(2-8)中,为应对相关性类别不平衡的问题,即各个目标下的不相关文本远多于相关文本,在训练过程中,对训练集中的与所有目标都不相关的文本进行降采样,降采样率为r。预测损失函数采用带权重的二元交叉熵损失函数。为了使二级目标表示更能代表目标语义信息,对其进行正则化。将/>输入分类器,期望分类器能够区分出不同的目标表示,分类器预测的交叉熵损失作为目标正则化损失。因此,目标相关性检测网络的损失可表示如下:
其中,λ1,λ2为三种损失之间的平衡参数,为第i级目标相关性分类损失,/>为目标正则化损失,N为训练样本个数,/>为第i级第k个目标的正例损失权重,计算方式为:
其中,分别为第i级第k个目标的相关文本数和不相关文本数。
可选地,步骤(2)能同时预测文本对两级目标的相关性,若只存在一级目标,则可不采用步骤(2-4)~(2-7),即只检测文本对各个一级目标的相关性。
优选地,步骤(3-1)使用模板将输入映射为含有特殊词[MASK]的自然语言提示,缩小了微调与预训练阶段的差异,有利于激发预训练语言模型中的语言学知识。
优选地,步骤(3-3)中,在对比学习中引入了目标信息,只有倾向性类别相同且目标相同的文本才能作为正例,引导模型更加关注目标信息,从而更好地捕获针对不同目标的倾向性特征。
优选地,步骤(3-4)中,为了利用倾向性类别的顺序性,使用了steak-breaking方法。网络的输出向量不是直接的概率分布,其每一维是一个决策边界,表示该类别的概率在后续所有类别中所占的比重,基于此,将网络输出转换为概率分布。
优选地,步骤(3-5)中,损失函数采用交叉熵损失函数。目标倾向性分析网络的损失可表示如下:
其中,γ为两种损失之间的平衡参数,N为训练样本个数,yj,k,分别为第j条文本属于第k个倾向性类别的真实概率和预测概率。
总而言之,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)群体分类准确率高:模型中首先通过目标相关性检测,排除文本中未涉及的目标,避免了对无关目标的倾向性检测,可以提高检测效率和准确率;目标相关性检测中的层间动态路由以及一级相关性注意力实现了目标语义和相关性预测结果从一级向二级的传递,帮助提升二级相关性检测的准确率;目标倾向性分析中,提示模板和目标感知对比学习的使用,有利于挖掘预训练语言模型中的语言学知识,促使模型关注目标信息,从而提升目标倾向性分析的性能;
(2)能够对抽象的目标概念进行倾向检测:本发明中提出了目标指示词检测方法,基于词频对比从训练语料库中自动提取与目标最为相关的一些词作为指示词,这对于抽象目标场景尤为有效,可以将抽象的目标概念转换为具体的文本描述。同时,与人工定义的目标解释相比,该方法检测出的指示词更符合社交媒体内容对目标概念的描述方式,更有利于模型进行语义匹配和语义理解。
附图说明
图1是本发明实施例中面向社交媒体内容的多目标群体分类方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,本发明提供了一种面向社交媒体内容的多目标群体分类方法,包括目标指示词检测步骤、目标相关性检测步骤和目标倾向性分析步骤,其中目标相关性检测步骤包括文本与目标编码、一级目标嵌入注意力、一级目标相关性分类、层间目标动态路由、二级目标嵌入注意力、一级相关性注意力、二级目标相关性分类、训练和测试网络;目标倾向性分析步骤包括输入模板映射、文本编码、目标感知的对比学习、目标倾向性分类、训练和测试网络。本发明面向社交媒体内容的多目标群体分类方法的整体思路在于,该方法首先从训练语料库中检测每个目标的指示词,将抽象的目标概念转换为具体的文本描述;然后基于文本与目标的语义交互,检测文本与各个目标的相关性,得到文本中所涉及的相关目标;最后基于提示模板和对比学习,分析文本对每个相关目标的倾向性。
如图1所示,本发明面向社交媒体内容的多目标群体分类方法,包括以下步骤:
(1)目标指示词检测步骤:使用基于概率统计学的方法,从训练语料库中自动检测与各个目标最相关的一些词,从而将抽象的目标概念转换为具体的词汇描述。该步骤包括以下子步骤:
(1-1)对训练语料库中的所有文本进行分词;
(1-2)记两级目标的集合为 T1,T2分别为一级、二级目标集合,n1,n2分别为一级、二级目标的个数。对l(l=1,2)级目标从训练语料库中选择与/>相关的文本组成语料库cr,其余与/>不相关的文本组成语料库cu;
(1-3)对cr和cu中的所有词进行排序,一个词在cr中的重要性越高、在cu中的重要性越低,则排序位置越靠前,取排名前k的词作为目标的指示词。
(2)如图1所示,目标相关性检测步骤:由于一条文本通常只会涉及T中的部分目标,因此该步骤检测文本与每个目标的相关性,得到文本在每一级的相关目标和不相关目标/>对于每条文本,目标相关性检测包括以下步骤:
(2-1)文本与目标编码:使用预训练语言模型对文本和目标进行编码,得到文本和目标的向量化表示,包括以下子步骤:
(2-1-1)将文本和目标转换为预训练语言模型的输入形式。对于文本,在文本的前后添加特殊词:
[CLS]文本[SEP]
对于目标,使用指示词的组合作为目标的文本描述,并在每个指示词之间添加特殊词:
[CLS]指示词1[SEP]指示词2[SEP]…[SEP]指示词k[SEP]
(2-1-2)转换后的文本和目标分别输入两个预训练语言模型BERTweet,捕获深度上下文语义特征;
(2-1-3)从预训练语言模型最后一层提取文本中每个词的表示(m为文本中词的个数,d为表示向量维度),取[CLS]对应的向量作为目标表示/> 此外,提取一级目标每个指示词的表示/>
(2-2)一级目标嵌入注意力:建立文本与一级目标的语义交互,得到一级目标感知的文本表示。对于每条文本,一级目标嵌入注意力包括以下子步骤:
(2-2-1)计算文本中词与一级目标的余弦相似度矩阵G中每个元素
(2-2-2)在G上进行卷积,衡量长度为2r+1的文本窗口与目标的相关程度。对以位置l为中心,长为2r+1的文本窗口Gl-r:l+r,计算
ul=ReLU(wfGl-r:l+r+bf)
其中,为神经网络可学习参数,/>提取ul中的最大值:
vl=MaxPooling(ul)
以步长1移动文本窗口,得到
(2-2-3)对v进行归一化得到文本中每个词的注意力权重,根据权重对词的表示向量做加权求和,得到一级目标感知的文本表示:
α=softmax(v)
(2-3)一级目标相关性分类:将一级目标感知的文本表示输入两层的前馈网络,并通过sigmoid函数得到文本与每个一级目标相关的概率:
其中,均为可学习参数,f为激活函数,/> 表示文本与第i个一级目标相关的概率,则/>
(2-4)层间目标动态路由:二级目标是所属一级目标的不同方面,一级目标的指示词也可看作是从不同角度描述对应的目标,因此一级目标的指示词与对应的二级目标之间存在关联,通过层间动态路由建立二者的信息传递,包括以下子步骤:
(2-4-1)初始化由动态路由得到的二级目标嵌入一级目标的第i个指示词与该一级目标下的第j个二级目标之间的耦合系数bij=0;
(2-4-2)用一级目标指示词嵌入pi与对应二级目标嵌入的向量点积更新bij:
(2-4-3)使用softmax函数对bij进行归一化,
(2-4-4)以βij为权重对一级目标指示词嵌入做加权和,得到二级目标嵌入的中间表示:
(2-4-5)将ej经过非线性squashing函数得到二级目标嵌入:
(2-4-6)重复步骤(2-4-2)~(2-4-5)z次,最终的即为由动态路由得到的二级目标嵌入。
(2-5)二级目标嵌入注意力:现在有两种二级目标嵌入,一种是步骤(2-1)中指示词经过编码得到的一种是步骤(2-4)中由层间目标动态路由得到的/>对这两种二级目标嵌入,分别执行与步骤(2-2)类似的操作,建立文本与二级目标之间的语义交互,得到两种二级目标感知的文本表示/>和/>
(2-6)一级相关性注意力:由于一级目标数量较少,相关性预测更容易,准确率较高,因此可以将一级相关性预测结果引入二级相关性预测的过程,帮助提升二级相关性预测的准确率。使用一级相关性注意力实现上述动机,包括以下子步骤:
(2-6-1)以步骤(2-3)得到的一级目标相关概率为权重,对一级目标嵌入做加权和:/>
(2-6-2)计算d与文本中每个词嵌入的余弦相似度,并使用softmax函数做归一化,得到每个词的注意力权重αi:
(2-6-3)根据每个词的注意力权重对文本词嵌入做加权求和操作,得到一级相关性预测结果感知的文本表示:
(2-7)二级目标相关性分类:融合两种二级目标感知的文本表示 以及一级相关性预测结果感知的文本表示/>使用前馈神经网络,预测二级目标相关性,包括以下子步骤:
(2-7-1)使用门控机制计算三种文本表示对最终预测的贡献程度:
其中,为可学习参数;
(2-7-2)基于三种文本表示的门控系数计算最终的文本表示:
其中,⊙表示向量元素对位相乘;
(2-7-3)以文本表示为输入,使用前馈神经网络预测文本与每个二级目标相关的概率:
其中,均为可学习参数,σ为激活函数,/> 表示文本与第i个二级目标相关的概率,则/>
(2-8)训练和测试网络:基于预测的目标相关概率和真实的目标相关概率y1,y2构建损失函数,然后使用BP算法训练网络以最小化损失函数。训练完成后,输入测试集中的文本从而得到各个测试样本的相关目标。
(3)如图1所示,目标倾向性分析步骤:
使用基于提示(prompt)模板的文本编码方式,预测文本对中每个二级相关目标的倾向性。对于每条文本,目标倾向性分析包括以下子步骤:
(3-1)输入模板映射:给定一个模板和一个相关目标,将输入文本xinp和相关目标指示词xind映射为提示文本xprompt:/>
(3-2)文本编码:将提示文本xprompt输入预训练语言模型RoBERTa,捕获深度上下文语义特征,从预训练语言模型最后一层提取[MASK]对应的隐藏向量作为文本表示:
s=h[MASK]
(3-3)目标感知的对比学习:
为了使相同倾向性类别文本的向量表示尽量接近,不同倾向性类别文本的向量表示尽量远离,同时促使模型更加关注目标信息,进行目标感知的对比学习。对于一个训练batch内的每一条文本xi,目标感知的对比学习包括以下子步骤:
(3-3-1)给定训练batch内,与xi的倾向性类别相同且目标相同的文本作为xi的正例,与xi的倾向性类别不同或目标不同的文本作为xi的负例;
(3-3-2)记xi的目标为ti,向量表示为si,计算目标感知的对比学习损失:
其中,B为训练batch大小,P(i)={j|i≠j,ti=tj,yi=yj},B(i)={1,2,...,B}\{i},τ为温度系数;
(3-4)目标倾向性分类:基于步骤(3-2)得到的文本表示,使用前馈网络预测文本对给定目标的倾向性类别。为了利用倾向性类别的顺序性,在预测过程中使用了steak-breaking方法。
对于每一条文本,目标倾向性分类包括以下子步骤:
(3-4-1)将文本表示输入前馈网络,并经过sigmoid函数:
a=σ(W2f(W1s+b1)+b2)
其中,W1,W2,b1,b2为可学习参数,f为激活函数,a的每一维ai是一个决策边界,表示第i类的概率在后续所有类别({j|j≥i})的概率中所占的比例;
(3-4-2)使用steak-breaking方法将前馈网络的输出转换为概率分布
表示文本对给定目标的倾向性属于第i类的概率;
(3-5)训练和测试网络:基于预测的倾向性类别概率分布和真实倾向性标签构建损失函数,并联合目标感知的对比学习损失/>使用BP算法训练网络以最小化损失函数。训练完成后,输入测试集中的文本从而得到各个测试样本对各个相关目标的倾向性类别。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种面向社交媒体内容的多目标群体分类方法,其特征在于,包括目标指示词检测步骤、目标相关性检测步骤和目标倾向性分析步骤,其中目标相关性检测步骤包括文本与目标编码、一级目标嵌入注意力、一级目标相关性分类、层间目标动态路由、二级目标嵌入注意力、一级相关性注意力、二级目标相关性分类、训练和测试网络;目标倾向性分析步骤包括输入模板映射、文本编码、目标感知的对比学习、目标倾向性分类、训练和测试网络,其中:
(1)目标指示词检测步骤:使用基于概率统计学的方法,从训练语料库中自动检测与各个目标最相关的一些词,从而将抽象的目标概念转换为具体的词汇描述,具体包括以下子步骤:
(1-1)对训练语料库中的所有文本进行分词;
(1-2)记两级目标的集合为 T1,T2分别为一级、二级目标集合,n1,n2分别为一级、二级目标的个数;对l(l=1,2)级目标/>从训练语料库中选择与/>相关的文本组成语料库cr,其余与/>不相关的文本组成语料库cu;
(1-3)对cr和cu中的所有词进行排序,一个词在cr中的重要性越高、在cu中的重要性越低,则排序位置越靠前,取排名前k的词作为目标的指示词;
(2)目标相关性检测步骤:由于一条文本通常只会涉及T中的部分目标,因此该步骤检测文本与每个目标的相关性,得到文本在每一级的相关目标和不相关目标对于每条文本,目标相关性检测包括以下子步骤:
(2-1)文本与目标编码:使用预训练语言模型对文本和目标进行编码,得到文本中每个词的表示m为文本中词的个数,d为表示向量维度;目标表示/>以及一级目标每个指示词的表示文本和目标的向量化表示;
(2-2)一级目标嵌入注意力:以文本表示xi、一级目标表示为输入,通过余弦相似度计算和卷积操作建立文本与一级目标的语义交互,得到一级目标感知的文本表示s1;
(2-3)一级目标相关性分类:将一级目标感知的文本表示输入两层的前馈网络,并通过sigmoid函数得到文本与每个一级目标相关的概率:
其中,均为可学习参数,f为激活函数,/> 表示文本与第i个一级目标相关的概率,则/>(2-4)层间目标动态路由:二级目标是所属一级目标的不同方面,一级目标的指示词看作是从不同角度描述对应的目标,因此一级目标的指示词与对应的二级目标之间存在关联;以一级目标指示词表示pi和二级目标表示/>为输入,通过层间动态路由建立二者的信息传递,得到新的二级目标表示/>
(2-5)二级目标嵌入注意力:现在有两种二级目标嵌入,一种是步骤(2-1)中指示词经过编码得到的一种是步骤(2-4)中由层间目标动态路由得到的/>对这两种二级目标嵌入,分别使用目标嵌入注意力建立与文本的语义交互,得到两种二级目标感知的文本表示/>和/>
(2-6)一级相关性注意力:由于一级目标数量较少,相关性预测更容易,准确率较高,因此将一级相关性预测结果引入二级相关性预测的过程,帮助提升二级相关性预测的准确率;使用一级相关性注意力实现上述动机,以步骤(2-3)得到的一级目标相关概率步骤(2-1)得到的一级目标表示/>和文本词表示xi为输入,将/>的加权和作为查询、xi作为键和值,经过注意力操作,得到一级相关性预测结果感知的文本表示/>
(2-7)二级目标相关性分类:应用门控机制融合两种二级目标感知的文本表示以及一级相关性预测结果感知的文本表示/>然后使用前馈神经网络,预测二级目标相关概率/>
(2-8)训练和测试网络:基于预测的目标相关概率和真实的目标相关概率y1,y2构建损失函数,然后使用BP算法训练网络以最小化损失函数;训练完成后,输入测试集中的文本从而得到各个测试样本的相关目标;
(3)目标倾向性分析步骤:使用基于提示模板的文本编码方式,预测文本对中每个二级相关目标的倾向性;对于每条文本,目标倾向性分析包括以下子步骤:
(3-1)输入模板映射:给定一个模板和一个相关目标,将输入文本xinp和相关目标指示词xind映射为提示文本xprompt:
(3-2)文本编码:将提示文本xprompt输入预训练语言模型RoBERTa,捕获深度上下文语义特征,从预训练语言模型最后一层提取[MASK]对应的隐藏向量作为文本表示:
s=h[MASK]
(3-3)目标感知的对比学习:为了使相同倾向性类别文本的向量表示尽量接近,不同倾向性类别文本的向量表示尽量远离,同时促使模型更加关注目标信息,进行目标感知的对比学习;对于一个训练batch内的每一条文本xi,记其目标为ti,与xi的倾向性类别相同且目标相同的文本作为xi的正例,与xi的倾向性类别不同或目标不同的文本作为xi的负例,计算对比学习损失函数
其中,B为训练batch大小,si为文本xi的向量表示,P(i)={j|i≠j,ti=tj,yi=yj},B(i)={1,2,…,B}\{i},τ为温度系数;
(3-4)目标倾向性分类:基于步骤(3-2)得到的文本表示s,使用前馈网络预测文本对给定目标的倾向性类别,将网络输出转换为概率分布(3-5)训练和测试网络:基于预测的倾向性类别概率分布/>和真实倾向性标签构建损失函数,并联合目标感知的对比学习损失使用BP算法训练网络以最小化损失函数,训练完成后,输入测试集中的文本从而得到各个测试样本对各个相关目标的倾向性类别。
2.如权利要求1所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(1-3)中,使用带有Dirichlet先验的加权对数比方法对语料库cr和cu中的词进行排序,具体步骤如下:
使用带有Dirichlet先验的加权对数比计算词w在两个语料库中的使用频率差异:
其中,nr为语料库cr中词的数量,nu语料库cu中词的数量,分别为词w在语料库cr,cu中出现的次数;n0为背景语料库中词的数量,/>为词w在背景语料库中出现的次数;
计算对数比的方差,最后计算词w的Z分数:
Zw越高说明词w在语料库cr中越重要,而在语料库cu中越不重要;根据Zw对语料库cr,cu中的所有词进行排序,取排名前k的词作为指示词。
3.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-1)包括以下子步骤:
(2-1-1)将文本和目标转换为预训练语言模型的输入形式;对于文本,在文本的前后添加特殊词:
[CLS]文本[SEP]
对于目标,使用指示词的组合作为目标的文本描述,并在每个指示词之间添加特殊词:
[CLS]指示词1[SEP]指示词2[SEP]…[SEP]指示词k[SEP]
(2-1-2)转换后的文本和目标分别输入两个预训练语言模型BERTweet,捕获深度上下文语义特征;
(2-1-3)从预训练语言模型最后一层提取文本中每个词的表示m为文本中词的个数,d为表示向量维度;取[CLS]对应的向量作为目标表示/> 此外,提取一级目标每个指示词的表示/>
4.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-2)和步骤(2-5)中的目标嵌入注意力包括以下子步骤:
(2-2-1)计算文本中词表示与目标表示的余弦相似度矩阵G中每个元素
(2-2-2)在G上进行卷积,衡量长度为2r+1的文本窗口与目标的相关程度;对以位置l为中心,长为2r+1的文本窗口Gl-r:l+r,计算
ul=ReLU(wfGl-r:l+r+bf)
其中,为神经网络可学习参数,/>提取ul中的最大值:
vl=MaxPooling(ul)
以步长1移动文本窗口,得到
(2-2-3)对v进行归一化得到文本中每个词的注意力权重,根据权重对词的表示向量做加权求和,得到目标感知的文本表示:
α=softmax(v),
5.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-4)包括以下子步骤:
(2-4-1)初始化由动态路由得到的二级目标嵌入一级目标的第i个指示词与该一级目标下的第j个二级目标之间的耦合系数bij=0;
(2-4-2)用一级目标指示词嵌入pi与对应二级目标嵌入的向量点积更新bij:
(2-4-3)使用softmax函数对bij进行归一化,
(2-4-4)以βij为权重对一级目标指示词嵌入做加权和,得到二级目标嵌入的中间表示:
(2-4-5)将ej经过非线性squashing函数得到二级目标嵌入:
(2-4-6)重复步骤(2-4-2)~(2-4-5)z次,最终的即为由动态路由得到的二级目标嵌入。
6.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-6)包括以下子步骤:
(2-6-1)以步骤(2-3)得到的一级目标相关概率为权重,对一级目标嵌入做加权和:
(2-6-2)计算d与文本中每个词嵌入的余弦相似度,并使用softmax函数做归一化,得到每个词的注意力权重αi:
(2-6-3)根据每个词的注意力权重对文本词嵌入做加权求和操作,得到一级相关性预测结果感知的文本表示:
7.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-7)包括以下子步骤:
(2-7-1)使用门控机制计算三种文本表示对最终预测的贡献程度:
其中,为可学习参数;
(2-7-2)基于三种文本表示的门控系数计算最终的文本表示:
其中,⊙表示向量元素对位相乘;
(2-7-3)以文本表示为输入,使用前馈神经网络预测文本与每个二级目标相关的概率:
其中,均为可学习参数,σ为激活函数,/> 表示文本与第i个二级目标相关的概率,则/>
8.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(2-8)中,为应对相关性类别不平衡的问题,即不相关文本远多于相关文本,在训练过程中,对训练集中的与所有目标都不相关的文本进行降采样,降采样率为r;预测损失函数采用带权重的二元交叉熵损失函数;为了使二级目标表示更能代表目标语义信息,对其进行正则化;将/>输入分类器,期望分类器能够区分出不同的目标表示,分类器预测的交叉熵损失作为目标正则化损失;目标相关性检测网络的损失表示如下:
其中,λ1,λ2为三种损失之间的平衡参数,为第i级目标相关性分类损失,/>为目标正则化损失,N为训练样本个数,/>为第i级第k个目标的正例损失权重,计算方式为:
其中,分别为第i级第k个目标的相关文本数和不相关文本数。
9.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(3-4)包括以下子步骤:
(3-4-1)将文本表示s输入前馈网络,并经过sigmoid函数:
a=σ(W2f(W1s+b1)+b2)
其中,W1,W2,b1,b2为可学习参数,f为激活函数,a的每一维ai是一个决策边界,表示第i类的概率在后续所有类别({j|j≥i})的概率中所占的比例;
(3-4-2)使用steak-breaking方法将前馈网络的输出转换为概率分布
其中,表示文本对给定目标的倾向性属于第i类的概率。
10.如权利要求1或2所述的面向社交媒体内容的多目标群体分类方法,其特征在于,所述步骤(3-5)中,损失函数采用交叉熵损失函数;目标倾向性分析网络的损失表示如下:
其中,γ为两种损失之间的平衡参数,N为训练样本个数,分别为第j条文本属于第k个倾向性类别的真实概率和预测概率。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2023105956383 | 2023-05-24 | ||
CN202310595638 | 2023-05-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117094835A true CN117094835A (zh) | 2023-11-21 |
Family
ID=88776773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311035552.1A Pending CN117094835A (zh) | 2023-05-24 | 2023-08-16 | 面向社交媒体内容的多目标群体分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117094835A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786520A (zh) * | 2024-02-23 | 2024-03-29 | 新石器慧通(北京)科技有限公司 | 目标感知模型的训练方法和应用、无人车和存储介质 |
-
2023
- 2023-08-16 CN CN202311035552.1A patent/CN117094835A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786520A (zh) * | 2024-02-23 | 2024-03-29 | 新石器慧通(北京)科技有限公司 | 目标感知模型的训练方法和应用、无人车和存储介质 |
CN117786520B (zh) * | 2024-02-23 | 2024-04-30 | 新石器慧通(北京)科技有限公司 | 目标感知模型的训练方法和应用、无人车和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111241837B (zh) | 基于对抗迁移学习的盗窃案件法律文书命名实体识别方法 | |
CN112231472B (zh) | 融入领域术语词典的司法舆情敏感信息识别方法 | |
CN113626589B (zh) | 一种基于混合注意力机制的多标签文本分类方法 | |
CN111597340A (zh) | 一种文本分类方法及装置、可读存储介质 | |
CN113742733B (zh) | 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置 | |
CN113255366B (zh) | 一种基于异构图神经网络的方面级文本情感分析方法 | |
CN114970508A (zh) | 基于数据多源融合的电力文本知识发现方法及设备 | |
CN114818703B (zh) | 基于BERT语言模型和TextCNN模型的多意图识别方法及系统 | |
CN117094835A (zh) | 面向社交媒体内容的多目标群体分类方法 | |
CN112417132A (zh) | 一种利用谓宾信息筛选负样本的新意图识别方法 | |
CN117390141B (zh) | 一种农业社会化服务质量用户评价数据分析方法 | |
CN117094291B (zh) | 基于智能写作的自动新闻生成系统 | |
CN113836934A (zh) | 基于标签信息增强的文本分类方法和系统 | |
CN111611375B (zh) | 一种基于深度学习和转折关系的文本情感分类方法 | |
CN116450848B (zh) | 一种基于事理图谱的计算思维水平评估方法、装置及介质 | |
CN112434512A (zh) | 一种结合上下文语境的新词确定方法及装置 | |
CN112015760A (zh) | 基于候选答案集重排序的自动问答方法、装置和存储介质 | |
CN116663539A (zh) | 基于RoBERTa和指针网络的中文实体与关系联合抽取方法及系统 | |
CN115204143B (zh) | 一种基于prompt的文本相似度计算方法及系统 | |
CN115098681A (zh) | 一种基于有监督对比学习的开放服务意图检测方法 | |
CN115577080A (zh) | 一种问题回复匹配方法、系统、服务器及存储介质 | |
CN111813924B (zh) | 基于可扩展动态选择与注意力机制的类别检测算法及系统 | |
CN114595324A (zh) | 电网业务数据分域的方法、装置、终端和非暂时性存储介质 | |
CN114357166A (zh) | 一种基于深度学习的文本分类方法 | |
CN113505603A (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 |