| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【自然语言处理】【实体匹配】PromptEM:用于低资源广义实体匹配的Prompt-tuning -> 正文阅读 |
|
[人工智能]【自然语言处理】【实体匹配】PromptEM:用于低资源广义实体匹配的Prompt-tuning |
原文链接:https://arxiv.org/pdf/2207.04802.pdf
一、简介? 实体匹配
(Entity?Matching,EM)
\text{(Entity Matching,EM)}
(Entity?Matching,EM)的目标是从两个结构化表中确定出两条记录是否指向相同的实体,该问题是数据管理中基础且重要的任务之一。现有的研究工作通常会假设两个表在 ? 当前的 GEM \text{GEM} GEM方法都是有监督的,需要大量的标注数据,人力成本高昂。近期的研究使用预训练语言模型和微调范式实现了不错的效果,然后微调范式仍然需要一定量的高质量标注数据。 TDMatch \text{TDMatch} TDMatch通过创建图并使用随机游走来实现一种无监督的方法。然而,该方法的两个缺点限制了其在真实场景中的使用:(1) 缺乏标注数据,导致效果不稳定;(2) 随机游走不便于扩展至大规模数据集上,需要大量的执行时间和内存。因此,需要一个在低资源场景中,有效且高效的解决方案。 ? 为了克服低资源的困境,半监督学习技术是一个很好的选择。自训练技术
(self-training)
\text{(self-training)}
(self-training)已经在序列生成和语言识别任务上取得了 ? 基于上述的考虑,本文作者研究了如何在低资源 GEM \text{GEM} GEM上学习到高质量的模型。本文的目标是基于预训练语言模型开发一个有效且高效的低资源 GEM \text{GEM} GEM解决方案,其会通过自训练的方式来提高表现。该任务主要有三个挑战:
? 为了解决上面的三个挑战,本文作者提出了低资源
GEM
\text{GEM}
GEM解决方案
PromptEM
\text{PromptEM}
PromptEM。
Prompt-tuning
\text{Prompt-tuning}
Prompt-tuning是自然语言处理中新的、有前景的范式,其能够解决预训练和微调目标函数间的区别。具体来说,本文设计了一种
GEM
\text{GEM}
GEM相关的 ? 总的来说,本文贡献如下:
二、用于 GEM \text{GEM} GEM的 Prompt?tuning \text{Prompt tuning} Prompt?tuning1. Prompt模板
2. 训练和推断? 通过
三、轻量级自训练1. 概览? 令 D L = { ( x ( i ) , y ( i ) ) } i = 1 N L D_L=\{(x^{(i)},y^{(i)})\}_{i=1}^{N_L} DL?={(x(i),y(i))}i=1NL??和 D U = { x ( i ) } i = 1 N U D_U=\{x^{(i)}\}_{i=1}^{N_U} DU?={x(i)}i=1NU??分别是具有 N L N_L NL?个样本的标注数据集和 N U N_U NU?个样本的无标注数据集。本文的自训练目标是使用不确定性改善表现,并且通过动态数据剪枝实现比传统自训练更加的高效。下面的伪代码描述了轻量级自训练的过程。
给定一个标注数据集
D
L
D_L
DL?,初始化教师模型
M
t
\mathcal{M}_t
Mt?并在
D
L
D_L
DL?上训练至收敛。然后教师模型
M
t
\mathcal{M}_t
Mt?在
D
U
D_U
DU?上产生伪标签。随后,作者引入了不确定性感知的伪标签选择策略来选择高质量伪标签
D
P
D_P
DP?。与此同时,
D
U
D_U
DU?和
D
L
D_L
DL?被更新。接下来,一个学生模型
M
s
\mathcal{M}_s
Ms?被初始化并在更新后的
D
L
D_L
DL?上训练。为了使自训练更加的轻量级和有效,这里使用一种动态数据剪枝策略,其能够在每个固定的 2. 不确定性感知的伪标签选择? 选择高质量的伪标签是改善自训练表示的前提条件。因此,本小节的目标是减少所选样本中的噪音来改善整体表现。选择伪标签最直接的方法是通过选择高置信度的样本。然而,不正确的预测在校准不良的网络中可能具有高的置信度。此外,如果教师模型预测的高置信度样本,那么这些样本对于学生模型来说收益很小。基于这些观察,预测的不确定性可以用来消除校准不良的影响,这里采用了一种不确定性感知的选择策略。正式来说,不确定性可以划分为 3. 动态数据剪枝? 随着训练集的增长会导致更长的训练时间,并使用自训练非常昂贵。近期, 五、实验1. 实验设置1.1 数据集? 使用 Machamp \text{Machamp} Machamp中的7个真实世界的数据集和一个地理空间数据集 (GEO-HETER) \text{(GEO-HETER)} (GEO-HETER)。数据集的统计信息如上表。每个数据集由左、右两个表组成,这些数据集具有不同的格式。这里使用 r a t e % rate\% rate%的标注数据作为训练集,并使用同 Machamp \text{Machamp} Machamp相同的训练/验证/测试集划分。 1.2 Baselines? 本文比较了 PromptEM \text{PromptEM} PromptEM和其余8个实体匹配方法,其中有三个方法 (Ditto,DADER,Rotom) \text{(Ditto,DADER,Rotom)} (Ditto,DADER,Rotom)在低资源实体匹配上有效, TDMatch \text{TDMatch} TDMatch是在结构化和文本数据上的无监督匹配方法。baselines包括:DeepMatcher、BERT、SentenceBERT、Ditto、DADER、Rotom、TDMatch。 1.3 实现细节? 使用
Pytorch
\text{Pytorch}
Pytorch、
Transformers
\text{Transformers}
Transformers库和
OpenPrompt
\text{OpenPrompt}
OpenPrompt库来实现
PromptEM
\text{PromptEM}
PromptEM。使用
RoBERTa-base
\text{RoBERTa-base}
RoBERTa-base作为所有实验中模型的骨干。除非特别说明,所有实现都是在上表中的低资源设置下进行。使用半精度浮点
(fp16)
\text{(fp16)}
(fp16)优化来节约
GPU
\text{GPU}
GPU显存和运行时间。在所有的实验中,最大长度设置为512;学习率设置为2e-5;batch size设置为32;自训练的迭代次数设置为1;
MC-Dropout
\text{MC-Dropout}
MC-Dropout的传播次数设置为10。使用
AdamW
\text{AdamW}
AdamW作为训练的优化器,固定教师模型的训练epoch为20,学生模型的训练epoch为30。每8个epoch剪枝训练集。微调的超参数使用网格搜索并选择表现最好的一个。具体来说,连续模板从
{
T
1
(
?
)
,
T
2
(
?
)
}
\{T_1(\cdot),T_2(\cdot)\}
{T1?(?),T2?(?)}中选择,
u
r
u_r
ur?从
{
0.05
,
0.10
,
0.15
,
0.20
,
0.25
}
\{0.05,0.10,0.15,0.20,0.25\}
{0.05,0.10,0.15,0.20,0.25},
e
r
e_r
er?这从
{
0.1
,
0.2
,
0.3
,
0.4
,
0.5
}
\{0.1,0.2,0.3,0.4,0.5\}
{0.1,0.2,0.3,0.4,0.5}中选择。选择在验证集上
F1
\text{F1}
F1值最高的epoch,并报告其在测试集上的 1.4 评估指标? 评估指标使用 2. 主要结果2.1 在默认低资源设置下的结果? 使用上面8个baseline来验证
PromptEM
\text{PromptEM}
PromptEM在低资源设置下的表现。所有方法在所有数据集上的结果如上表所示。DeepMatcher的效果最差,因为其不能利用近期的预训练语言模型。现有的低资源实体匹配方法Ditto、DADER和Rotom的效果相对较差,因为
GEM
\text{GEM}
GEM问题比传统实体匹配问题更加棘手。特别地,TDMatch由于缺乏标签指导,所以在不同数据集上不稳定,其在
SEMI-HETER
\text{SEMI-HETER}
SEMI-HETER取得了最高的 2.2 不同低资源设置的有效性? 将训练集的比例从25%缩减至5%,从而观察不同低资源设置下的效果。实验结果如上图所示。可以发现 PromptEM \text{PromptEM} PromptEM在许多case中都实现了 SOTA \text{SOTA} SOTA,而 TDMatch \text{TDMatch} TDMatch和 DADER \text{DADER} DADER由于缺乏标注数据指导而不稳定。此外还评估了更具挑战性的设置,即在所有数据集上仅使用80个训练样本。这个设置对于监督方法极具挑战性,例如在 SEMI-HOMO \text{SEMI-HOMO} SEMI-HOMO中仅使用0.46%的标注样本。如下表所示, PromptEM \text{PromptEM} PromptEM在大多数数据集上实现了 SOTA \text{SOTA} SOTA,其表明了 PromptEM \text{PromptEM} PromptEM的成功。此外,这也显示了 PromptEM \text{PromptEM} PromptEM杰出的稳定性,其能够在少量标注数据下实现较好的表现。 ? 总的来说,
PromptEM
\text{PromptEM}
PromptEM在各种低资源设置下几乎超过了所有的baselines。正如挑战一所示,预训练和微调的目标形式间存在显著区分。这个区别阻碍了语言模型中的知识迁移和适用,限制了语言模型中的知识利用。 3. 消融实验? 接下来,作者研究了 PromptEM \text{PromptEM} PromptEM中每个模块的有效性。 3.1 Prompt-tuning实验? 使用
PromptEM?w/o?PT
\text{PromptEM w/o PT}
PromptEM?w/o?PT表示微调模型,而不是使用 3.2 轻量级自训练实验? 使用轻量级自训练来改善低资源下的表现,并使用 PromptEM?w/o?LST \text{PromptEM w/o LST} PromptEM?w/o?LST表示不使用轻量级自训练。可以看到轻量级自训练能够在大多数的cases中改善表现。例如,在 SEMI-TEXT-c \text{SEMI-TEXT-c} SEMI-TEXT-c上带来6.8%的表现。需要注意,轻量级自训练在一些数据集上的改善相对较小。这是因为数据集本身, PromptEM \text{PromptEM} PromptEM相对容易在数据集上实现非常高的效果。 3.3 动态数据剪枝实验? 可以观察到,动态数据剪枝可以在不牺牲测试准确率的情况下删除无用的训练数据。值得注意的是,动态数据剪枝能够剪枝训练数据,并在一些数据集上改善测试准确率。这是因为动态数据剪枝使模型专注在重要且有用的训练数据。 4. 效率分析? 进一步在训练时间和内存使用上探索 PromptEM \text{PromptEM} PromptEM的有效性,结果如上表所示。因为使用类似策略来评估测试集上 GEM \text{GEM} GEM很常见,所以不报告每个评估方法的测试时间。 SBERT \text{SBERT} SBERT表示 SentenceBERT \text{SentenceBERT} SentenceBERT, PromptEM- \text{PromptEM-} PromptEM-表示不使用动态数据剪枝的 PromptEM \text{PromptEM} PromptEM。 4.1 PromptEM \text{PromptEM} PromptEM与最优baseline? 由于篇幅所限,仅报告在 GEM \text{GEM} GEM中取得最优效果的其他方法与 PromptEM \text{PromptEM} PromptEM,即正常实体匹配方法 SBERT \text{SBERT} SBERT、低资源实体匹配方法 Rotom \text{Rotom} Rotom和无监督匹配方法 TDMatch \text{TDMatch} TDMatch。报告 GPU \text{GPU} GPU方法在 GPU \text{GPU} GPU上的显存, CPU \text{CPU} CPU方法在 CPU \text{CPU} CPU上的内存。可以看到, PromptEM \text{PromptEM} PromptEM需要比 SBERT \text{SBERT} SBERT更多的训练时间。这证明了 GEM \text{GEM} GEM问题在有效性和高效性间的权衡。总的来说,花费相对长的时间实现更好的匹配结果。 SBERT \text{SBERT} SBERT、 Rotom \text{Rotom} Rotom和 PromptEM \text{PromptEM} PromptEM需要相似的内存使用,因为都是基于语言模型的。需要强调的是, TDMatch \text{TDMatch} TDMatch需要更多的训练时间和内存使用,特别是在相对大的数据集。 4.2 PromptEM \text{PromptEM} PromptEM与 PromptEM- \text{PromptEM-} PromptEM-? 本文也比较了 PromptEM \text{PromptEM} PromptEM和 PromptEM- \text{PromptEM-} PromptEM-来评估动态数据剪枝的有效性。可以观察到,动态数据剪枝非常有助于减少训练时间,即评估减少26.1%的训练时间。这是因为题材的 MC-EL2N \text{MC-EL2N} MC-EL2N能够量化训练数据中的无用样本。此外,动态数据剪枝不需要额外的内存使用,因为不需要任何新模型参数。动态数据剪枝不伤害效果。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 21:46:25- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |