基于Bert的文本情感分类

本文探讨了使用Bert模型进行情感分类的优势,对比了传统机器学习方法,并展示了Bert如何处理特征抽取难题,提高情感分析的准确性。实验结果显示Bert模型在情感分类任务上优于传统算法。
摘要由CSDN通过智能技术生成

详细代码已上传到github: click me

摘  要:     情感分类是对带有感情色彩的主观性文本进行分析、推理的过程,即分析说话人的态度,推断其所包含的情感类别.传统机器学习在处理情感分类问题的时候通常是基于SVM、CRF、信息熵等传统算法,其优势在于具有对多种特征建模的能力,但要用人工标注的单个词作为特征,而语料的不足往往就是性能的瓶颈.对句子进行情感分类的难处在于如何抽取到句子中与情感表达紧密相关的特征,以人工标注的单个词作为特征会忽略单词所处的上下文语义信息,导致最终的分类效果不理想.为了解决特征抽取的难题,决定使用2018年Google提出的文本预训练模型Bert(bidirectional encoder representations from transformer)来挑战这次实验中的情感多分类任务.Bert利用transformer超强的特征抽取能力来学习词语的双向编码表示,融合了上下文信息的词语编码能更好地进行情感决策.实验结果也表明使用Bert的效果要比使用传统算法的baseline好很多.

关键词:     情感分类;Bert;深度学习;单词嵌入;字符嵌入

1     介绍

短信在现代人的通讯中被广泛使用,大量的微表情被用来替代帮助人们更好得表达自己的情感.然而,对于对微表情不熟悉的人来说,找到他想要的那个表情并不是一件简单的事(也许你可以考虑下你的父母以及爷爷奶奶如何使用这些微表情).因此,很有必要设计一个系统来基于短信的内容自动推荐合适的微表情.之前看Google I/O大会看到Google做的功能类似的一款产品,通过识别短信内容来提供给用户以微表情替代情感相关文本的选项,感觉很有趣.这项任务其实就是NLP领域经典的情感分类问题,通过对短信作情感分析来为其匹配一个最合适的微表情类.对这些短信进行情感分类的难点在于: 1.反讽问题,比如"你牛逼你上啊"; 2.领域相关的问题,"我的电脑散热声音很大"、"我家洗衣机声音很大"这些很可能是差评,而"我家音响声音很大"很可能就是好评; 3.网络流行语也会影响情感分析,比如"给力"、"不明觉厉"、"累觉不爱"、"细思极恐"等,这些词利用传统的分词一般都会被切开,而且会影响词性标注,如果想避免只能加入人工干预,修改分词的粒度和词性标注的结果; 4.文本比较短,省略较严重,导致出现歧义或指代错误等,比如"咬死猎人的狗".传统的统计+规则的方法不能很好得解决这些难点,需要引入深度学习强大的特征抽取能力.2018年10月份,Google公司提出了NLP集大成者Bert模型[1] .这个模型既引入了lstm的双向编码机制同时还采用了GPT中的Transformer来做特征抽取,具有非常强大的文本特征提取能力,能学习到句子中潜在的句法和语义信息.除此之外,Bert基于character-level做embedding,就不存在分词以及测试集包含训练集中未出现词的困扰了.这些优点使得Bert能够比较好得解决情感分类问题中的一些难点,实验基于Google开源的Bert预训练好的中文模型做fine-tuning,最终的实验效果要比采用传统方法得到得baseline好很多.

 

2     相关工作

现有研究已经产生了可用于情感分析多项任务的大量技术,包括监督和无监督方法.在监督方法中,早期论文使用所有监督机器学习方法(如支持向量机、最大熵、朴素贝叶斯等)和特征组合.无监督方法包括使用情感词典、语法分析和句法模式的不同方法.大约十年前,深度学习成为强大的机器学习技术,在很多应用领域产生了当前最优的结果,包括计算机视觉、语音识别、NLP 等.近期将深度学习应用到情感分析也逐渐变得流行.

 

Fig 1  The relationship between Bert and other deep learning models

图1  Bert和其它深度学习模型之间的关系

情感分析可划分为3种粒度:文档粒度,句子粒度,短语粒度.这次的实验任务主要是基于句子粒度来进行情感分类.Kim等人于2013年提出的CNN文本分类工作[2] ,成为句子级情感分类任务的重要baseline之一.基本的lstm模型加上pooling策

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值