Syntax-Aware Aspect-Level Sentiment Classification with PWCN 论文阅读笔记
一、作者
Chen Zhang, Qiuchi Li, and Dawei Song. 2019. Syntax-Aware Aspect-Level Sentiment Classification with Proximity-Weighted Convolution Network. In Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR’19). Association for Computing Machinery, New York, NY, USA, 1145–1148. https://doi.org/10.1145/3331184.3331351
二、背景
在方面级情感分析任务中,对方面及其上下文的语义相关性进行建模一直是一个巨大的挑战。
LSTM 与注意力机制和记忆网络的结合在一定程度上提高了对于方面和上下文之间的语义交互的建模能力,但这些方法往往会忽视句子中的句法关系,比如对于句子 Its size is ideal and the weight is acceptable.,传统的基于语义相关性方法很大可能会将 ideal 描述为 acceptable ,但从句法的角度分析,二者是没有直接联系的。同时,现有的句法分析往往聚焦于单词级别的分析,在处理短语组成的上下文时便会显得捉襟见肘。
三、创新点
为了解决上述局限性,作者提出了一个新的 ABSA 框架,该框架利用方面与其上下文之间的句法关系,基于 LSTM 在 N 元语法(n-gram)的级别上聚合特征。同时受位置机制(position mechanism)的启发,该框架利用邻近权重(proximity weight,上下文词与方面词的句法接近度)来确定上下文词在句子中的重要性。然后邻近权重会被集成到卷积网络中以捕获 N 元句法信息,称为邻近加权卷积网络(Proximity-Weighted Convolution Network)。最后,通过最大池化来选择最重要的特征进行预测。
四、具体实现

模型总体结构如上图所示。一个长度为 n 的句子可以表示为 S={w0,w1,⋯,wτ,wτ+1,⋯,wτ+m−1,⋯,wn−1}\mathbf{S} = \{w_0, w_1, \cdots, w_\tau, w_{\tau + 1}, \cdots, w_{\tau + m - 1}, \cdots, w_{n - 1}\}S={w0,w1,⋯,wτ,wτ+1,⋯,wτ+m−1,⋯,wn−1},其中 τ\tauτ 代表方面术语的起始 token,然后通过词嵌入得到单词向量 V={e0,⋯,en−1}\mathbf{V} = \{e_0, \cdots, e_{n-1}\}V={e0,⋯,en−1},再通过双向LSTM得到隐藏状态向量 H=h0,⋯,hn−1\mathbf{H} = {h_0, \cdots, h_{n - 1}}H=h0,⋯,hn−1。
1.邻近权重
作者在模型中将句法依赖信息形式化为临近权重,用于描述上下文词与方面词之间的接近程度。依照此思路,作者通过位置邻近和依赖邻近,分别对上下文词和方面术语之间的句法依赖进行了建模。
a.位置邻近
位置邻近很容易理解,通常情况下,一个方面词的上下文词更可能在该方面词周围,因此作者将句子中的单词位置信息视为近似的句法邻近度量,位置邻近权重的计算公式如下:

很显然,位置邻近权重会随着上下文词与方面词之间距离的增加而相应减少。
b.依赖邻近

依赖邻近基于句子的句法依存树。对于给定的句子,首先通过spaCy工具构建其句法依存树,然后计算每个单词与方面词之间的依存距离(即每个单词与方面词在依存树中的最短路径长度),对于多词方面短语,考虑对于对于方面边界的最短距离,而对于多句法树的情况,需要手动将其他句法树中的距离设定为句子长度的一半。该距离会被存储到 d={d0,d1,⋯,dτ,dτ+1,⋯,dτ+m−1,⋯,dn−1}\mathbf{d} = \{d_0, d_1, \cdots, d_\tau, d_{\tau + 1}, \cdots, d_{\tau + m - 1}, \cdots, d_{n - 1}\}d={d0,d1,⋯,dτ,dτ+1,⋯,dτ+m−1,⋯,dn−1}中。最后,根据 d\mathbf{d}d 即可计算依赖邻近权重,计算过程如下:

2.邻近加权卷积
邻近加权卷积的本质是在长度为 l 的卷积核上的一维卷积,同时会在卷积计算之前分配邻近权重,从而得到的句子中第 i 个词的邻近加权表示 ri=pihir_i = p_ih_iri=pihi。此外,作者还对句子进行了零填充以确保卷积操作输入的句子和输出的句子具有相同的长度。
卷积操作可以表示为 qi=max(Wc⊤[ri−t⊕⋯⊕ri⊕⋯⊕ri+t]+bc,0)q_{i}=\max \left(\mathbf{W}_{c}^{\top}\left[r_{i-t} \oplus \cdots \oplus r_{i} \oplus \cdots \oplus r_{i+t}\right]+b_{c}, 0\right)qi=max(Wc⊤[ri−t⊕⋯⊕ri⊕⋯⊕ri+t]+bc,0),其中 t=⌊l2⌋t = \lfloor \frac{l}{2} \rfloort=⌊2l⌋,Wc\mathbf{W}_{c}Wc 和 bcb_cbc 分别为为卷积核的权重和偏置。由于只有少数卷积层的输出特征对分类有指导意义,因此还要通过最大池化来获最显著的特征 qsq_sqs。最后 qsq_sqs会被送到全连接层,通过 softmax 归一化以获得情感极性的分布。
模型的训练采用标准的梯度下降算法,采用交叉熵损失函数以及 L2L_2L2 正则化。
五、实验
作者采用了 Laptop(Pontiki et al., 2014)和 Restaurant(Pontiki et al., 2014)两个数据集作为实验数据集。
作者对 PWCN-Pos(位置邻近的 PWCN)和 PWCN-Dep(依赖邻近的 PWCN)分别进行了实验,对比的模型除了 LSTM、RAM、IAN和TNet-LF以外,还包括两个模型变体 Att-PWCN-Pos(邻近权重会乘以归一化后的注意力权重,用来验证句法依赖与语义相关性是否可以相互结合)和 Point-PWCN-Pos(l 元语法被转化为一元语法以验证 N 元语法的有效性)。
作者对三次随机初始化后的实验结果进行了平均,最终的结果如下图所示:

实验结果也表明句法依赖方法的效果优于语义相关性的方法。
相关文章:
Syntax-Aware Aspect-Level Sentiment Classification with PWCN 论文阅读笔记
一、作者 Chen Zhang, Qiuchi Li, and Dawei Song. 2019. Syntax-Aware Aspect-Level Sentiment Classification with Proximity-Weighted Convolution Network. In Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information …...
hadoop考试应急
概述 四大特点:大量化、快速化、多元化、价值化 关键技术:采集、存储管理、处理分析、隐私和安全 计算模式:批处理、流、图、查询分析计算 Hadoop处理架构 了解就好 2007年,雅虎在Sunnyvale总部建立了M45——一个包含了4000…...
【React】Hooks
🚩🚩🚩 💎个人主页: 阿选不出来 💨💨💨 💎个人简介: 一名大二在校生,学习方向前端,不定时更新自己学习道路上的一些笔记. 💨💨💨 💎目…...
升级Room引发的惨案!!
kotlin升级 在升级kotlin的时候,直接升级到大版本的kotlin(比如1.7以上),直接报错,只是报错不知道原因。 koltin Release details 后来把koltin版本改成1.6.0,报如下的错,我们才知道gradle是需…...
RPC框架:一文带你搞懂RPC
RPC是什么(GPT答) ChatGPT回答: RPC(Remote Procedure Call)是一种分布式应用程序的编程模型,允许程序在不同的计算机上运行。它以一种透明的方式,将一个程序的函数调用定向到远程系统上的另一个程序,而使…...
电子招标采购系统源码—企业战略布局下的采购寻源
智慧寻源 多策略、多场景寻源,多种看板让寻源过程全程可监控,根据不同采购场景,采取不同寻源策略, 实现采购寻源线上化管控;同时支持公域和私域寻源。 询价比价 全程线上询比价,信息公开透明࿰…...
P16 激活函数与Loss 的梯度
参考:https://www.ngui.cc/el/507608.html?actiononClick这里面简单回顾一下PyTorch 里面的两个常用的梯度自动计算的APIautoGrad 和 Backward, 最后结合 softmax 简单介绍一下一下应用场景。目录:1 autoGrad2 Backward3 softmax一 autoGrad输入 x输出损…...
ThinkPHP5美食商城系统
有需要请私信或看评论链接哦 可远程调试 ThinkPHP5美食商城系统一 介绍 此美食商城系统基于ThinkPHP5框架开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。用户注册登录后可购买美食,个人中心,评论和反馈等ÿ…...
Vue3 - $refs 使用教程,父组件调用获取子组件数据和方法(setup() / <script setup>)
前言 在 Vue2 中父组件使用 $refs 调用子组件数据和方法非常简单,但在 Vue3 中这种方法行不通了。 本文实现了 Vue3 中父组件使用 $refs 获取调用子组件数据和方法教程, 并且提供了 setup() 与 <script setup> 两种 “开发模式” 的示例代码,请根据需要进行选择。 网…...
华为OD机试 - 众数和中位数(Python)| 真题+思路+考点+代码+岗位
众数和中位数 题目 众数是指一组数据中出现次数多的数 众数可以是多个中位数是指把一组数据从小到大排列,最中间的那个数, 如果这组数据的个数是奇数,那最中间那个就是中位数 如果这组数据的个数为偶数,那就把中间的两个数之和除以 2 就是中位数查找整型数组中元素的众数并…...
一眼万年的 Keychron 无线机械键盘
一眼万年的 Keychron 无线机械键盘 一款好的键盘对于程序员或者喜欢码字的人来说是非常重要的,而最近博主入手了自己的第一款机械键盘——Keychron 无线机械键盘。 机械键盘特点 有独立轴体,通过两个簧接触,来触发信号,价格相对贵…...
自动化测试高频面试题(含答案)
Hello,你们的好朋友来了!今天猜猜我给大家带来点啥干货呢?最近很多小伙伴出去面试的时候经常会被问到跟自动化测试相关的面试题。所以,今天特意给大家整理了一些经常被公司问到的自动化测试相关的面试题。停,咱先收藏起…...
3、按键扫描检测处理
说明:本文处理按键的短按、长按检测执行,非矩阵按键 硬件可以类似如下连接即可,无需放置上下拉电阻; 按键动作分长按、短按(弹起时执行)两种 按下不放执行长按,但松开按键时不予执行短按函数 多个按键可以同时操作 按…...
集中式存储和分布式存储
分布式存储是相对于集中式存储来说的,在介绍分布式存储之前,我们先看看什么是集中式存储。不久之前,企业级的存储设备都是集中式存储。所谓集中式存储,从概念上可以看出来是具有集中性的,也就是整个存储是集中在一个系…...
【机器学习数据集】如何获得机器学习的练习数据?
一、scikit-learn自带数据集Scikit-learn内置了很多可以用于机器学习的数据,可以用两行代码就可以使用这些数据。自带的小的数据集为:sklearn.datasets.load_<name>load_bostonBoston房屋价格回归506*13fetch_california_housing加州住房回归20640…...
【编程实践】使用 Kotlin HTTP 框架 Fuel 实现 GET,POST 接口 kittinunf.fuel【极简教程】
目录 Fuel 简介 实现代码 GET网络请求用法(有三种写法...
大数据DataX(一):DataX的框架设计和插件体系
文章目录 DataX的框架设计和插件体系 一、DataX是什么...
软考高级信息系统项目管理师系列之十一:项目进度管理
软考高级信息系统项目管理师系列之十一:项目进度管理 一、进度管理领域输入、输出、工具和技术表二、项目进度管理1.项目进度管理过程2.项目进度管理三、项目进度管理过程1.项目进度管理2.工作包和活动3.活动清单4.活动属性5.项目进度网络图6.资源日历7.活动资源需求8.资源分解…...
vue2版本《后台管理模式》(下)
文章目录前言一、home 页以下都属于home子组件二、header 头部 组件二、Menu 页面三、Bread 面包屑四、Footer五 、分页器: Pageing六、权限管理总结前言 这章…...
软考中级-程序设计语言
(1)解释器解释源程序时不生成独立的目标代码,源程序和解释程序都参与到程序执行中。(2)编译器编译时生成独立的目标代码,运行时是运行与源程序等价的目标程序,源程序不参与执行。阶段补充&#…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
