首页> 中国专利> 一种基于BERT的旅游评论意见挖掘方法

一种基于BERT的旅游评论意见挖掘方法

摘要

本发明公开了一种基于BERT的旅游评论意见挖掘方法,包括以下步骤:S1、处理输入的评论文本,将文本转换为符合条件的token序列;S2、应用BERT对输入序列进行层级计算处理,得到编码后的上下文表示;S3、将得到的上下文表示输入指针网络计算,得到意见词开始位置和结束位置候选集;S4、根据分类结果和相对距离对候选集进行配对,得到最终的意见词位置;S5、将意见词和对应的分类结果组合在一起得到完整的观点表达。本发明通过直接抽取意见词并进行类别标注的方式,克服了传统细粒度意见挖掘方法中方面词缺失引起的意见丢失和不完整的问题,并应用在网络旅游评论中。

著录项

  • 公开/公告号CN112597306A

    专利类型发明专利

  • 公开/公告日2021-04-02

    原文格式PDF

  • 申请/专利权人 电子科技大学;

    申请/专利号CN202011544268.3

  • 申请日2020-12-24

  • 分类号G06F16/35(20190101);G06F40/126(20200101);G06F40/242(20200101);G06F40/284(20200101);G06Q50/14(20120101);

  • 代理机构51268 成都虹盛汇泉专利代理有限公司;

  • 代理人王伟

  • 地址 611731 四川省成都市高新区(西区)西源大道2006号

  • 入库时间 2023-06-19 10:27:30

说明书

技术领域

本发明涉及一种基于BERT的旅游评论意见挖掘方法。

背景技术

网站的游客评论数量庞大,可以借助自然语言处理技术进行信息挖掘。方面级情感分析(Aspect-Based Sentiment Analysis,简称ABSA)是细粒度意见挖掘的一种有效方法。ABSA旨在确定评论对特定方面(包括方面词语和描述类别)的意见(包括意见词语和情感极性)。例如在评论“峨眉山金顶上的景色不错,但这价格真心贵”中,“景色”是方面词,描述的类别是风景,“不错”是描述方面词的意见词,涉及的情感极性是正向。

2014年,SemEval将方面级情感分析作为一项综合评估任务引入,已提供英语评论的通用评估框架。2016年,SemEval将句子级ABSA任务定义为,给定一份关于目标实体(如笔记本电脑、餐厅或酒店)的意见评论,目标是用以下类型的信息识别<方面类别,方面意见表达,情感极性>的所有意见组。ABSA包含了许多子任务,现有的研究大部分集中在给定方面词的前提下确定对应的情感极性(Aspect-Based Sentiment Classification,简称ABSC),但实际应用中问题会稍微复杂一些,主要体现在两个方面:一是在实际情况中,由于标注成本比较高,事先给定的方面词往往无法通过人工标注提供。之前的研究试图借助自动化的方法,使用流水线的模式先抽取方面词之后再进行情感分析,但会引入错误传播的问题;二是对爬取的游客评论进行分析后发现,中文的口语表达中有省略方面词的现象,例如评论“方便快捷,及时到位”中包含了对网络购票的积极评价,但并没有明确给出方面词。在调查的相关数据集中,只包含意见词而方面词缺失的情况约占总数的1/5。如果只对方面词进行抽取和情感分析,将会遗漏掉有效评价信息。

研究者们提出了一些融合词语抽取和分类的多任务方法,试图解决第一个问题。如在其他任务中观察到的,如果两个子任务具有强耦合(例如,NER和关系提取),则更集成的模型通常比普通解决方案更为有效。因此他们建议将两个子任务作为一个复合任务进行耦合。早期的工作尝试验证抽取和分类两个任务之间的关系,并提出更为集成的解决方案,但这些方案的效果并没有优于流水线模型。Li重新检查了任务,提出了基于两层堆叠LSTM的序列标注模型,其中利用一种简单的门机制来保持标签之间的情感一致性。他首先提出使用“统一”的标记方案,完全消除两个子任务之间的边界。方案的具体内容是使用{B,I,O}作为头标记表示当前token的位置角色,B表示在观点目标的开始,I表示在目标内部,O表示不属于目标范围,并以正(POS)、负(NEG)和中性(NUE)的尾标记表示观点目标的情绪状态。实验结果证明了两个子任务的相关性,但效果不足以投入到实际应用中。此后序列标注的方式就成为了融合任务的基本解决思路。BERT提出之后,率先在ABSC领域取得了很好的效果。Li等人随后提出了基于BERT的序列标注模型,希望用端到端的序列标注方式解决抽取和分类的融合任务,并为之后的基于BERT的融合任务研究提供基线。他们利用BERT作为嵌入层获得句子表示,并在之上构建了不同的简单解码网络进行了对比实验,结果证明了BERT的有效性。但该研究依然以抽取方面词为基础,并没有考虑在实际的中文评论中方面词缺失的情况。

同时,在ABSA序列标注的问题中,如何保持情感一致性也是解码部分的一个挑战。指针网络最初的设计是简化了attention机制,将输出序列对应到输入序列,从而可以适应输入序列长度的变化。后续应用在机器阅读理解任务(MRC)中的主要方式为设计两个输出长度为l的分类器分别预测开始位置和结束位置,其中l表示句子的长度。对于ABSA任务来说,指针网络这种直接预测词语边界的方法,可以解决之前融合任务中情感一致性的问题。

发明内容

本发明的目的在于克服现有技术的不足,提供一种基于BERT的旅游评论意见挖掘方法,使用BERT作为编码结构提升上下文表示能力,并融合意见词抽取和描述类别分类两个方面及情感分析子任务以形成完整的观点表达。通过抽取意见词而不是方面词来弥补方面词缺失导致的有效评价信息遗漏的问题,通过类别分类来弥补方面词缺失导致的描述目标不明确的问题,并应用在实际的评论分析中。

本发明的目的是通过以下技术方案来实现的:一种基于BERT的旅游评论意见挖掘方法,包括以下步骤:

S1、处理输入的评论文本,将文本转换为符合条件的token序列;

S2、应用BERT对输入序列进行层级计算处理,得到编码后的上下文表示;

S3、将得到的上下文表示输入指针网络计算,得到意见词开始位置和结束位置候选集;

S4、根据分类结果和相对距离对候选集进行配对,得到最终的意见词位置;

S5、将意见词和对应的分类结果组合在一起得到完整的<类别,意见词>观点表达。

进一步地,所述步骤S1包括以下子步骤:

S11、加载选择的BERT预训练模型中提供的vocab,将评论文本转换成数字token的形式,无法匹配的字用代替,完成初步的tokenizer;

S12、配合BERT训练的需要,在句子token的前后加上开始和结束标记[CLS]和[SEP];

S13、将句子token按照设定的长度进行截断和padding,padding的token为0。

进一步地,所述步骤S2包括以下子步骤:

S21、将步骤S13得到的句子token作为输入,通过BERT中的Transformer计算句子的上下文表示。计算公式为:

H

S22、将最后一层Transformer的输出作为评论输入的最终上下文表示H。

进一步地,所述步骤S3包括以下子步骤:

S31、构造一个n分类的分类器预测意见词开始位置,其中n表示预先定义的描述类别。分类计算公式为:

P

其中W

S32、同样构造一个n分类的分类器预测意见词结束的位置,此时的输入为将句子token和步骤S31中得到的开始位置表示连接起来,表示为H′=(H:W

P

H′=(H:W

其中W

S33、P

进一步地,所述步骤S4包括以下子步骤:

S41、根据步骤S3得到的意见词范围候选集,首先遍历开始位置i

S42、将配对成功的候选意集以<分类结果,开始位置,结束位置>的形式输出;

6.根据权利要求5所述的一种基于BERT的旅游评论意见挖掘方法,其特征在于,所述步骤S5包括以下子步骤:

S51、根据步骤S4得到的已配对的开始和结束位置,在原句中找到对应开始和结束位置的片段,作为意见词/短语;

S52、根据步骤S4得出的分类结果,查询对应词典得到类别名称,完善<类别,意见词>二元组,形成完整的观点表达

本发明的有益效果是:本发明使用BERT作为编码结构提升上下文表示能力,并融合意见词抽取和描述类别分类两个方面及情感分析子任务以形成完整的观点表达。通过抽取意见词而不是方面词来弥补方面词缺失导致的有效评价信息遗漏的问题,通过类别分类来弥补方面词缺失导致的描述目标不明确的问题,并应用在实际的评论分析中。

附图说明

图1为本发明的基于BERT的旅游评论意见挖掘方法的流程图;

图2是本发明的输入token预处理流程;

图3是本发明的指针网络架构图;

图4是本发明的意见词范围配对方法;

具体实施方式

下面结合附图进一步说明本发明的技术方案。

如图1所示,本发明的一种基于BERT的旅游评论意见挖掘方法,包括以下步骤:

S1、处理输入的评论文本,将文本转换为符合条件的token序列;如图2所示,具体包括以下子步骤:

S11、加载选择的BERT预训练模型中提供的vocab,将评论文本转换成数字token的形式,完成初步的tokenize。

文本向量化是NLP处理文本数据的基础,在过往的预训练模型使用的过程中,为了查询对应向量的效率和训练精度的平衡,通常会对训练数据中使用的词汇做一个统计,并保留出现频率在阈值之上的单词,作为vocabulary。而在BERT相关的预训练模型中,这个vocab是预训练模型的产出之一,在训练的时候即做了限制,可以即拿即用,不需要根据任务数据重新设置。Tokenize的目的是将文本中的词汇通过查询vocab转换成数字标记,以便在之后的embedding中通过embedding weight转换成对应的向量。但由于vocab只保留了部分高频出现的词汇,因而在vocab中,通常会保留预定义标记,用来统一表示不在词典中(out of vocab)的词汇。

S12、配合BERT训练的需要,在句子token的前后加上开始和结束标记[CLS]和[SEP]。

训练BERT的目的是为下游任务提供基础知识,masked language model(MLM)是第一个任务。但有许多重要的下游任务,如机器问答(QA)和自然语言推理(NLI)都是基于理解两个句子之间的关系,无法通过MLM训练获得,因而BERT的第二个训练任务为下一句预测,用于理解句子的模型关系。两个句子拼接作为输入时,需要在tokenize的时候进行区别,所以在BERT中用标记[CLS]表示开始,用标记[SEP]表示每个句子的结尾,并为了统一,如果下游任务只需要输入一个句子,也需要进行开始和结束标记。

S13、将句子token按照设定的长度进行截断和padding,padding的token为0。

为了方便训练中的矩阵运算,tokenizer的另一个任务是将batch中的句子做对齐处理,根据预定义的长度限制,对评论进行截断或使用进行补全,也是一个vocab中的预留标记,通常表示为0。预留标记所所对应的数字token根据所给出的vocab而定,在不同的vocab中可能会有一定的差异。

S2、应用BERT对输入序列进行层级计算处理,得到编码后的上下文表示;如图2所示,具体包括以下子步骤:

S21、将步骤S13得到的句子token作为输入,通过BERT中的双向Transformer-block连接,以层级的方式计算句子的上下文表示。计算公式为:

H

其中l表示当前计算的Transformer层数。

Transformer本身也是一个Seq2Seq的结构,利用Attention替换了以往的LSTM作为encoder实现了并行计算。Encoder是由N个相同的layer组成,其中包含两个sub-layer,分别为多头自注意力机制(multi-head self-attention mechanism)和全连接前馈网络(fullyconnected feed-forward network)。其中每个sub-layer都加了residualconnection和normalization,因此sublayer的输出可以表示为:

sub_layer_output=LayerNorm(x+SubLayer(x))

Encoder中多头自注意力的计算方式为:

MultiHead(Q,K,V)=Concat(head

其中Q、K和V与常规的attention中的含义相同,在self=attention中,Q、K和V取相同值。multi-head的含义是初始化多组QKV矩阵,公式中的h描述了组的数量。

Decoder的结构和encoder差不多,但多出了一个self-attention的sub-layer。

S22、将最后一层Transformer的输出作为评论输入的最终上下文表示H。

S3、将得到的上下文表示输入指针网络计算,得到意见词开始位置和结束位置候选集。

传统的Seq2Seq模型无法解决输出序列的词汇表会随着输入序列长度的改变而改变的问题,对于这类问题,输出往往是输入集合的子集。指针网络的思路是以直接操作输入序列代替设定输出词汇表,从而将指针对应到输入序列的元素。这种输出元素来自输入元素的特点使得指针网络非常适合用来直接复制输入序列中的某些元素到输出序列。这对于抽取任务是个非常有效的思路,同时只预测开始和结束位置也可以轻松解决此前序列标记任务中尽力解决的分类一致性的问题。指针网络的结构如图3所示,具体包括以下子步骤:

S31、构造一个n分类的分类器预测意见词开始位置,其中n表示预先定义的描述类别。分类计算公式为:

P

其中W

S32、同样构造一个n分类的分类器预测意见词结束的位置,此时的输入为将句子token和步骤S31中得到的开始位置表示连接起来,表示为H′=(H:W

P

H′=(H:W

其中W

S33、P

S4、根据分类结果和相对距离对候选集进行配对,得到最终的意见词位置;如图4所示,包括以下子步骤:

S41、根据步骤S3得到的意见词范围候选集,首先遍历开始位置i

S42、将配对成功的候选意集以<分类结果,开始位置,结束位置>的形式输出;

S5、将意见词和对应的分类结果组合在一起得到完整的<类别,意见词>观点表达,包括以下子步骤:

S51、根据步骤S4得到的已配对的开始和结束位置,在原句中找到对应开始和结束位置的片段,作为意见词/短语;

S52、根据步骤S4得出的分类结果,查询对应词典得到类别名称,完善<类别,意见词>二元组,形成完整的观点表达

本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号