自然语言处理模型_ICLR 2020 「自然语言处理」【Prosus AI】金融情感分析FinBERT模型(含源码)!...
来源:AINLPer微信公众号
编辑: ShuYini
校稿: ShuYini
时间: 2020-1-15
TILE: FinBERT: Financial Sentiment Analysis with Pre-trained Language Models.
Contributor : Prosus AI
Paper: https://openreview.net/pdf?id=HylznxrYDr
Code: https://github.com/ProsusAI/finBERT
文章摘要
当前许多情感分类解决方案在产品或电影评论数据集中获得了很高的分数,但是在金融领域中,这些方法的性能却大大落后。 出现这种差距的原因是行业专用语言表达,它降低了现有模型的适用性,并且缺乏高质量的标记数据来学习特定领域的积极和消极的新上下文。在没有大量训练数据集的情况下,迁移学习可以成功地适应新领域。本文探讨了NLP迁移学习在金融情感分类中的有效性。本文提出了一个基于BERT的语言模型FinBERT,它将一个金融情绪分类任务在FinancialPhrasebank数据集中的最新性能提高了14个百分点。
文章贡献
1、引入FinBERT,这是一个基于BERT的语言模型,用于金融NLP任务。并在在两个金融情感分析数据集(FiQA、Financial PhraseBank)上得到了比较好的效果。
2、使用另外两个预训练语言模型ULMFit和ELMo进行金融情感分析,并将其与FinBERT进行比较。
3、对模型的几个方面做了进一步的实验研究,包括:进一步的预训练对金融语料库的影响,防止灾难性遗忘的训练策略,以及仅对模型层的一小部分进行微调以减少训练时间,而不会显著降低性能。
文章主要内容
背景介绍
由于每天都要产生数量空前的文本数据,因此分析来自医学或金融等不同领域的大量文本非常重要。然而,在这些专业领域中应用监督的NLP方法(如文本分类)比应用于更一般的语言要困难得多。其两个主要困难因素为: 1)利用复杂神经网络的分类方法需要大量的标记数据,而标记特定领域的文本片段需要昂贵的专业知识。2)在一般语料库上训练的NLP模型不适用于监督任务,因为特定领域的文本有专门的语言和独特的词汇和表达。
NLP迁移学习方法是解决上述问题的有效方法,也是本文研究的重点。迁移模型背后的核心思想是,首先在非常大的语料库上训练语言模型,然后使用从语言建模任务中学的权重初始化下游模型,其中初始化层的范围可以从单个单词嵌入层到整个模型。这种方法应该减少所需的标记数据的大小,因为语言模型通过预测下一个单词,以一种无监督的方式在一个非常大的未标记语料库上学习语言语法和语义。通过在特定于域的未标记语料库上进一步对语言模型进行预训练,该模型可以学习目标域文本中的语义关系,该语义关系可能与普通语料库的分布有所不同。
在本文中,主要探索使用微调预训练语言模型BERT的有效性。 并使用Malo等人创建的金融情感分类Financial PhraseBank数据集以及Maia等人的FiQA Task-1情感评分数据集进行验证。
模型介绍
BERT是一种由一组Transfer叠加而成的语言模型。它以一种新颖的方式定义了语言建模。BERT不是根据之前的单词预测下一个单词,而是随机选择所有token的15%作为mask。在最后一个编码器层之上的词汇表上有一个softmax层,可以预测被掩膜的token。BERT训练的第二个任务是“下一个句子预测”。给定两个句子,该模型预测这两个句子是否相有关系。
继先前关于在特定领域上进一步对语言模型进行预训练的有效性的工作(Howard&Ruder,2018)之后,我们尝试了两种方法:第一种是在特定领域下,即在较大金融语料库上对BERT语言模型进行了预训练。第二种方法是只对训练分类数据集中的句子进行预处理。通过在tokens最后一个隐藏状态之后添加一个稠密层来进行情绪分类。这是将BERT用于任何分类任务的推荐实践(Devlin et al.2018) 。然后,在标记的情感数据集上训练分类器网络。主要训练流程图如下图所示:
虽然本文的重点是分类,但我们也在具有连续目标的不同数据集上实现了具有几乎相同架构的回归。这里的唯一区别是损失函数采用的是均方误差而不是交叉熵损失。正如Howard & Ruder(2018)所指出的,采用这种微调方法会有灾难性遗忘问题。因为当模型试图适应新任务时,微调过程可能会迅速导致模型“忘记”来自语言建模任务的信息。为了解决这一现象,我们采用了Howard & Ruder(2018)提出的三种技术:倾斜三角形学习率(slanted triangular learning rates)、有区别微调(discriminative fine-tuning)和逐步解冻(gradual unfreezing)。
实验结果
实验准备
为了进一步优化FinBert,文章使用了一个叫做TRC2-financial的金融语料库(它是路透社TRC21的一个子集,后者由路透社在2008年至2010年间发表的180万篇新闻文章组成)。本文使用的主要情感分析数据集Financial PhraseBank。该数据集由从LexisNexis数据库中随机挑选的4845个英语句子组成,其中这些句子由16名具有金融和商业背景的人进行注释。FiQA Maia数据集等是为WWW ’18会议金融观点挖掘和问题解答Challenge3创建的数据集。我们使用任务1的数据,其中包括1,174个金融新闻标题和推文及其相应的情感评分。
基线方法对比
在对比实验中,我们考虑了三种不同方法的基线:基于GLoVe 的LSTM分类器、基于ELMo 的LSTM分类器和ULMFit分类器。这里使用召回得分来进行评价。在Financial PhraseBank数据集上的对比结果如下:
其中LPS、HSC和FinSSLX的结果取自各自的论文。
FiQA情感数据集的结果如表3所示。本文模型在MSE和R2方面都优于最先进的模型。
预训练对分类器性能的影响
我们比较了三种模型:1)没有进一步的预训练(Vanilla BERT表示),2)在分类训练集上进一步的预训练(FinBERT-task表示),3)在特定领域语料库上进一步的预训练,TRC2-financial (FinBERT-domain表示)。模型通过损失、准确性和测试数据集上的宏观平均F1分数进行评估。结果见表4,但是可以发现,进一步在金融领域语料库上进行预处理的分类器表现最好,但差异不是很大。
灾难性遗忘性能评估
我们尝试了四种不同的设置:无调整(NA)、只使用倾斜三角形学习率(STL)、倾斜三角形学习率和渐进解冻(STL+GU)以及(STL+DFT),并进行了有区别的微调。实验结果发现应用这三种策略可以在测试损失和准确性方面产生最佳性能。实验结果可见下图:
=========END===========
往期回顾
入门基础
「自然语言处理(NLP)」入门系列(一)初识NLP
「自然语言处理(NLP)」入门系列(二)什么才是深度学习?
「自然语言处理(NLP)」入门系列(三)单词表示、损失优化、文本标记化
「自然语言处理(NLP)」入门系列(四)如何训练word2vec !!
论文阅读
「自然语言处理(NLP)」【爱丁堡大学】基于实体模型的数据文本生成!!
「自然语言处理(NLP)」【Borealis AI】跨域文本连贯生成神经网络模型!!
「自然语言处理(NLP)」CTRL:16.3亿个参数的条件转换语言模型 无情!
「自然语言处理(NLP)」统一预训练UniLM模型(NLU+NLG)
学术圈
「自然语言处理(NLP)」你必须要知道的八个国际顶级会议!
「重磅!!」深度学习十年技术“进化史”
【圣诞福利】ICLR2020开源代码的paper集合(共计198篇) 收藏!
「自然语言处理(NLP)」全球学术界”巨佬“信息大盘点(一)!
Attention
更多自然语言处理相关知识,还请关注AINLPer公众号,极品干货即刻送达。
https://github.com/yinizhilian/NLP_Sharegithub.com
自然语言处理模型_ICLR 2020 「自然语言处理」【Prosus AI】金融情感分析FinBERT模型(含源码)!...相关推荐
- 7模型集成:细粒度用户评论情感分析冠军思路及源码
向AI转型的程序员都关注了这个号
- 【深度学习】-Imdb数据集情感分析之模型对比(4)- CNN-LSTM 集成模型
[深度学习]-Imdb数据集情感分析之模型对比(4)- CNN-LSTM 集成模型 前言 [深度学习]-Imdb数据集情感分析之模型对比(3)- CNN [深度学习]-Imdb数据集情感分析之模型对比 ...
- 【自然语言处理(NLP)】基于FNN网络的电影评论情感分析
[自然语言处理(NLP)]基于FNN网络的电影评论情感分析 作者简介:在校大学生一枚,华为云享专家,阿里云专家博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资源建 ...
- 打工人的「周游世界」,AI算法帮你实现,泪目!
一.前言 大家好,我是 Jack . 最近又有一个算法火了,不知道你们看到没?直接看效果! 打工人的「周游世界」,AI 算法帮你实现. 效果这么稳定的人像 Image Matting算法真的不多,并且 ...
- 车牌检测模型训练(含源码和数据集)
车牌检测模型训练(含源码和数据集) 本教程利用NVIDIA TAO进行车牌检测模型的训练: 模型框架:SSD 数据集: CRPD, 连接:https://github.com/yxgong0/CRPD ...
- 【Matlab优化预测】布谷鸟算法优化灰色模型预测【含源码 1244期】
一.代码运行视频(哔哩哔哩) [Matlab优化预测]布谷鸟算法优化灰色模型预测[含源码 1244期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]屈迟文,傅 ...
- 【深度学习】-Imdb数据集情感分析之模型对比(2)- LSTM
[深度学习]-Imdb数据集情感分析之模型对比(2)-LSTM 文章目录 前言 一.LSTM是什么? 算法介绍 二.训练LSTM模型 1.数据预处理 2.构建LSTM模型 设定模型参数 构建并训练模型 ...
- 对京东评论进行情感分析—LDA模型
对京东评论进行情感分析-LDA模型 根据python制作词云图和python爬取京东评论,我们对商品评论做进一步分析. 一.情感分析的用途 首先,我们先看情感分析这个概念,百度上基本都是文本情感分析的 ...
- nmt模型源文本词项序列_「自然语言处理(NLP)」阿里团队--文本匹配模型(含源码)...
来源:AINLPer微信公众号 编辑: ShuYini 校稿: ShuYini 时间: 2019-8-14 引言 两篇文章与大家分享,第一篇作者对通用文本匹配模型进行探索,研究了构建一个快速优良的文本 ...
最新文章
- 如何用Python做三阶拼图?
- Qt安装及配置_很详细(附下载网址)
- 开源中国iOS客户端学习——(五)网络通信ASI类库(1)
- a标签传参接收_[pyecharts1.8] 系列配置之标签设置
- [置顶] cocos2d-x 手游源码站
- 【ABP框架系列学习】N层架构(3)
- gravity与Layout_gravity的区别
- 软件过程评估和软件能力评价之间的差异
- JVM-常用内存调优参数总结
- Scikit-learn:聚类clustering
- 「解决方案」5G基站电气监控云平台
- 看阮一峰es6摘抄的笔记
- 什么是私域?什么是会员制?
- lowB三人组算法-冒泡排序-选择排序-插入排序
- 89---狄拉克 delta 函数
- 多租户数据隔离的三种方案
- 百兆网线和千兆网线做法的区别
- http和https请求工具类
- mysql创建每天执行计划_mysql执行计划
- 用python写12306系统_Python实现12306火车票抢票系统
热门文章
- node yarn_使用Yarn Plug'n'Play摆脱node_modules
- vue-jest测试用例_用Jest快速介绍测试驱动的开发
- 22个学习Python必备的库,你是否还有没见过的呢
- Python老司机总结新手常见10大错误
- Mysql数据库——高级用法(视图、事务、索引、自连接、用户管理)
- Redis 数据类型与操作命令整理
- Flink SQL 1.11 新功能与最佳实践
- Python Base64模块的使用
- 具有相同模式的字符串,使用正则表达式组的提取和替换的案例
- CSS相对定位,固定定位,绝对定位实例方法和实例