基于MacBERT的互联网新闻情感分析

时间:2023-06-14 12:45:02 公文范文 来源:网友投稿

王 丽

(厦门大学嘉庚学院 福建 厦门 363123)

目前,情感分析方法主要分三大类:基于情感词典的方法、基于传统机器学习的方法和基于深度学习的方法,其中基于深度学习的最新方法大多是使用预训练模型[1]。所谓预训练模型是指前人为了解决类似问题所创造出来的预先训练好的模型,是迁移学习的一种应用,通过自监督学习从大规模数据中获得与具体任务无关的预训练模型,当后续遇到一个新任务的时候,不用从零开始训练一个新模型,可以从预训练模型入手,将从大规模数据中学到的知识迁移到新任务,只需要利用该任务的标注数据进行微调即可达到一个很好的效果。近年来,预训练模型已经广泛应用于自然语言处理(natural language processing,NLP)领域,在文本情感分析任务上相对传统的机器学习方法有着更好的提升。

自Google BERT[2]预训练模型之后,涌现了许多基于BERT优化的模型,本文选择其中一些中文预训练模型对下游互联网情感分析任务进行有监督的微调,微调方法主要是对互联网新闻的数据集进行扩充,以及对新闻长文本数据进行各种处理,最终选择其中微调结果较优的模型。本文在具体实现上借助Hugging Face[3]提供的预训练模型库Transformers调用基于BERT的中文模型进行微调。其中Hugging Face是一个开源社区,提供了先进的预训练模型、数据集以及其他便利的工具,方便快速开展NLP任务。

1.1 中文预训练模型

Hugging Face提供了非常多的预训练模型,根据当前模型下载情况选择下载量最多的五个中文预训练模型进行微调。这五个模型分别是“BERT-Base, Chinese”“BERTwwm-ext,Chinese”“RoBERTa-wwm-ext,Chinese”“ELECTRA-180g-base,Chinese”“MacBERTbase,Chinese”。

1.1.1 BERT-Base, Chinese

“BERT-Base,Chinese”是BERT[2]的中文模型,其词汇表包括中文简体和繁体,中文处理以字为粒度进行切分,没有考虑到传统NLP中的中文分词。BERT的全称为Bidirectional Encoder Representation from Transformers,BERT-Base是Google发布的基础版本模型,其架构基于双向的Transformer[4],又称为Transformer encoder,使用attention机制构建每个token的特征,利用语句中所有token来表达语句中的每一个token。其实现采用新的Masked Language Model(MLM)对双向的Transformer进行预训练,生成融合左右上下文信息的深层双向语言表征。MLM模型在输入语句中随机选取15%的token用于预测,选中的token有80%的概率被替换为[MASK],有10%的概率被替换为其他随机token,剩下10%的概率保持原有token,用以提高模型对语句特征信息的表达和泛化能力[5]。在结构上,BERT模型共有12层Transformer,隐藏层是768维,attention head是12头,总参数量约110 M,在11种不同的NLP测试中创出最佳成绩。

1.1.2 BERT-wwm-ext, Chinese

“BERT-wwm-ext, Chinese”是哈工大讯飞联合实验室(HFL)发布的中文模型,是BERT-wwm[6]的升级版本,相对于BERT-wwm在训练集数据量和训练步数上做了改进,性能更好一些。其中wwm全称为Whole Word Masking,全词Mask或整词Mask,即BERT-wwm相对于Google发布的“BERT-Base, Chinese”,在中文切分上考虑到了中文分词,使用了哈工大LTP作为分词工具,对组成同一个词的汉字全部进行Mask。

1.1.3 RoBERTa-wwm-ext, Chinese

“RoBERTa-wwm-ext, Chinese”是哈工大讯飞联合实验室(HFL)发布的中文模型,是基于RoBERTa[7]模型的中文版本,相对于RoBERTa模型考虑了中文全词Mask,同时增加了训练集和训练步数。而RoBERTa模型是由Facebook和华盛顿大学发布,全称是Robustly optimized BERT pretraining approach,是BERT模型的改进版本,在模型规模、算力、训练数据以及训练方法上都有一定的优化。

1.1.4 ELECTRA-180g-base, Chinese

“ELECTRA-180g-base, Chinese”是哈工大讯飞联合实验室(HFL)发布的中文模型,是ELECTRA模型的中文版本,相对于ELECTRA模型考虑了中文全词Mask,180 g是大语料版本,基于180 G数据训练。而ELECTRA[8]是由斯坦福大学和Google Brain团队发布,全称是Efficiently Learning an Encoder that Classifies Token Replacements Accurately,提出了Replaced Token Detection (RTD)的预训练方法,训练过程类似GAN,利用生成器将句子中的单词进行替换,然后利用判别器判断句子中哪些单词被替换过,比BERT和RoBERTa效果更好。

1.1.5 MacBERT-base, Chinese

“MacBERT-base, Chinese”是哈工大讯飞联合实验室(HFL)发布的中文模型,是BERT的改进版本,Mac全称是“MLM as correction”,纠错型掩码语言模型,主要是对BERT的MLM任务进行了改进,BERT在预训练时使用[MASK]作为输入,但是在微调任务时并没有[MASK],造成了预训练任务和下游微调任务的不一致,MacBERT[9]使用相似词替换被[MASK]的词,对于没有相似词的token使用随机词替换,缩小了预训练任务和应用于下游微调任务时的差距,提升了模型的应用效果。

1.2 MacBERT微调

微调方法主要体现在两方面,一方面是对互联网新闻的数据集进行扩充,另一方面是对新闻长文本数据进行各种预处理。

1.2.1 扩充数据集

2019年CCF BDCI(CCF大数据与计算智能大赛)的赛题“互联网新闻情感分析”中的训练数据集主要是初赛的训练集7 340条数据,实际比赛过程中有提供复赛的训练集7 355条数据,所以训练时融合初赛和复赛的训练集数据一起训练。

1.2.2 长文本处理

BERT模型能够处理的最大序列长度是512,而新闻内容往往会超出这个长度限制。针对这类长文本,处理方法有截断法和层次法[10],截断法包括(1)head-only:只保留前510个tokens;
(2)tail-only:只保留尾510个tokens;
(3)head+tail:根据经验选择前128个tokens与后382个tokens。

本文基于互联网新闻训练数据的特点,包含新闻标题title及新闻内容content两部分,title中包含关键主题信息,content是对title进行详细描述,通过观察发现,content中存在部分内容与title是重复的,故首先对content进行去重,考虑到互联网新闻的情感信息可能存在于内容的头部和尾部,参考head+tail截断法进一步处理content的内容,根据剩余长度(512-title的长度)一分为二,在content头部和尾部各取一半内容。

2.1 实验环境

租用云平台,实验环境如表1所示。

表1 实验环境

2.2 数据集

2.2.1 数据简介

数据集采用2019年CCF BDCI(CCF大数据与计算智能大赛)的赛题“互联网新闻情感分析”中的数据集,包括初赛的训练集7 340条数据、复赛的训练集7 355条数据以及测试集7 356条数据。其中训练集用于算法模型训练,数据格式如表2所示,测试集用于最终算法性能测试,在赛题官网平台提交用于排名,故测试集中无label字段。

表2 数据格式

2.2.2 数据预处理

(1)文件合并:将训练集的两个文件Train_DataSet.csv(包含id,title,content)、Train_DataSet_Label.csv(包含id,label)通过id相等合并。

(2)label处理:检查label是否存在空值,存在则删除,经检查不存在空值。将label字段数据类型转换为int。

(3)id处理:检查id是否存在空值、是否存在重复,存在则删除,经检查不存在空值和重复值。

(4)title、content处理:检查是否存在空值,存在空值则替换为“无”。

2.2.3 描述性统计

在新闻情感标签label中,正面情绪标签为0,中性情绪标签为1,负面情绪标签为2。分布情况如图1所示,可以发现标签分布并不均匀,正面情绪0样本数目最少,占比10%,中性情绪1样本数目最多,占比50%。

图1 新闻情感标签label数目统计

新闻信息包括新闻标题title和新闻内容content,分布情况如表3和图2所示。可以看出,新闻标题title长度主要集中在1~40之间,峰值在20~30之间,新闻内容content长度,主要集中在1~5 000之间,峰值在1~1 000之间。

表3 title和content文本长度统计——初赛+复赛训练集

图2 新闻标题title和新闻内容content长度分布——初赛+复赛训练集

2.3 评价指标

本赛题采用Macro-F1值进行评价,详细评分算法如下。精确率:

召回率:

F1得分:

其中,TP是真阳例,FP是假阳例,FN是假阴例,通过以上公式得到某一类情感倾向的F1值,将每一类F1值求平均,即得到Macro-F1值。

2.4 参数设置

基于预训练模型MacBERT进行微调,设置epoch为3,批次大小batch_size为8,学习率learning rate为3e-5,最大序列长度max_length为512,优化器optimizer为Adam。

2.5 实验结果与分析

本文设计了四组对比实验用于找到相对较优的情感分析预测模型。

第一组是基于初赛数据集的不同预训练模型的对比实验,用于选择相对较好的预训练模型。

数据集使用初赛训练集7 340条数据,将训练集按7:3划分为训练集和验证集,在训练集进行训练,在验证集进行模型评估,F1使用Macro-F1计算,测试集中F1由赛题官网平台计算。进行两次训练之后求均值,不同预训练模型的评价指标对比如表4所示,按照验证集Macro-F1从大到小排列,选择相对结果较好的三个模型“MacBERT-base, Chinese”“ELECTRA-180gbase, Chinese”“RoBERTa-wwm-ext, Chinese”,对测试集数据进行预测,并上传至官网,最终“MacBERT-base,Chinese”得分最高,测试集F1得分0.804 099 62,当时经典赛排名第24。具体如表4所示,其中“--”表示均小于0.804 099 62,平台没有给出具体分值。

表4 不同预训练模型微调结果——初赛训练集

第二组是使用第一组筛选的三个模型基于初赛+复赛数据集进行对比实验,用于选择相对最好的预训练模型。

数据集使用初赛+复赛训练集14 695条数据,将训练集按7:3划分为训练集和验证集,在训练集进行训练,在验证集进行模型评估,F1使用Macro-F1计算,测试集中F1由赛题官网平台计算。不同预训练模型的评价指标对比如表5所示,按照验证集Macro-F1从大到小排列,选择相对结果较好的模型“MacBERT-base,Chinese”“ELECTRA-180g-base, Chinese”对测试集数据进行预测,并上传至官网,最终“MacBERT-base,Chinese”在测试集F1得分0.811 944 72,经典赛排名第7。具体如表5所示,其中“--”表示均小于0.808 525 09,平台没有给出具体分值。

表5 不同预训练模型微调结果——初赛+复赛训练集

第三组是根据第二组实验结果,选择“MacBERT-base,Chinese”模型针对不同数据清洗方式的对比实验。

将训练集按7:3划分为训练集和验证集,在训练集进行训练,在验证集进行模型评估,训练集中F1使用Macro-F1计算,测试集中F1由赛题官网平台计算。

数据清洗方式说明:

(1)不处理,即不做数据清洗。

(3)去长英文:去除如

“window.open("http://img.jsly001.com/attachment/mon_1801/4_291085_c796a6a86e17121.jpg?123");" onload=”

的网页代码。

(4)去重:从title中去除特殊字符,从content字段中去除与title重复的句子。去重之后title和content文本长度统计如表6所示,平均值、中位数、众数、最大值均有所下降。

表6 title和content文本长度统计——去重

(5)去重+content首尾平均:因BERT模型能处理最大序列长度为512,默认从content头部截取内容,考虑到互联网新闻的情感信息可能存在于内容的头部和尾部。所以对content去重后,再根据剩余长度(512-title的长度)一分为二,在content头部和尾部各取一半内容。

去重+content首尾平均之后title和content文本长度统计如表7所示,最大值调整为512,与BERT模型能处理最大序列长度保持一致,平均值、中位数、众数均有所下降。

表7 title和content文本长度统计——去重+content首尾平均

对比实验结果如表8所示,按照不同清洗方式排序,其中不处理、去重及去重+content首尾平均的得分相对较高,将不同清洗方式组合之后得分反而降低。具体如表8所示,其中“--”表示均小于0.811 944 72,平台没有给出具体分值。

表8 不同数据清洗方式下“MacBERT-base, Chinese”模型微调结果

第四组是基于“MacBERT-base, Chinese”模型选择相对较好的三种数据清洗方式不处理、去重、去重+content首尾平均,将所有训练集数据用于训练,得到相对最好的预测模型,即去重+content首尾平均的数据清洗方式下的“MacBERT-base, Chinese”模型,F1得分0.820 787 07,经典赛排名第3。具体如表9所示,其中“--”表示小于0.817 149 28,平台没有给出具体分值。

表9 所有训练集数据用于训练模型

本文基于常见的五个中文预训练模型BERT、BERTwwm-ext、RoBERTa-wwm-ext、ELECTRA-180g-base、MacBERT-base进行对比实验,提出基于MacBERT的互联网新闻情感分析方法,在MacBERT微调时一方面扩充数据集的数量,一方面结合新闻文本的特点对长文本处理进行优化,最终得到相对较好的情感分析结果。在实际应用中,可以辅助识别蕴藏在新闻之中的情感倾向,为有关政府或企业的舆情监控、预警提供一定的理论依据。接下来的工作将进一步优化长文本处理,针对样本不均衡在模型参数上做一些调整,从而探索更优的互联网新闻情感分析模型。

猜你喜欢微调复赛初赛乐海乐器“微调轴”研发成功乐器(2021年1期)2021-09-102019年北京市中学生数学竞赛复赛(高一)中等数学(2020年4期)2020-08-242019瑞士数学奥林匹克(初赛)中等数学(2020年12期)2020-04-132018年全国高中数学联赛江苏赛区复赛中等数学(2019年4期)2019-08-302017年北京市中学生数学竞赛复赛(高一)中等数学(2018年2期)2018-08-012017年全国高中数学联赛江苏赛区复赛中等数学(2018年5期)2018-08-01灵活易用,结合自动和手动微调达到好效果 StormAudio ISP 3D.16 ELITE/PA 16 ELITE家庭影院技术(2017年10期)2017-11-23食神大会初赛儿童故事画报(2016年1期)2016-03-09隐显结合 听读辩证——高职高专听读模式教学方法与实践的总结、理论适用及模式微调卫生职业教育(2014年12期)2014-05-16宏观政策适时适度进行预调微调中国工程咨询(2011年12期)2011-02-13

推荐访问:互联网新闻 情感 分析