[paper-3] IMPROVING BERT PERFORMANCE FOR ASPECT-BASED SENTIMENT ANALYSIS
改进基于方面的情感分析的BERT性能
摘要
基于方面的情绪分析(ABSA)研究消费者对市场产品的意见。它包括检查产品评论中表达的情绪类型和情绪目标。分析评论中使用的语言是一项困难的任务,需要对语言有深刻的理解。近年来,诸如BERT等深层语言模型在这方面取得了很大进展。在这项工作中,我们提出了两个简单的模块,称为并行聚合和分层聚合,以用于两个主要的ABSA任务,即方面提取(AE)和方面情感分类(ASC),以提高模型的性能。研究表明应用所提出的模型消除了进一步训练BERT模型的需要。
关键词
索引项序列标记;文本分类;基于方面的情绪分析;BERT微调
介绍
在行业环境中,对消费者如何感知产品有一个有效的概念是极其重要的。他们通过对产品的评论来传达自己的看法,目前主要使用社交网络。他们可能有可能导致企业成功的积极意见,也可能有可能导致企业倒闭的消极意见。由于这些观点在许多领域都非常丰富,因此它们的分析是一项耗时且劳动密集的任务,这就是为什么提出了各种机器学习技术,如支持向量机(SVM)、最大熵、朴素贝叶斯和决策树来执行意见挖掘。
在这项工作中,作者利用基于方面的情绪分析(ABSA)任务的BERT。作者的主要贡献是提出了两个简单的模块,它们可以帮助改进BERT模型的性能。在模型中,作者选择条件随机场(CRF)作为序列标记任务,这会产生更好的结果。此外,作者的实验表明,更多的数据训练BERT不会导致模型过拟合。然而,经过一定时间的训练后,学习似乎停止了。
相关工作
最近,有大量工作将BERT模型用于NLP中的各种任务,如文本分类、问答、摘要,特别是ABSA任务。由于BERT模型的特殊结构,可以在其上附加额外的模块。在[Xin Li, Lidong Bing, Wenxuan Zhang, and Wai Lam,“Exploiting bert for end-to-end aspect-based sentiment analysis,” inProceedings of the 5th Workshop on Noisy User-generated Text (W-NUT 2019), 2019, pp. 34–41.]中,作者添加了不同的层,如RNN和CRF层,以端到端的方式执行ABSA。在我们的工作中,我们使用来自BERT架构的相同层模块,并使用隐藏层进行预测。
模型建立
并行聚合
作者使用BERT层模块提出了称为P-SUM的并行聚合。图2显示了该模型的详细信息。我们通过再添加一个BERT层并使用每一层进行预测来探索BERT模型的最后四层。原因是所有深层都包含与任务相关的大部分信息。因此,从它们中的每一个中提取这些信息并将其组合可以产生更丰富的语义表示。
层次聚合
我们的分层聚合(H-SUM)模型受特征金字塔网络(FPN)的启发[Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He,Bharath Hariharan, and Serge Belongie, “Feature pyra-mid networks for object detection,” inProceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 2117–2125.]。目标是从BERT模型的隐藏层中提取更多语义。H-SUM模型的架构如图3所示。在每一个隐藏层上应用一个BERT层后,它们将与前一层聚合。同时,与P-SUM类似,我们使用每个输出分支执行预测,然后对损失进行求和。
实验与结果
数据集
在实验中,作者使用了SemEval 2014[28]和2016[29]中的笔记本电脑和餐厅数据集。这些集合由手动注释的用户评论组成。数据集的统计数据见表1和表2。
BERT模型分析
BERT层的性能:作者进行了实验,以了解BERT模型的每一层是如何执行的。结果如图4所示。可以看出,在更深的层中可以实现更好的性能。作者采用最后四层并将模块连接到它们上。
增加训练时间:更多的培训可以提高网络的性能。然而,存在过度拟合的风险,尤其是当训练示例的数量与模型中包含的参数数量相比不算多时。然而,在BERT的情况下,正如所观察到的,尽管训练数据点的数量相对较少,但随着训练次数的增加,模型似乎不会过度拟合。这背后的原因可能是,我们正在使用一个已经预先训练好的模型,该模型已经看到了大量的数据(维基百科和图书语料库)。因此,我们可以预期,通过进行更多的训练,该模型仍然能够推广。
通过查看图5中的验证损失,可以得出相同的观察结果。如果过度拟合,我们预计损失会增加,性能会下降。但是,我们看到,随着损失的增加,性能也会提高(图4)。这表明,随着训练的增加,网络权重会继续变化,在15到20个时期之间,之后它们几乎保持稳定,表明没有更多的学习。
结论
作者提出了两个简单的模块,利用BERT语言模型的隐藏层来生成输入序列的深层语义表示。这些层一次以并行方式聚合,一次按层次进行聚合。我们对每个选定的隐藏层进行预测,并计算损失。然后对这些损失进行汇总,得出模型的最终损失。作者使用条件随机场解决方面提取问题,这有助于考虑序列标签的联合分布,以实现更精确的预测。作者的实验表明,所提出的方法优于训练后的vanilla BERT模型。