[论文笔记-6]Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis

2023-05-16

题目、作者

abstract

1. 依赖树(dependency trees)缺点:

① 依赖于外部解析器,而这些解析器对于低资源的语言来说是不可用的,或者在低资源的领域表现更差;

② 没有为基于方面的情感分类进行优化。

2. 研究方法:本文提出一种特定于方面与语言无关离散潜在意见树(discrete latent opinion tree)模型作为显式依赖树的替代结构。建立了方面-语境注意分数与句法距离之间的联系,并从注意分数中归纳出树。

一、Introduction

1. 依赖树与诱导树(induced tree): 

依赖树。如图1(a)所示,以前的研究通过手动规则将依赖树转换为特定于方面的形式来提高aspect情感分类性能。但是,树结构的调整主要是通过节点层次进行的,没有优化ABSA的依赖关系。【个人理解:使用句法树的目的就是让模型找到方面词对应的意见词,从而根据其意见词预测情感极性。而这里的“没有优化依赖关系”,指的应该是与ABSA任务无关的依赖噪声太多】

诱导树。给定一个目标和一个句子,算法根据一组注意力分数递归地归纳出一个树形结构。【详见后面2.1-Opinion Tree】

2.  算法思想:从根节点(apsect)开始,该算法通过在当前节点的每一边选择一个子节点来构建树,并递归地继续分区过程,以获得二值化和词汇化的树结构(之后将该结构送入GCN)

二、Model

2.1 Opinion Tree Based Classifier  

① Opinion Tree(induced tree):如图1所示,对于方面词a的意见树(诱导树)是一棵二值化(binarized)树。每个节点包含一个单词片段(span)和最多两个子节点【方面词a为根节点】。除根节点外,每个节点只包含一个单词。按顺序遍历(中序遍历)意见树可以恢复原来的句子。理想情况下,根节点附近的节点应该包含相应的意见。

算法1(下图)展示了使用节点得分函数v为方面a构建符合上述条件的意见树t的过程【简单了解即可,因为本篇工作的github地址是空的。。】

② Calculating v(注意力分数): 

将“[CLS] w1 w2 . . .wn [SEP] wb wb+1 . . .we”作为Bert的输入,以获得面向方面的句子表示H,然后计算出一组方面词的注意分数:

③ Graph Representation:

我们把意见树t转换成无向图G。具体来说,我们将每个单词作为G中的一个节点,通过考虑四种边类型,设计G的邻接矩阵A。

公式解释/设计邻接矩阵步骤:首先,我们为每个单词包含self-loops。其次,我们将方面术语中的每个词完全连接起来。第三,对于根节点的子节点wj,我们将wj链接到a中的每个单词。最后,我们考虑t中除根节点外的单个单词节点之间的边。

然后,我们使用GCNs来捕获单词对之间的结构化关系

其中,f是激活函数;A是图G对应的临街矩阵; 为第(l-1)层GCN的输出;

 是第l层的模型参数。(第一次GCN的输出入来自句子encoder)

④ Target Aspect Representation

我们将[CLS]的token和最后一层GCN得到的方面词向量作为特定于方面(aspect-specific)的表示向量来查询输入句子表示。输入句子表示的最终方面特定特征表示c是由注意层输出

 其中,αt是方面词a对于单词wt的注意力分数;

⑤ Output layers

其中Wc和bc都是模型参数。

2.2 Training the Sentiment Classifier

【简单看看即可】

① Cross Entropy Loss

② Tree Distance Regularized Loss 

 

 引入了一个语法约束来调整注意权重理想情况下,接近根节点的单词应该获得较高的注意权重。

给定一个意见树t,我们根据每个单词到根的最短路径的长度计算得出di。在距离和注意分数α的条件下,我们使用KL发散来鼓励体项参与距离较短的情境。 

三、Experiments

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[论文笔记-6]Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis 的相关文章

  • 使用目录树和过滤填充 TTreeView

    在 Lazarus 0 9 28 2 项目上我有一个TTreeView 与名字DirTree在我的表格上 frmConvert 但我想用所有目录树填充它 因为C 像这样 C 目录树 http i imagehost org 0185 cdi
  • 如何在 HTML 表格中呈现树?

    我正在尝试在 HTML 表中显示树结构 它基本上是您提到某个网站的人员列表 但您可以展开每个人员并查看他们也提到的人员 仅 2 或 3 级 我还显示了每个人的许多信息 因此我使用了一个包含几列的表格 我想知道显示此内容的最佳方式是什么 以便
  • 从物化路径构建 JSON 树

    我计划在 MongoDB 中使用物化路径来表示树 并且需要将物化路径转换回 JSON 树 前任 物化路径 var input id 0 path javascript id 1 path javascript database id 2 p
  • 结构归纳终止

    我无法让 Agda 的终止检查器接受使用结构归纳定义的函数 我认为 我创建了以下最简单的示例来展示此问题 以下定义size被拒绝 即使它总是在严格较小的组件上递归 module Tree where open import Data Nat
  • 总结树上的值

    我使用树控件来查看一些基于嵌套 父子 表的分层项目 每个节点都有一个 NameValue 格式 接受 name 和 value 但只有叶子 最后一个节点 具有整数值 并且父节点的值保留为空 仅是它们具有的名称 我想总结值 以便每个父节点都保
  • C# 解析宽松的 json 来制作一棵树

    所以我需要解析类似这样的文件 pl GENERIC BACK COFNIJ WAIT CZEKAJ PAGES ABOUTME ID ID INFO STATUS STATUS TOP MENU LOGGED Zalogowany OPTI
  • rpart - 查找修剪树的 cp 值将返回的叶子数量

    我有一个要求 需要根据分类变量 具有超过 5 个类别值 与连续变量的关联将其分为 5 组 为了实现这一目标 我正在使用rpart with annova 方法 例如我的分类变量是type有代码1 2 3 4 5 6 7 8 9 10 11
  • Java 中的树实现

    我得到了以下树 然后我们被告知使用last child previous sibling方法来改变这三个的实现 结果如下 我现在正在研究 Java 实现 以在这棵树上执行不同的功能 我们有一个 Tree 接口和一个 TreeNode 接口
  • 二叉树的列表实现是否可扩展?

    我正在写一个简单的编解码器 该树将被预先计算 一旦构建就不会发生任何变化 它只会被搜索 平衡二叉树的所有叶节点都是信号值 内部节点是近似压缩表示 如果我有很大的叶节点值 使用 stl 矢量的列表实现是否可扩展 目前我不知道有多大 列出实现
  • 树 /f cmd 修改日期。 Windows Powershell

    我需要创建一个 tree驱动器的文件夹 子文件夹和修改日期的列表 tree f命令效果很好 但我需要添加修改日期 我怎样才能做到这一点 它不会那么漂亮 但你可以使用 Recurse使用 Get ChildItem 选项来查找所有这些 此外
  • 为什么在算法中使用子树大小来选择二叉树中的随机节点?

    我偶然发现了从二叉树中选择随机节点的算法的几种实现 它们都使用子树大小属性 但是 我不明白为什么知道子树大小有帮助 这是实现A https stackoverflow com a 32011526 and B https www geeks
  • Beaglebone Black 上的 GPIO

    我目前遇到了 Beaglebone black GPIO 引脚的问题 我正在寻找一种正确的方法来读取 C 中的 GPIO 引脚 p8 4 的值 如果我理解正确的话 我尝试使用一个库 该库使用了在引入设备树之前不支持的旧方法 我尝试寻找其他解
  • 如何使用表达式树安全访问可为空对象的路径?

    当我将反序列化的 XML 结果放入 xsd 生成的对象树中 并希望使用该树 a b c d e f 内的某些深层对象时 如果该查询路径上的任何节点丢失 它将给出异常 if a b c d e f null Console Write ok
  • 如何按层次结构对文件路径名进行排序?

    我想按层次结构对文件名进行排序 假设我有以下文件夹列表 D Movies Hollywood Comedy adultcomedy D Movies Hollywood Comedy horrorcomedy D Movies Hollyw
  • 非二叉树的中序树遍历

    对于比二叉树更宽的树 术语 中序遍历 是否有明确定义的含义 或者 前 和 后 顺序是唯一有意义的 DFS 类型吗 我的意思是与n每个节点 gt 2 个子节点 我猜是为了n这甚至可能意味着之后要转到 根 n 2孩子们 但这曾经这样使用过吗 那
  • 在关系数据库中存储树结构的已知方法有哪些? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用 XSLT 从平面 XML 列表构建树?

    我使用极简 MVC 框架 其中PHP控制器手上的DOM模型 to the XSLT 视图 c f okapi http okapi liip ch 为了构建导航树 我在 MYSQL 中使用了嵌套集 这样 我最终得到一个如下所示的模型 XML
  • 如何在 R 中将字符串解析为层次结构或树

    有没有办法将表示组的字符串解析为 R 中的层次结构 假设我的小组结构如下 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 3 1 1 3 1 1 1 3 2 1 1 3 3 1 2 1 2 1 1 2 1 1 1 2 1 2 1
  • 如何展平解析树并存储在字符串中以进行进一步的字符串操作 python nltk

    我正在尝试从树结构中获取扁平树 如下所示 我想将整个树放在一个字符串中 就像没有检测到坏树错误一样 S NP SBJ NP DT The JJ high JJ seven day PP IN of NP DT the CD 400 NNS
  • 应用对数来导航树

    我曾经知道一种使用对数从树的一片叶子移动到树的下一个 有序 叶子的方法 我认为它涉及获取 当前 叶子的位置值 排名 并将其用作从根向下到新目标叶子的新遍历的种子 一直使用对数函数测试来确定是否沿着右或左节点向下到达叶子 我已经不记得如何运用

随机推荐

  • Unity 改变物体顶点色

    扩展方法 xff1a Mesh的部分信息展示 xff1a Mesh挂上顶点采样shader xff1a
  • java对字符串数组进行排序

    import java util Arrays import java util Random public class Arrays o3 public static void main String args 自定义字符串 String
  • 判断某一点是否在包围盒内:Bounds.Contains

    蒙皮网格获取方法 xff1a SkinnedMeshRenderer xff1a m Bounds 61 colliderTran GetComponent lt SkinnedMeshRenderer gt sharedMesh boun
  • 关于协程记录一下

    void Start Print 61 Prints private IEnumerator Print void Update if Input GetKeyDown KeyCode S StartCoroutine Print if I
  • Android 10 安装兼容

    android exported 61 true
  • Unity 查Crash

    首先获得堆栈信息 xff0c AS 然后找Unity的NDK目录下的arm linux androideabi addr2line xff08 对应arm v7 xff09 xff0c 或者aarch64 linux android add
  • Unity TextMeshPro 毛边问题

    如图所示 xff1a 边缘像素透明度拉高了 结果是因为开了主相机的Post Processing 加低级抗锯齿 xff08 FXAA xff09 导致的 如图 xff1a 关闭Post Processing 或者关闭抗锯齿可解决 也可采用高
  • UnityWebRequest 本地读StreamingAssets写入persistentDataPath(坑啊)

    下文为自己以前写的 博客 xff0c 可谓打脸啊 xff08 知其然不知其所以然 xff09 以下为 Android 环境 本地读写数据 xff08 踩的坑 xff09 xff1a UnityWebRequest 加载本地文件的时候需要加
  • Application.logMessageReceived

    监听Unity的打印事件 xff0c 如常规打印 xff0c 报错等等 如下代码为自制的打印日志 xff1a List lt string gt mWriteTxt 61 new List lt string gt void OnEnabl
  • Unity编辑器篇(一)Scene界面

    xff08 一 xff09 xff0c 向屏幕中心发射一条射线 lastActiveSceneView 类似于 Game场景的相机 xff0c xff08 其实我也没搞懂是什么东西 xff09 Ray ray 61 SceneView la
  • 计蒜客-炮台实验

    蒜头君在玩一个战争模拟游戏 xff0c 他有高度为 1 2 3 ldots n1 2 3 n 的炮台各一个 xff0c 他需要把这 nn个炮台从左往右排成一行 xff0c 并且炮口都朝向右边 在这个游戏中 xff0c 所有炮台发射的炮弹会摧
  • Dockerfile详解超全

    Dockerfile详解 环境介绍指令介绍FROMMAINTAINERLABELADDCOPYEXPOSEENV在Dockerfile中使用变量的方式 RUNCMDRUN amp amp CMDENTRYPOINTVOLUMEUSERWOR
  • Debian8 修改root密码

    1 当系统启动进入GNU GRUB界面 xff0c 按esc停留在此页面 xff0c 按上下的方向键可以进行选择 2 选中要修改的系统 xff0c 按e进入编辑状态 xff0c 在linux开头的这一行末尾加上 init 61 bin ba
  • debian10 配置ntp服务

    debian10 配置ntp服务 1 安装ntp2 配置3 验证 服务器不能连外网 xff0c 内网中有一台授时服务器 xff0c 内网也搭建了debian10的本地镜像源 1 安装ntp apt install ntp 2 配置 sudo
  • STL priority_queue使用

    转自 xff1a http www cnblogs com lvpengms archive 2010 04 05 1704669 html 包含priority queue 的头文件是 lt queue gt priority queue
  • GNU 简单介绍(含glibc 源码下载)

    GNU是什么 xff1f 先放网址 xff1a https www gnu org GNU是一个自由软件操作系统 就是说 xff0c 它尊重其使用者的自由 GNU操作系统包括GNU软件包 xff08 专门由GNU工程发布的程序 xff09
  • P1591 阶乘数码 【高精】

    题目描述 求 n n n 中某个数码出现的次数 输入格式 第一行为 t t 10 t t leq 10 t t 10 xff0c 表示数据组数 接下来 ttt 行 xff0c 每行一个正整数 n n 1000 n n leq 1000 n
  • P1825 [USACO11OPEN]Corn Maze S 【BFS】

    题目描述 This past fall Farmer John took the cows to visit a corn maze But this wasn t just any corn maze it featured severa
  • P1002 过河卒 【DP】

    题目描述 棋盘上 AAA 点有一个过河卒 xff0c 需要走到目标 BBB 点 卒行走的规则 xff1a 可以向下 或者向右 同时在棋盘上 CCC 点有一个对方的马 xff0c 该马所在的点和所有跳跃一步可达的点称为对方马的控制点 因此称之
  • [论文笔记-6]Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis

    题目 作者 abstract 1 依赖树 dependency trees 缺点 xff1a 依赖于外部解析器 xff0c 而这些解析器对于低资源的语言来说是不可用的 xff0c 或者在低资源的领域表现更差 xff1b 没有为基于方面的情感