GRACE

论文题目: 《GRACE: Gradient Harmonized and Cascaded Labeling for Aspect-based Sentiment Analysis》


本文研究对象是方面术语与情感极性的联合抽取,作者提出以前的方法忽略了方面术语之间的相互作用,同时忽略了序列标记任务中标签的不平衡性。针对这两个问题提出新的框架GRACE,解决端到端的方面项极性共提取问题。它采用级联标签的方法来考虑标签之间的相互作用时,标签他们的情感标签同时梯度协调策略来缓解标签的不平衡问题

模型

文中解决得是ASTE问题,把其看作两个序列标签任务,对于给定的句子 S={wi∣i=1,...,n}S = \{w_i|i=1,...,n\}S={wi​∣i=1,...,n} 对于每个单词 wiw_iwi​ 我们的任务就是预测两个标签 tiet^e_itie​ , tict^c_itic​ ,前者是方面词标签 Te={B,I,O}T^e=\{B,I,O\}Te={B,I,O} ,后者是情感极性标签 Tc={POS,NEU,NEG,CON,O}T^c=\{POS,NEU,NEG,CON,O\}Tc={POS,NEU,NEG,CON,O} , 它由两个共享浅层的模块组成,一个是图中粉色部分是用于ATE任务即提取方面词,另一个模块是图中浅蓝色部分是用于情感极性分类

左边是bert,生成多个隐藏状态,最后一层的输出为 HeH_eHe​

bert的不同层捕捉不同的信息,越高层跟任务越相关,越底层提取越基础的语句特征,所以两个模块共享了bert的底层,bert的l层输出为:

Hc=HlH_c=H^lHc​=Hl

所以 H[l+1:L]H^{[l+1:L]}H[l+1:L] 是特定为ATE任务服务

级联标签

考虑到方面词标签之间存在关联,例如文中的例子:

nice operating system and keyboard

因为’operating system‘和’keyboard‘之间是“and”连接,所以operating system情感是积极,可推断keyboard也是积极,所以提出了级联标记方法,该方法使用生成的方面术语序列作为输入来生成情感序列。HcH_cHc​ 输入到新的transformer编码器中,生成新的情感表征 GcG_cGc​

其中Q是预测得到的方面标签,

Gradient Harmonized Loss

训练损失为

有两个因素会影响性能。一个是正面和负面例子之间的不平衡,另一个是简单和困难例子之间的不平衡

从图中可以看到O标签的数量远远大于B,I,即在标签预测任务中,每个标签之间存在不平衡。每个标签的难易属性可以用g来预测:

对于数量很大的标签,一个策略是减少这些标签的重量损失。更新后的损失函数如下。

Virtual Adversarial Training

为了使模型对对抗性噪声更具鲁棒性,利用虚拟对抗性训练,即在训练模型时对输入词嵌入E加入小扰动r。额外损失如下

r的计算过程如下

最后总的损失函数为

一致极性标签

将情感分类视为极性序列标签时的一个问题是,生成的序列标签并不总是一致的。比如 ‘operating system’的极性标签可能是’POS NEG‘,为了解决这个问题设计了一个在相同方面术语内表示不同标签的方法。为了生成ASC序列标签,首先得到方面术语的边界,比如上面的例子,”O B I O B“的边界为: {[1,2),[2,4),[2,4),[4,5),[5,6)},情感极性分类过程如下

本文提出了一个新的框架GRACE来同时解决方面术语提取和方面情感分类问题。该框架采用了一种级联标记方法,通过多头注意力机制来增强方面术语之间的交互。并且通过梯度协调方法,缓解了标签任务中标签的不平衡问题。还引入了虚拟对抗训练和post-trained来提高抽取性能。在三个基准数据集上的实验结果验证了GRACE在极性共提取方面显著优于其他模型。

《GRACE: Gradient Harmonized and Cascaded Labeling for Aspect-based Sentiment Analysis》阅读笔记相关推荐

  1. trainer setup_Detectron2源码阅读笔记-(一)Configamp;Trainer

    一.代码结构概览 1.核心部分 configs:储存各种网络的yaml配置文件 datasets:存放数据集的地方 detectron2:运行代码的核心组件 tools:提供了运行代码的入口以及一切可 ...

  2. VoxelNet阅读笔记

    作者:Tom Hardy Date:2020-02-11 来源:VoxelNet阅读笔记

  3. Transformers包tokenizer.encode()方法源码阅读笔记

    Transformers包tokenizer.encode()方法源码阅读笔记_天才小呵呵的博客-CSDN博客_tokenizer.encode

  4. 源码阅读笔记 BiLSTM+CRF做NER任务 流程图

    源码阅读笔记 BiLSTM+CRF做NER任务(二) 源码地址:https://github.com/ZhixiuYe/NER-pytorch 本篇正式进入源码的阅读,按照流程顺序,一一解剖. 一.流 ...

  5. Mina源码阅读笔记(一)-整体解读

    2019独角兽企业重金招聘Python工程师标准>>> 今天的这一节,将从整体上对mina的源代码进行把握,网上已经有好多关于mina源码的阅读笔记,但好多都是列举了一下每个接口或者 ...

  6. “CoreCLR is now Open Source”阅读笔记

    英文原文:CoreCLR is now Open Source 阅读笔记如下: CoreCLR是.NET Core的执行引擎,功能包括GC(Garbage Collection), JIT(将CIL代 ...

  7. QCon 2015 阅读笔记 - 团队建设

    QCon 2015阅读笔记 QCon 2015 阅读笔记 - 移动开发最佳实践 QCon 2015 阅读笔记 - 团队建设 中西对话:团队管理的五项理论和实战 - 谢欣.董飞(今日头条,LinkedI ...

  8. 05《软件需求模式》阅读笔记

    剩下的两个阅读笔记写第二部分.各类需求模式,共八个领域和它的需求模式,这一次写前四个. 基础需求模式,它是所有种类的系统都可能需要的一些东西.系统间接口需求模式使用系统间接口需求模式定义被定义的系统和 ...

  9. [置顶] Linux协议栈代码阅读笔记(一)

    Linux协议栈代码阅读笔记(一) (基于linux-2.6.21.7) (一)用户态通过诸如下面的C库函数访问协议栈服务 int socket(int domain, int type, int p ...

  10. 大型网站技术架构:核心原理与案例分析阅读笔记二

    大型网站技术架构:核心原理与案例分析阅读笔记二 网站架构设计时可能会存在误区,其实不必一味追随大公司的解决方案,也不必为了技术而技术,要根据本公司的实际情况,制定适合本公司发展的网站架构设计,否则会变 ...

最新文章

  1. Python 之vim编写python自动补全
  2. 新装WINDOWS XP系统 必须安装的十大高危漏洞补丁
  3. php float 和double,PHP float 浮点型数据类型
  4. cglib动态代理和jdk动态代理的区别与应用
  5. 我的webpack配置文件
  6. XML--可扩展标记语言
  7. Django学习之十: staticfile 静态文件
  8. eclipse 常用设置(二)
  9. jdbc连接oracle mysql_JDBC连接MySQL、Oracle和SQL server的配置
  10. 通过SQL语句建立数据库. 表
  11. 联想r720游戏音效增强功能消失的解决
  12. 深度学习面试基础--BN层
  13. PHP 身份证验证方法
  14. 车辆控制-稳态误差分析-前馈
  15. 气象信息无线监测采集系统
  16. 声势浩大发展云服务的金蝶,如今“破茧”了吗
  17. boost format使用详解
  18. 基于鸿蒙系统的APP测试技术,快来入坑
  19. 中国大学慕课公开课-《视听语言》-学习笔记-2
  20. Python 实现按键精灵的功能,超简单详细(Windows版)

热门文章

  1. SolidWorks_画螺杆
  2. 【JS】JS 缓存数据的方法
  3. RGB888 和 RGB565
  4. 时间序列matlab的实现
  5. getWindow().getDecorView().setSystemUiVisibility(...)设置状态栏属性
  6. Vue之点击收藏与取消收藏
  7. TR069协议向导——一个帮助你了解TR069协议的简明教程(一)
  8. 如何进行不同容量硬盘对拷
  9. 蓝屏代码: DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS bootsafe64.sys
  10. python 安装CV2