栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

2022 ACL论文3篇

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2022 ACL论文3篇

Consistent Representation Learning for Continual Relation Extraction

这篇论文是关于连续关系识别的,连续关系意思就是识别之前文本语料中没有出现过的关系,这样,更加符合正式场景。缩写为:CRE
这个方向最关键的难点是:如何应对记忆消失的问题,因为在学习新任务时,模型可能会忘记旧任务。(最有效的方式是存储所有见多的训练数据,但这不现实)

在灾难性遗忘这个问题上,图像领域研究的可能较多(正则化、动态结构(可以详见论文)),在NLP上,没有归类,列举了一些NLP方向的一些研究成果(迭代式记忆巩固训练、课程学习、更好的学习关系原型表示)----------这篇文章认为,上述方法没有考虑关系嵌入空间的一致性。

这篇文章也是从:如何得到更好的原型表示考虑的,结合了有监督下的对比学习和知识蒸馏技术(这个领域第一次接触,前后贯通感不是很好,可能需要二读)

方法:

episodic memory(表象记忆模块):在历史任务中存储几个小的sample的模块。
整个框架分为三步:对于新任务的初始训练(有监督的对比学习);sample selection(例子选择—k_means聚类,分的类别数=关系数,选择离聚类中心最近的存储在sample中);一致性表示学习(关系嵌入统一在一个空间内------对比重放(记忆模块中的samples)和知识蒸馏)

  1. 编码:encode,关系表示以两个实体embed构成。
  2. 新任务初步训练(**loss_1:**对比训练的loss)
  3. 选择samples(sample数量在论文中做了不同数量下的实验对比分析)
  4. 一致性表示学习(**loss_2:**使用记忆bank中的sample做对比重放学习;**loss_3:**知识蒸馏(KL散度))
  5. 为什么用到了知识蒸馏呢,因为觉得,只使用记忆模块中的sample学习,可能出现过拟合的问题)
数据集:

fewrel/TACRED

评估:

在每一步中,所有任务的平均准确率(using the average accuracy of K tasks at each step. )
future work:跨领域的持续性关系识别

OneRel: Joint Entity and Relation Extraction with One Module in One Step

这篇论文是限定域的句子级别的关系抽取,也就是最普通的那一类,这篇文章应该是2022年新的SOTA了。它和TPLinker还是有不同的。

这篇文章直接从目标入手,考虑triple的抽取,既然最终评测的是triple,那就直接以最终目标为训练目标,文章的说法是triple是要素是相互依赖和不可分割的。我也认为是这样的,但一直也没有想出怎么以triple做正负分类的方式,这篇文章是直接(Tplinker好像也是如此,但是关系score的计算方式两文中有些差别,而且,我觉得这个文章好像更容易理解一些。)

文章对以前研究的归类为(这个归类,目前,我觉得还是不要采纳了,22/5/13的看法):
multi-module multi-step:(多模块多个step)认为是cascad方式
multi-module one-step(多模块一个step)认为是pipeline方式
one module one step—它们的方法
方法:
直接上图吧,这种结构对于SPO、EPO也是友好的

每个关系下的三元组是用4个tag,(HB-TB、HB-TE、HE-TE,-)head begin,tail begin,head begin,tail end…
(很明显,标签矩阵M是稀疏的,这有以下优点。首先,在进行分类时,使用三个而不是九个特殊标签可以有效缩小潜在的搜索空间。第二,稀疏的M意味着在训练过程中,有足够的负样本。第三,M的稀疏性保证了三要素解码的简单性和高效性)
解码的时候,head_entity使用HB-HE和HE-TE两个标签解码;tail_entity使用HB-TB和HB-TE解码;

基于分数的分类器:
计算每个的分值,公式是(首先对[h,t]做线性变换,然后,通过点乘得到score function。(我觉得这里的计算很简单,很实用)------(补充,在论文后续篇章中,提到了------------------我们基于评分的分类器借用了HOLE(Nickel, Rosasco, and Poggio 2016)的想法,理论上,它也应该能够学习关系之间的相关性和相互排斥性。为了验证我们的分类器的学习能力,我们通过t-SNE(Maaten和Hinton,2008)将NYT的关系表示可视化,这是一种非线性降维算法。我们省略了6个在整个训练集中出现少于50次的长尾关系,结果如图3所示。)这也证明了这种评分方式可以学习到关系间的相关和相斥性。


扩展到整个三元组,分值定义为(4个tag):v就是分值

概率是否为三元组(softmax)和loss函数为:

整个矩阵的运算过程大致是:

总结,我还是认为这篇文章有借鉴之处的 Document-Level Relation Extraction with Adaptive Focal Loss and Knowledge Distillation

这一篇文章是关于篇章级关系抽取的,刚开始吸引我的是adaptive focal loss,适应性焦点函数,这对于解决正负样本不均以及长尾分布的情况应该是有帮助的!https://blog.csdn.net/Hekena/article/details/124745413?spm=1001.2014.3001.5502
我目前认为,篇章级关系抽取也许要考虑的就是长距离下的依赖问题,实体对间距较远或者长尾关系等等。
文章的出发点:(在看这篇文章时,和第一篇文章总是有点弄混)也可以理解为现有研究的不足,(1)实体对之间的交互联系的建模考虑较少(但也有典型方法,比如CNN)(2)类不均衡(3)远程监督数据被证明有用,但怎么用的问题?
这篇文中贡献:(1)提出了轴向注意力模块(为了建模在两步之间的关系三元组之间的相互依赖),这一块没有太看明白(2)adaptive focal loss (3)知识蒸馏克服标注数据与远程监督数据之间的不同(人工标注数据训练teacher model,之后teacher model 学习远程监督数据,产生soft label作为student model的学习目标,最后,利用人工标注数据微调预训练的学生模型)
每一个点都对应了上边了出发点。
问题定义:就是给定实体对,判断这些实体对之间的关系

方法: 实体表示:

在实体的start和end位置添加了特殊token*,还有设置了最大文本长度,进行了分块(chunk函数),pool采用的logsumexp pooling方式https://blog.csdn.net/Hekena/article/details/124745413?spm=1001.2014.3001.5502,又是一种新的pool方法,
具体操作,是将针对同一个实体的所有表达做log(sum(exp(hm)),集成之后的feature表示作为这个实体的表示。

文本增强的实体表示:

attention weight采用了mean pool attention weight。(具体看论文吧,这不是我这次看的重点)

实体对的表示:

矩阵nnd(n表示实体的个数)表示文章D中的所有实体对

实体对的增强表示:

考虑了关系路径,而建模时,使用到了实体对表,应该大概是这样
( 给定一个n×n的实体表,对于实体对(es, eo),对其轴心元素的关注相当于对(es, ei)或(ei , eo)元素的关注。)
也就是说,如果一个两跳关系(es, eo)可以被分解成一条路径(es, ei)和(ei , eo),那么对(es, eo)进行分类的最有信息量的邻居是与这个实体对共享es或eo的一跳候选者。

适应性焦点损失

为每一个类别加了一个中间类别,不同类别的阈值不同。
正例和负例的概率分别是:


焦点损失函数,去掉了α,只考虑了不同类别下的权重γ。
沿着文章读下来,可能这就是做科研的顺序,架构想法了,就该设计损失函数了,最后,实验验证。

知识蒸馏:

这一款是为了利用远程监督的信息

整个的loss是有知识蒸馏的损失函数和**焦点损失函数(关系分类)**两部分组成的

数据集:

DocRED和HacRED

Document-level Relation Extraction as Semantic Segmentation

这篇文章,我感觉是吧别人的各个模块做的拼接,拼接吧,还取得了不错的效果,这就羡慕嫉妒了!!
整体来说,没太看懂。尤其是每个关系矩阵下的feature map的获得。
在对先前工作总结时,不出意外的,Graph-based占据了这个领域的一壁江山。另一壁划分给了transformer-based。
这篇文章借鉴了(作者自己说的)视觉领域的语义分割技术(语义分割(一个著名的计算机视觉任务),其目标是通过卷积网络将图像的每个像素标注为相应的代表类别。)类似下图。

这个模型架构是:
(借鉴了Unet 《U-Net: Convolutional Networks for Biomedical Image Segmentation》)其实是把人家的架构里conv的展开了而已,这篇文章的loss好像也是抄的(应该是苏剑林的科学空间2020年提出来的loss)。

这个图下边也没有太多的解释,第一个蓝色的表是基于实体的特征表(维度是D,表的计算方式文中是给出了两种,一是基于相似性度量的方式和基于背景的方式),然后,通过U-net得到新的文本表示(U-net是分为两个模块的,一是上采样块,一是下采样块,坐标是下采样,通道数量增加一倍,右边通道数量减少一倍,这样一中和,特征维度还是没有变)

然后通过线性变换,得到两个实体之间存在关系r的概率

损失函数的计算:

发现一个现象,RE在文件级的关系抽取,模型好像都很复杂的样子,反正这几篇是,好几个模型叠。参数看起来不小。而且,好多思路是从CV转过来的,包括loss,我有一种CV好像高于NLP(没有PLM的条件下)的感觉。

另外,在说一点,我现在很困惑,什么是创新呢?来看,One_rel的标签体系应该是借用别人的吧,score计算时借用别人的吧,loss是借用别人的吧(和TPlinker一样),算是组合了吧,但人家组合起来效果好,所以发了ACL吗?
在看这个U-net这个,模型U-net是借用的吧,loss是借用的吧,这就没啥了,也是组合吧,人家发了IJCAI?

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/883208.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号