长文本的舆情分类优化方法与流程

专利查询2023-11-11  112



1.本发明涉及文本舆情分类技术领域,尤其涉及长文本的舆情分类优化方法。


背景技术:

2.在对文字较多、篇幅较长的文本进行舆情分类时,目前业内常用的bert模型往往给出“中性”的判断。这是因为一方面,在篇幅较长的内容中,确实往往大多的段落都是偏中性的客观陈述,而少量表达舆情倾向的文本片段只是夹杂在其中,即使人工阅读也不容易发现;另一方面,bert模型在进行文本舆情分类时,只是从文章的整体给出舆情倾向的判断,可以认为是对整篇文字的舆情倾向的加权平均,并且文章越长则越有可能拉低判断为正向或负向的可能性。从而导致了在对长文本进行舆情分类时,忽略了其中夹带着的重要的舆情片段,给出整体是中性的舆情判断。
3.具体来说,bert模型是像谷歌、腾讯、华为等大公司利用其积累的海量文本数据和大规模的计算服务器集群,通过构建有标注的训练样本(即从一段文本中随机“掩盖”掉某个字符,用原有的正确字符作为正样本的目标值,用随机选取的其他字符作为负样本的目标值),用多层的语义向量模型(深度学习模型)通过预测被掩盖掉的真实字符,来学习各个字符通常出现在怎样的上下文环境中,也就是各个字符的语义含义(用数百维的浮点数向量表示)。训练得到的模型就称为“预训练”(pre-trained)模型,一般包含数千到上万个常用字符,用数百维的浮点数向量表示其语义含义,一般支持最多12层的叠加深度。
4.该预训练模型作为下游各项自然语言任务(文本分类、命名实体识别、关系提取、文案创作等)的基础模型。下游的各项自然语言任务,利用自有的、少量的训练样本,通过“微调”(fine tuning)前述的预训练模型,也就是通过预测误差调整各个字符(组合)的语义向量取值,来学习当前任务的上下文环境和字符语义关系等。并通过在bert模型的基础上添加额外的网络连接层(例如在舆情分类任务中添加正、负、中三个输出的网络层),来将从bert(微调)模型得到的语义向量映射到目标问题的解空间中。对三分类的舆情判断,就是正、负、中三种舆情类别,并得到相应的三个取值在[0,1]的概率值。其中概率取值最大的类别就是对当前输入文本的舆情判断,其取值可视为当前类别的概率或置信度。
[0005]
这里bert模型,包括预训练和微调,输出的语义向量(数组)的数据格式一般为:第一个向量是整段输入文章的语义向量(这也是下游的舆情分类任务通常使用的语义向量),后续的n个向量为当前输入文章的各个字符的语义向量(包括未知字符、占位字符等)。上述n+1个语义向量的维度一致,一般为768维。
[0006]
通过实验发现,在文本舆情分类的应用中,经过少量舆情样本的微调后,在上述的后n个字符中(排除未知和占位等无意义的字符),有舆情倾向的文字(组合)的语义向量相比微调前(预训练模型)有了较明显的变化,即向量距离相比其他没有舆情倾向的文字(组合)发生了较大的变化。
[0007]
通过该规律性的现象,我们将其应用在针对长文本的舆情分类任务中,从长文本中提取出微调前后有较大语义向量距离变化的文本片段,作为表达作者舆情倾向的文本
段,避免因为文字过多而导致整体为中性的判断,从而忽略了用户的舆情信息。


技术实现要素:

[0008]
本发明的目的在于:为了解决上述问题,而提出的长文本的舆情分类优化方法。
[0009]
为了实现上述目的,本发明采用了如下技术方案:
[0010]
长文本的舆情分类优化方法,包括以下步骤:
[0011]
a.对输入的文本先用传统的bert微调后的模型进行舆情判断,对判断为中性舆情的文本,再判断该文本的长度,是否超过设置的长度阈值;
[0012]
b.不超过就维持原始的舆情判断结果,超过则进行更细致的舆情分析;
[0013]
c.将当前文本同时分别发给预训练和微调后的bert模型,得到当前文本中的各个字符在微调前后的语义向量;
[0014]
d.从中对比找出语义向量发生较大距离变化的字符,即有舆情倾向的字符;
[0015]
e.并根据微调后模型的语义向量,提取跟上述舆情字符位置邻接且语义距离较近的字符,以便提取出带有舆情倾向且语义完整的文本片段;
[0016]
f.提取出的舆情片段用微调后的舆情模型进行舆情分类;
[0017]
g.结合原文长度和全文原始的舆情得分,给出最终的舆情判断信息。
[0018]
优选地,所述a步骤中的阈值为300。
[0019]
优选地,所述d步骤中的过程为:
[0020]
逐个遍历输入文本的各个字符,分别取出当前字符在预训练和微调后的语义向量,并计算这两个向量的余弦距离,再跟公式1的计算取值对比,小于则认为当前字符在微调前后有较大的语义变化,判断为带有舆情倾向;否则视为没有舆情倾向,公式1:1

1/log(n/m)其中n是当前文本的字符数量;m为系数,调节对语义距离变化的敏感度,目前设置为4,提取出语义距离变化较大的字符,和其在原文中的位置索引。
[0021]
优选地,所述e步骤中的过程中为:
[0022]
从d步骤中提取的舆情字符及在原文中的位置,再分别向左右两端进行扩展;对位置已经连在一起的舆情字符串,就从该字符串的第一和最后一个字符位置开始,分别向左和右进行遍历扩展,对新遍历到的字符,判断该字符是否是标点符号或其他停止字符,如果是就可以停止对这一侧的遍历扩展;如果当前这一侧的遍历长度超过了设置的遍历长度的阈值,也停止遍历;否则计算当前新遍历到的字符,跟已经在舆情片段中且相邻接的字符的语义距离,这里只用微调后的语义向量即可,同样使用向量余弦距离,可以用固定距离阈值判断该新遍历到的字符是否应加入到当前的舆情片段中,目前邻接字符的语义距离阈值设置为 0.75,若语义的余弦相似度大于0.75,则认为该新遍历到的字符跟邻接的舆情片段字符的含义相近,或经常一起组合出现,应作为固定搭配加入到最终提取的舆情片段中;否则,认为该字符属于另一语义片段,跟当前提取的舆情片段的含义无关,应将其排除在当前舆情片段之外,并停止这一侧的遍历扩展。
[0023]
优选地,所述g步骤中的过程为:
[0024]
若原文的原始的三分类舆情的取值为(pn,pm,pp),其中pn,pm,pp分别为判断为负向、中性、正向的概率。若原文的原始舆情判断为中性,且为长文本,则按e步骤中提取出的k个舆情片段的舆情取值为(pni,pmi,ppi),其中 pni,pmi,ppi分别为第i个舆情片段的判断
为负向、中性、正向的概率,i的取值范围[1,k];
[0025]
则提取的k个舆情片段,按长度加权累加的舆情值为:
[0026][0027]
其中,pns,pms,pps分别是k个舆情片段加权累加后的负、中、正的舆情值,li为当前舆情片段的字符长度,n为原文的字符长度;
[0028]
再将其累加到原文原始的舆情取值中,得到:
[0029]
(pnr,pmr,ppr)=(pn+pns,pm+pms,pp+pps)
[0030]
为了取值统一到[0,1]范围内,可以再归一化为:
[0031]
(pn,pm,pp)=(pnr/(pnr+pmr+ppr),pmr/(pnr+pmr+ppr),ppr/(pnr+pmr+p pr))。
[0032]
综上所述,由于采用了上述技术方案,本发明的有益效果是:
[0033]
本技术中,利用bert模型在微调前后的字符语义的变化,将其应用于针对长文本的舆情分类任务中;通过识别有舆情倾向的文本片段,减少整体被判断为中性的概率,更好的识别出用户的细节舆情倾向。
附图说明
[0034]
图1示出了根据本发明实施例提供的a步骤流程示意图;
[0035]
图2示出了根据本发明实施例提供的b-g步骤流程示意图。
具体实施方式
[0036]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0037]
请参阅图1-2,本发明提供一种技术方案:
[0038]
长文本的舆情分类优化方法,包括以下步骤:
[0039]
a.对输入的文本先用传统的bert微调后的模型进行舆情判断,对判断为中性舆情的文本,再判断该文本的长度,是否超过设置的长度阈值,阈值为300,即文本是否有300个字符的长度;
[0040]
b.不超过就维持原始的舆情判断结果,超过则进行更细致的舆情分析;
[0041]
c.将当前文本同时分别发给预训练和微调后的bert模型,得到当前文本中的各个字符在微调前后的语义向量;
[0042]
d.从中对比找出语义向量发生较大距离变化的字符,即有舆情倾向的字符,
[0043]
d步骤中的过程为,逐个遍历输入文本的各个字符,分别取出当前字符在预训练和微调后的语义向量,并计算这两个向量的余弦距离(取值范围在[0,1],越接近1越相似,越接近0越不相似)。再跟公式1的计算取值对比,小于则认为当前字符在微调前后有较大的语义变化,判断为带有舆情倾向;否则视为没有舆情倾向,公式1:1

1/log(n/m)其中n是当前文本的字符数量;m为系数,调节对语义距离变化的敏感度,目前设置为4,提取出语义距离变化较大的字符,和其在原文中的位置索引,以便按字符位置合并和向两端扩展,得到语义
完整的文本片段;
[0044]
e.并根据微调后模型的语义向量,提取跟上述舆情字符位置邻接且语义距离较近的字符,以便提取出带有舆情倾向且语义完整的文本片段;
[0045]
从d步骤中提取的舆情字符及在原文中的位置,再分别向左右两端进行扩展;对位置已经连在一起的舆情字符串,就从该字符串的第一和最后一个字符位置开始,分别向左和右进行遍历扩展;
[0046]
对新遍历到的字符,判断该字符是否是标点符号或其他停止字符,如果是就可以停止对这一侧的遍历扩展;如果当前这一侧的遍历长度超过了设置的遍历长度的阈值(例如8),也停止遍历否则计算当前新遍历到的字符,跟已经在舆情片段中且相邻接的字符的语义距离;
[0047]
这里只用微调后的语义向量即可,同样使用向量余弦距离。可以用固定距离阈值判断该新遍历到的字符是否应加入到当前的舆情片段中,目前邻接字符的语义距离阈值设置为0.75;
[0048]
若语义的余弦相似度大于0.75,则认为该新遍历到的字符跟邻接的舆情片段字符的含义相近,或经常一起组合出现,应作为固定搭配加入到最终提取的舆情片段中;否则,认为该字符属于另一语义片段,跟当前提取的舆情片段的含义无关,应将其排除在当前舆情片段之外,并停止这一侧的遍历扩展。
[0049]
f.提取出的舆情片段用微调后的舆情模型进行舆情分类;
[0050]
g.结合原文长度和全文原始的舆情得分,给出最终的舆情判断信息;
[0051]
若原文的原始的三分类舆情的取值为(pn,pm,pp),其中pn,pm,pp分别为判断为负向、中性、正向的概率。若原文的原始舆情判断为中性,且为长文本,则按e步骤中提取出的k(k》=0)个舆情片段的舆情取值为(pni,pmi,ppi),其中pni,pmi,ppi分别为第i个舆情片段的判断为负向、中性、正向的概率。i的取值范围[1,k]。
[0052]
则提取的k个舆情片段,按长度加权累加的舆情值为:
[0053][0054]
其中,pns,pms,pps分别是k个舆情片段加权累加后的负、中、正的舆情值,li为当前舆情片段的字符长度,n为原文的字符长度。
[0055]
再将其累加到原文原始的舆情取值中,得到:
[0056]
(pnr,pmr,ppr)=(pn+pns,pm+pms,pp+pps)
[0057]
为了取值统一到[0,1]范围内,可以再归一化为:
[0058]
(pn,pm,pp)=(pnr/(pnr+pmr+ppr),pmr/(pnr+pmr+ppr),ppr/(pnr+pmr+p pr))。
[0059]
实验分析:
[0060]
通过数据对比实验,在针对长文本的舆情分类中,该策略可以通过分析其中包含的舆情片段,较好的给出更有区分度的整体舆情取值;并通过返回其中包含的具体舆情片段,更好的识别出用户表达的舆情倾向等信息。
[0061]
部分数据(长度截取)示例如下:
[0062]
[0063]
[0064][0065][0066]
可以看出,上述例子中原文的原始舆情取值更偏中性(判断为中性的取值更大);
但经过本方法提取出细节的舆情片段,并将这些舆情片段的舆情值加权累加到最终的舆情结果中后,整体的舆情取值和判断结果都有了更明显的舆情倾向 (正向或负向的取值更大)。并且,根据提取的舆情片段,也有助于更好的挖掘用户细节的舆情倾向,丰富数据洞察的结果维度。
[0067]
实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

技术特征:
1.长文本的舆情分类优化方法,其特征在于,包括以下步骤:a.对输入的文本先用传统的bert微调后的模型进行舆情判断,对判断为中性舆情的文本,再判断该文本的长度,是否超过设置的长度阈值;b.不超过就维持原始的舆情判断结果,超过则进行更细致的舆情分析;c.将当前文本同时分别发给预训练和微调后的bert模型,得到当前文本中的各个字符在微调前后的语义向量;d.从中对比找出语义向量发生较大距离变化的字符,即有舆情倾向的字符;e.并根据微调后模型的语义向量,提取跟上述舆情字符位置邻接且语义距离较近的字符,以便提取出带有舆情倾向且语义完整的文本片段;f.提取出的舆情片段用微调后的舆情模型进行舆情分类;g.结合原文长度和全文原始的舆情得分,给出最终的舆情判断信息。2.根据权利要求1所述的长文本的舆情分类优化方法,其特征在于,所述a步骤中的阈值为300。3.根据权利要求1所述的长文本的舆情分类优化方法,其特征在于,所述d步骤中的过程为:逐个遍历输入文本的各个字符,分别取出当前字符在预训练和微调后的语义向量,并计算这两个向量的余弦距离,再跟公式1的计算取值对比,小于则认为当前字符在微调前后有较大的语义变化,判断为带有舆情倾向,否则视为没有舆情倾向;所述公式1具体为:1

1/log(n/m)其中n是当前文本的字符数量;m为系数,调节对语义距离变化的敏感度,目前设置为4,提取出语义距离变化较大的字符,和其在原文中的位置索引。4.根据权利要求1所述的长文本的舆情分类优化方法,其特征在于,所述e步骤中的过程中为:从d步骤中提取的舆情字符及在原文中的位置,再分别向左右两端进行扩展;对位置已经连在一起的舆情字符串,就从该字符串的第一和最后一个字符位置开始,分别向左和右进行遍历扩展,对新遍历到的字符,判断该字符是否是标点符号或其他停止字符,如果是就可以停止对这一侧的遍历扩展;如果当前这一侧的遍历长度超过了设置的遍历长度的阈值,也停止遍历;否则计算当前新遍历到的字符,跟已经在舆情片段中且相邻接的字符的语义距离,使用向量余弦距离,可以用固定距离阈值判断该新遍历到的字符是否应加入到当前的舆情片段中;所述邻接字符的语义距离阈值设置为0.75,若语义的余弦相似度大于0.75,则认为该新遍历到的字符跟邻接的舆情片段字符的含义相近,或经常一起组合出现,应作为固定搭配加入到最终提取的舆情片段中;否则,认为该字符属于另一语义片段,跟当前提取的舆情片段的含义无关,应将其排除在当前舆情片段之外,并停止这一侧的遍历扩展。5.根据权利要求1所述的长文本的舆情分类优化方法,其特征在于,所述g步骤中的过程为:若原文的原始的三分类舆情的取值为(pn,pm,pp),其中pn,pm,pp分别为判断为负向、中性、正向的概率;若原文的原始舆情判断为中性,且为长文本,则按e步骤中提取出的k个舆情片段的舆情取值为(pni,pmi,ppi),其中pni,pmi,ppi分别为第i个舆情片段的判断为负向、中性、正向的概率,i的取值范围[1,k];
则提取的k个舆情片段,按长度加权累加的舆情值为:其中,pns,pms,pps分别是k个舆情片段加权累加后的负、中、正的舆情值,li为当前舆情片段的字符长度,n为原文的字符长度;再将其累加到原文原始的舆情取值中,得到:(pnr,pmr,ppr)=(pn+pns,pm+pms,pp+pps)为了取值统一到[0,1]范围内,可以再归一化为:(pn,pm,pp)=(pnr/(pnr+pmr+ppr),pmr/(pnr+pmr+ppr),ppr/(pnr+pmr+ppr))。

技术总结
本发明公开了长文本的舆情分类优化方法,包括以下步骤:a.对输入的文本先用传统的bert微调后的模型进行舆情判断,对判断为中性舆情的文本,再判断该文本的长度,是否超过设置的长度阈值;b.不超过就维持原始的舆情判断结果,超过则进行更细致的舆情分析;c.将当前文本同时分别发给预训练和微调后的bert模型,得到当前文本中的各个字符在微调前后的语义向量。本申请中,利用bert模型在微调前后的字符语义的变化,将其应用于针对长文本的舆情分类任务中;通过识别有舆情倾向的文本片段,减少整体被判断为中性的概率,更好的识别出用户的细节舆情倾向。细节舆情倾向。细节舆情倾向。


技术研发人员:唐亮 曹特磊 赵伟
受保护的技术使用者:时趣互动(北京)科技有限公司
技术研发日:2021.09.10
技术公布日:2022/3/8

最新回复(0)