Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis 论文阅读笔记

news2025/1/12 1:07:12

一、作者

Chenhua Chen、Zhiyang Teng、Zhongqing Wang、Yue Zhang

School of Engineering, Westlake University, China

Institute of Advanced Technology, Westlake Institute for Advanced Study

Soochow University

二、背景

如何为每一个方面词定位相应的意见上下文是 ABSA 任务的关键挑战。最近的一些研究希望通过依赖树中的句法依赖来捕获方面和意见上下文之间的交互。事实上,尽管句法依赖能取得一定的效果,但它仍然会面临一些限制:首先,依赖解析器会在低资源域中表现地更差,甚至在面对低资源语言变得不可用;其次,依赖树通常情况下也不会针对方面情感分类来进行优化,一些现有的优化也只是针对节点分层,而没有优化依赖关系。

三、创新点

在本文中,作者提出了一个用于为每一个方面自动诱导离散意见树的模型。具体来说,该模型会从根节点开始,通过在当前节点的每一侧各选择一个子节点来构建树结构,并持续递归这个分割过程,以获得一个词汇化的二叉诱导树(induced tree),而后生成的诱导树将会作为输入被送到图卷积网络来训练情感分类器。

四、具体实现

1.基于意见树的分类器

意见树将输入的句子表示为 x = w 1 w 2 … w n x = w_1w_2\dots w_n x=w1w2wn,将方面表示为 a = w b w b + 1 … w e a = w_bw_{b+1}\dots w_e a=wbwb+1we,其中 w i w_i wi 表示第 i i i 个单词。对于每一棵意见树来说,二叉树的每一个节点都代表一个单词跨度,通过对二叉树进行中序遍历可以恢复原始句子,而在理想情况下根节点附近的节点应该包含相应的意见词

下图中介绍了意见树生成算法的具体实现,其中 v i j \mathbf{v}_i^j vij 表示范围 [ i , j ] [i, j] [i,j] 中单词对方面 a a a 的极性 y y y 贡献分数。算法首先将方面范围 [ b , e ] [b, e] [b,e] 作为根节点,然后分别从方面词左右两侧选择得分最高的节点作为左右孩子节点,再然后通过递归调用构建函数来构造意见二叉树。其中,贡献分数的计算可以表示为 v p = u p σ ( W p H + W a , p h a ) \mathbf{v}^p = \mathbf{u}_p\sigma(\mathbf{W}_p\mathbf{H} + \mathbf{W}_{a,p}\mathbf{h}_a) vp=upσ(WpH+Wa,pha),公式中的 σ \sigma σ 代表 R e L U \mathrm{ReLU} ReLU 激活函数, H \mathbf{H} H 为通过将 [ C L S ]   w 1   w 2   …   w n   [ S E P ]   w b   w b + 1   …   w e [\mathrm{CLS}]\ w_1\ w_2\ \dots\ w_n\ [\mathrm{SEP}]\ w_b\ w_{b+1}\ \dots\ w_e [CLS] w1 w2  wn [SEP] wb wb+1  we 输入 BERT 得到的方面特定的句子表示, h a \mathbf{h}_a ha 则表示通过将 H b H b + 1 … H e \mathbf{H}_b \mathbf{H}_{b+1}\dots\mathbf{H}_e HbHb+1He 求和池化得到的方面表示。

基于生成的意见树 t t t 和句子表示 H \mathbf{H} H,作者通过图卷积网络来学习每一个词的向量表示。首先,将意见树转化为一个无向图 G G G,该无向图的每一个节点表示一个单词,边通过邻接矩阵 A \mathbf{A} A 来表示。邻接矩阵的构造规则如下:

基于邻接矩阵 A A A 和第 l − 1 l-1 l1 层的表示矩阵 H l − 1 \mathbf{H}^{l-1} Hl1,通过 GCNs 可以得到第 l l l 层的表示 H l = f ( A H l − 1 W l + b l ) \mathbf{H}^l = f(\mathbf{A}\mathbf{H}^{l-1}\mathbf{W}^l + \mathbf{b}^l) Hl=f(AHl1Wl+bl),其中 f f f 为激活函数,其余为模型参数,而 GCNs 第一层的输入 H 0 \mathbf{H}^0 H0 即为 BERT 给出的 H \mathbf{H} H

基于 GCNs 的处理结果,最终的方面特定的特征表示 c \mathbf{c} c 的计算如下图所示,其中 α t \alpha_t αt 为方面 a a a 对第 t 个单词的注意力分数。

基于最终的特征表示 c \mathbf{c} c,最终预测的情感分布为 p = s o f t m a x ( W c c + b c ) \mathbf{p} = \mathrm{softmax} (\mathbf{W}_c\mathbf{c} + \mathbf{b}_c) p=softmax(Wcc+bc)

2.情感分类器的训练

情感分类器的训练通过最大化训练样本的对数似然来实现,训练的目标是最小化 L s u p = − ∑ i = 1 ∣ D ∣ ∑ a ∈ x i log ⁡ p i , y a \mathcal{L}_{\mathrm{sup}} = -\displaystyle\sum_{i=1}^{|D|}\displaystyle\sum_{a\in x_i}\log\mathbf{p}_{i,y_a} Lsup=i=1Daxilogpi,ya,其中 ∣ D ∣ |D| D 为训练集的大小, y a y_a ya 是第 i 个句子中的方面 a 的情感标签, p i , y a \mathbf{p}_{i,y_a} pi,ya 为上一步中得到的情感分布。

此外,作者认为靠近根节点的单词应该得到更高的注意力权重,给定意见树 t,作者计算了每个节点到根节点的最短路径,并通过 KL 散度函数来对注意力分数正则化后的距离之间的关系进行协调。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/153930.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

反补码运算之 “1 - 1 = - 1 ” ?

我们在研究数据的二进制表示时遇到这样一个问题: 由于计算中的CPU只有加法器,没有减法器,所以在计算机采用原码做减法时对于:1 - 1 0 相当于1 (-1),用二进制表示为:000110011001。…

儿童感染新冠病毒后发高烧如何应对?专家来支招

儿童感染新冠病毒后发热较多,但肺炎发展较少儿童感染新冠病毒后发高烧,是重症吗?徐红梅:从目前的接待情况来看,儿童感染新冠病毒后比成人发烧。超过一半的儿童在感染后有发烧症状,伴有咳嗽、鼻塞、流鼻涕、…

JavaWeb的一些学习总结

Web系统就是:前端负责貌美如花,后端负责坚如磐石 企业在做Web系统时,成本与收益的对比是不可忽视的,企业做项目一定是要盈利的! 企业做项目最求的不是技术的新和潮,追求的是低成本和稳还有好用度&#xff…

函数的设计

一、默认参数 C允许在函数定义或声明时,为形参指定默认值,即默认参数(default argument)。 (1)函数定义与函数声明只能设置一次默认参数。 (2)可以设置多个默认参数,设…

【精华】搞定JVM调优学习

JVM 介绍 1. 什么是 JVM JVM 是 Java Virtual Machine(Java 虚拟机)的缩写。一台执行 Java 程序的机器。 2 .JAVA 语言的执行原理 计算机语言: 计算机能够直接执行的指令。这种指令和系统及硬件有关。 计算机高级语言: 在遵循…

「数据」驱动行业拐点,毫末智行冲刺自动驾驶3.0时代

“毫末预计,到2025年中国高阶辅助驾驶搭载率将达到70%。而在汽车新消费领域,中国汽车市场增换购消费比例将达到60%,智能驾驶功能成为必选因素,并迎来商业化的加速发展。”1月5日,第七届HAOMO AI DAY上,毫末…

黑马学ElasticSearch(五)

目录: (1)DSL查询语法-DSL查询分类和基本语法 (2)DSL查询语法-全文检索查询 (3)DSL查询语法-精确查询 (4)DSL查询语法-地理查询 (5)DSL查询语…

计算机网络(一)

计算机网络1 概述1.1 计算机网络的作用1.2 因特网概述1.2.1 网络的网络1.2.2 Internet和internet的区别1.2.3 因特网发展的三个阶段1.2.4 ISP介绍1.2.5 ISP分类1.2.5.1 主干ISP1.2.5.2 地区ISP1.2.5.3 本地ISP1.2.6 因特网交换点 IXP1.3 因特网的组成1.3.1 因特网的边缘部分1.3…

资产管理4大难点,如何破解?

随着企业业务扩大、人员增多,固定资产的数量和种类也会随着增加。此时,如何高效管理企业资产就成为很多企业亟待解决的一大难题。 传统资产管理4大难点 01.资产管理部门需要联系采购部门、使用部门、财务部门等收集数据,汇总难且工作量大&…

vacuum移除不必要的CLOG文件

迫切模式弥补了惰性模式的缺陷。它会扫描所有页面&#xff0c;检查表中的所有元组&#xff0c;更新相关的系统视图&#xff0c;并在可能时删除不必要的CLOG文件与页面。当满足以下条件时&#xff0c;会执行迫切模式。pg_database.datfrozenxid<(OldestXmin-vacuum_freeze_ta…

【多线程】【C++ 知识点】pthread_join学习

目录pthread_join进程id和线程idpthread_join pthread_join() 主线程会进入阻塞装题&#xff0c;pthread_join()之后的代码&#xff0c;只有等待子进程退出之后才能执行。 代码块A pthread_create(&id, NULL, Fn, NULL);pthread_create(&id_1, NULL, Fn, NULL);pthre…

jdk1.8 更替为 oepnJdk8遇到的坑

背景&#xff1a;客户服务器因为说jdk要收费&#xff0c;所以要求将jdk1.8替换为openJdk&#xff0c;本地测试ok&#xff0c;则将服务器的jdk替换为openJdk8&#xff0c;出现一个登录异常&#xff0c;调查发现是一个sso登录的问题&#xff08;单点登录&#xff09;&#xff0c;…

Rhce第一次作业

chrony服务部署&#xff1a;两台机器a: 第一台机器从阿里云同步时间&#xff0c;第二台机器从第一台机器同步时间1.查看防火墙是否关闭&#xff0c;若未关闭&#xff0c;关闭防火墙2.打开chrony配置文件3.向配置文件中写入阿里云时间服务器&#xff0c;并允许两台机器所在的网段…

从0到1完成一个Vue后台管理项目(十八、基础地图绘制)

往期 从0到1完成一个Vue后台管理项目&#xff08;一、创建项目&#xff09; 从0到1完成一个Vue后台管理项目&#xff08;二、使用element-ui&#xff09; 从0到1完成一个Vue后台管理项目&#xff08;三、使用SCSS/LESS&#xff0c;安装图标库&#xff09; 从0到1完成一个Vu…

spring restTemplate的坑----会对String类型的url中的特殊字符进行转义

&#x1f4e2; &#x1f4e2; &#x1f4e2; &#x1f4e3; &#x1f4e3; &#x1f4e3;哈喽&#xff01;大家好&#xff0c;我是「奇点」&#xff0c;江湖人称 singularity。刚工作几年&#xff0c;想和大家一同进步 &#x1f91d; &#x1f91d;一位上进心十足的【Java ToB端…

基于OpenCV实现两种方法测量圆弧长度(步骤 + 源码)

导 读 本文主要介绍基于OpenCV实现两种方法测量圆弧长度(步骤 + 源码)。 背景介绍 要求:如上所示,分别用OpenCV计算出图1和图2中圆弧的长度。因为OpenCV中没有提供现成计算圆弧的方法,所以需要自己编写,本文将提供2种不同的方法来实现,仅供参考。 实现步骤 首…

mmsegmentation 训练Binary segmentation

1.一天最无聊的事从搭环境开始 1.conda create -n swin python3.7 2.conda activate swin 3.conda install pytorch1.7.0 torchvision0.8.0 torchaudio0.7.0 cudatoolkit11.0 4.pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.h…

Keil + STM32学习嵌入式数据结构-01

视频链接 初识数据结构&#xff0c;十天搞定嵌入式数据结构_哔哩哔哩_bilibili 课程目的 学会嵌入式经常使用的数据结构 具备基础知识 具有C语言基础&#xff08;结构体、指针、内存&#xff08;malloc)&#xff09; 具有数据结构的基础知识&#xff0c;因此提及到的基础…

Android 深入系统完全讲解(8)

2 Smali 调试 Smali 是安卓 Apk 反编译出来的格式&#xff0c;类似于我们 PC 上面的汇编语言。语法可以参考这个文 章&#xff1a;https://blog.csdn.net/yuanguozhengjust/article/details/80493963 PC 上的反编译调试工具用 OD 和 IDA&#xff08;这个也可以调试 Android &…

Java 调用 扫描仪的技术该如何选择?

文章目录Java 调用 扫描仪的技术该如何选择?详细介绍;&#xff08;1&#xff09;TWAIN&#xff08;2&#xff09;Kodakimg&#xff08;3&#xff09;Dynamic TWAIN ActiveX&#xff08;4&#xff09;WIA&#xff08;用于桌面应用程序&#xff09;开发应用程序&#xff0c;您可…