中文题目: All in One:GPT在基于情绪分析的少镜头情绪分析中的实证研究
英文题目: All in One: An Empirical Study of GPT for Few-Shot Aspect-Based Sentiment Anlaysis
论文: All in One: An Empirical Study of GPT for Few-Shot Aspect-Based Sentiment Anlaysis (arxiv.org)
1. 摘要:
基于方面的情感分析(ABSA)是自然语言处理领域中不可或缺且极具挑战性的任务。目前的研究主要集中在特定子任务上,因此难以全面涵盖ABSA领域内的所有子任务。随着生成式预训练变换器(GPTs)的发展,为情感分析提供了一体化解决方案的灵感应运而生。在本研究中,我们使用GPTs来处理少样本ABSA的所有子任务,同时为该应用定义了一般学习范式。我们提出了一种名为All in One(AiO)的模型,这是一种简单而有效的两阶段模型,能够处理所有ABSA子任务。在第一阶段,特定的主干网络学习评论的语义信息,并生成启发式增强的候选项。在第二阶段,AiO利用GPT的上下文学习能力来生成预测结果。该研究在五个基准数据集上进行了全面的对比实验和消融实验,结果表明,即使在少样本数据的情况下,AiO也能有效处理所有ABSA子任务。
2. 论文贡献:
本文的主要贡献可以概括如下:
- 这是首次从小样本角度研究GPT在ABSA任务中的应用,提出了一系列可复用的GPTs通用学习方法来管理小样本情感分析任务。
- 我们提出了AiO模型,并在多个ABSA数据集上进行实验,以说明其强大的泛化能力和卓越的性能。
- 本文通过实现ChatGPT-3.5、ERNIE-3.5和开源GPT-J,对GPTs在几次ABSA中的应用进行了全面的研究,实验结果和结论将对该领域的进一步发展起到重要的推动作用.
3. 方法
3.1 GPT 上下文学习
GPT模型已被证明是一个强大的自然语言处理工具,具有令人印象深刻的上下文少样本学习能力。与需要对预训练模型进行微调以适应特定任务的传统技术不同,GPT范式的上下文少样本学习者在推理过程中能够通过极少的示例快速适应新任务,从而无需进行参数更新。
具体来说,模型在给定固定的提示头
H
H
H、上下文
C
=
{
c
1
,
c
2
,
.
.
.
,
c
n
}
C = \{c_{1}, c_{2}, ... , c_{n}\}
C={c1,c2,...,cn}以及新任务的输入𝑥的情况下,预测新任务的目标,并将其视为一个文本序列生成任务。目标
y
=
(
y
1
,
y
2
,
.
.
.
,
y
L
)
y = (y^{1}, y^{2}, ... , y^{L})
y=(y1,y2,...,yL)通过以下公式计算得到:
其中,每个
y
t
y^{t}
yt是语言模型在上下文𝑪、输入𝑥以及之前的预测𝑦<𝑡的条件下预测的概率分布的最大值。一个重要的点是,对于新任务,GPT的可训练权重是被冻结的,不进行更新。
3.2 用于基于方面的情感分析的GPT
给定一个句子 S = ( t 1 , t 2 , . . . , t n ) S = (t_1, t_2, ... , t_n) S=(t1,t2,...,tn),将其中的实体分类为方面实体 A = { ( t i , . . . , t j ) ∣ 0 ⩽ i ⩽ j ⩽ n } A = \{(t_i, ... , t_j )|0 ⩽ i ⩽ j ⩽ n\} A={(ti,...,tj)∣0⩽i⩽j⩽n}和意见实体 O = { ( t i , . . . , t j ) ∣ 0 ⩽ i ⩽ j ⩽ n } O = \{(t_i, ... , t_j )|0 ⩽ i ⩽ j ⩽ n\} O={(ti,...,tj)∣0⩽i⩽j⩽n}。它根据情感表达的不同强调来描绘情感极性𝑷 = {𝑁𝑒𝑔𝑎𝑡𝑖𝑣𝑒, 𝑁𝑒𝑢𝑡𝑟𝑎𝑙, 𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒}。如图2所示,ABSA是一个极其复杂且全面的任务,其主要目标包括提取、分类和匹配。具体来说,每个任务的定义如下:
- 抽取: 方面-意见对抽取(AOPE):识别由一个方面术语
a
i
a_i
ai和对应的意见术语
o
i
o_i
oi组成的所有方面意见术语对。
输入: S ∣ O u t p u t : { ( a i , o i ) ∣ a i ∈ A , o i ∈ O } S|Output:\{(a_i,o_i)|a_i∈A,o_i∈O\} S∣Output:{(ai,oi)∣ai∈A,oi∈O}。 - 分类: 方面层次情感分类(ALSC):通过吸收上下文,任务需要辨别情感极性表达在句子中关于给定的方面实体
输入: ( S , a ) ∣ O u t p u t : { p ∣ p i ∈ P } (S,a)|Output:\{p|p_i∈P\} (S,a)∣Output:{p∣pi∈P} - 匹配: 方面情感三元组提取(ASTE):通过学习上下文,主动提取句子中所有潜在的方面实体
a
i
a_i
ai和意见实体
o
i
o_i
oi,并进行正确匹配,并确定相应的情感极性
p
i
p_i
pi。结果以三元组的形式给出。
输入: S ∣ O u t p u t : { ( a i , o i , p i ) ∣ a i ∈ A , o i ∈ O , p i ∈ P } S|Output:\{(a_i,o_i,p_i)|a_i∈A,o_i∈O,p_i∈P\} S∣Output:{(ai,oi,pi)∣ai∈A,oi∈O,pi∈P}。
GPT模型具备强大的学习能力,能够多方面理解用户的表达。然而,尽管GPT系列在领域适应性方面表现出色,但在某些特定任务(如问答、翻译和实体识别)上,可能无法与专门为这些任务设计的模型相媲美。因此,将GPT系列模型应用于ABSA的主要挑战在于,如何在利用GPT强大的文本学习能力的同时,提升模型在情感分析中的准确性和全面性。为此,我们进一步基于GPT定义了一个通用的ABSA范式。
基于GPT在各种任务中的成功应用,我们将在ABSA中利用GPT的通用学习范式定义如下:
- 提示模板构建:构建合适的提示模板,帮助GPT快速适应下游子任务的内容。这确保了生成的响应多样化,并且符合特定子任务的要求。
- 启发式增强候选项选择:为ABSA专门设计的模型确定一组高质量的启发式增强候选提示,旨在最大限度地帮助GPT适应下游子任务的内容。
- GPT推理:执行GPT的推理过程,使模型能够自主生成下游子任务的文本响应,通常只需最少的干预。
- 答案标准化或对齐:对模型生成的响应进行标准化或对齐,以确保它们与特定子任务的预期答案格式一致。这有助于评估模型的表现。
3.3 AIO框架
论文提出的AiO框架是一个概念上简单但高效的两阶段模型。在启发式增强候选项选择阶段,一个专门针对ABSA子任务训练的基础模型生成启发式候选项。随后,根据特定的筛选规则,为测试输入选择合适的示例。在答案推理阶段,任务特定的提示头、筛选后的候选示例、对应的启发式响应和测试输入被整合到一个格式化的提示模板中,指导GPT模型进行推理。(1. 选示例,2.选模板)
3.3.1 阶段1:启发式增强候选项选择
启发式增强候选项选择阶段旨在通过一个精心设计的基础ABSA模型,为AiO样本输入生成一组启发式答案和一系列启发式示例。基本上,大多数ABSA模型
M
M
M可以分为两个部分:一个编码网络
M
e
M_e
Me,用于从输入文本中获取语义信息;以及一个可训练的解码网络
M
c
M_c
Mc,旨在适应下游任务。
假设所有子任务构成集合𝜍 = [𝐴𝑂𝑃𝐸, 𝐴𝐿𝑆𝐶, 𝐴𝑆𝑇𝐸],任何ABSA数据集定义为
D
=
{
D
i
}
i
=
1
M
D = \{D^{i} \}^M_{i=1}
D={Di}i=1M,选择必须满足以下条件:
其中,𝑺𝑖 表示句子集合,𝑨、𝑶、𝑷 分别表示方面实体、意见实体和情感极性集合,如前面所定义的那样。𝜍 表示特定的任务类型,𝐼𝑛𝑝𝑢𝑡𝜍 [ 𝑗] 表示对应任务的第𝑗个输入,
I
(
⋅
)
I(·)
I(⋅) 表示指示函数,当条件满足时其值为1。
在数据集中,编码网络
M
e
M_e
Me提取训练数据的语义特征。语义特征
Z
i
Z_i
Zi的获取可以通过以下过程简洁地表示:
解码网络
M
c
M_c
Mc通常被设计为适应下游子任务。解码器由一系列前馈神经网络(FFNN)和激活函数(例如,SoftMax)。子任务在语义上的解码过程可以简洁地表示为:
其中
R
i
=
(
a
i
^
,
o
i
^
,
p
i
^
)
R^i = (\hat{a_i}, \hat{o_i}, \hat{p_i})
Ri=(ai^,oi^,pi^)同样,它需要满足成立的条件
T
i
T^i
Ti(公式2)
在实践中,模型
M
M
M生成的结果只有在训练收敛或损失值达到预定义阈值时才具有实际意义。因此,我们首先完全训练了一个独立模型,并将其在训练集上的结果汇总成一个列表
R
=
{
R
i
}
i
=
1
N
R = \{R^i\}^N_{i=1}
R={Ri}i=1N。需要注意的是,𝑁 < 𝑀,这表明
R
R
R只包含训练样本的模型输出。在获得数据集的初始预测后,我们利用训练好的模型和这些结果生成合适的启发式答案和启发式示例,并为AiO的输入样本构建提示模板。下面我们详细描述了这两类候选项的生成过程。
启发式答案首先建立一系列可能的预测,为推理模型的响应提供约束。对于任何给定的子任务,模型可能会生成多个粗略的预测,这些预测可以帮助GPT做出更准确的推理。在之前的工作中[40],已经证明了这种方法能够产生可靠的效果。对于特定的样本
D
p
∈
D
D_p ∈ D
Dp∈D,我们可以将其输入一个训练良好的模型
M
M
M,根据给定的子任务
ς
i
\varsigma_i
ςi获取预测结果,然后选择有意义的结果
R
p
R_p
Rp作为启发式答案。
启发式示例(Heuristic Shots) 旨在从训练集中为每个推理实例选择最佳的上下文示例,以利用少样本提示学习的效果,帮助模型快速适应下游任务 [30, 40]。一个合适的上下文示例
D
s
D_s
Ds应该与输入样本
D
p
D_p
Dp 在表达方式和表达对象上具有相似性。具体来说,我们构建了一个由BERT组成的编码器 𝐸,用于从输入样本
S
p
S_p
Sp ∈
D
p
D_p
Dp 和上下文示例
S
t
i
S^i_t
Sti ∈
D
t
i
D^i_t
Dti 中语义映射文本信息到一个实体空间
R
R
R,生成文本嵌入向量
e
p
e_p
ep 和
e
t
i
e^i_t
eti 。
在此之后,我们计算了样本向量
D
p
D_p
Dp和所有候选向量
D
s
D_s
Ds之间的余弦相似度,并选择了余弦相似度最高的前𝐾个样本作为当前样本的启发式参考实例。
其中,
I
p
I_p
Ip是在训练集
{
D
i
}
i
=
1
N
⊆
D
\{D_i\}^N_{ i=1} ⊆ D
{Di}i=1N⊆D 中与输入样本最相似的前 𝑁 个样本的索引集。随后,针对
D
p
D_p
Dp 的启发式示例模板被构建如下:
3.3.2 阶段2:答案推理
在这一阶段,为各个子任务创建了针对输入样本的提示模板,从而促进GPT快速响应。对于给定的输入,AiO会根据子任务类型
ς
i
\varsigma_i
ςi选择一个特定的提示头模板
h
i
h_i
hi,然后通过结合在阶段1中获得的启发式答案和启发式示例来创建一个启发式提示。
提示头模板提供了具体任务内容的详细自然语言描述。一个精心制作的提示头部模板已被证明可以快速引导GPT模型的推理能力朝向特定方面[40,46]。然而,选择提示头部模板需要丰富的经验和迭代测试[21,47]。通过对大量开创性工作的研究,我们手动修改了基于
A
p
p
l
e
c
t
p
e
r
f
e
c
t
2
Applectperfect^{2}
Applectperfect2生成的提示词,创建了我们的提示词模板。
根据不同的任务类型,选择合适的提示头模板,结合启发式答案和示例,可以创建特定的启发式提示模板。为了增强模型提示模板的可读性和理解性,我们引入了一些固定格式的文本,如“EXAMPLE#1”。例如,给定一个输入样本[1]及其特定的子任务[2],提示样本的构造如图4所示。
为了充分利用可用的示例,论文借鉴了
Y
a
n
g
[
40
]
Yang^{[40]}
Yang[40]等人的经验,引入了一种多查询集成策略。具体来说,对于给定的输入,选择了𝑇 × 𝐾个启发式示例,形成𝑇组提示模板。在并行推理之后,模型获得了𝑇组不同的预测结果。由于每个推理组可能产生多个不同的结果,AiO选择这些结果的并集作为最终预测,以保留结果的多样性。
4. 实验
4.1超参数设置
超参数设置我们使用Jiang等人提出的dualencoder4aste模型。[13]作为微调每个数据集的主干。为了确保我们实验的公平性,并减少由于骨干模型泛化的变化而导致的结果变化,我们为评估中涉及的所有数据集设置了相同的随机种子。此外,我们对每个数据集使用相同的超参数运行骨干模型10次,并选择具有中等性能的模型作为最终骨干。此外,为了更全面地覆盖实验结果,我们使用了几个流行的GPT模型,包括ChatGPT-3.5、ERNIE-3.5和GPT-J。这些GPT模型涵盖了一系列主流的开源和专有模型。
4.2 数据集
我们在三个不同的数据集上验证了所提出的AiO模型,并逐一介绍了数据集。
SemEval V2数据集[39]是ABSA领域最受欢迎和最广泛使用的数据集。该数据集包括四个子数据集:LAP 14 [29],REST 14 [29],REST 15 [28]和REST 16 [27]。这些子数据集的初始数据来源于过去SemEval挑战中的特定任务,随后由研究人员进行了改进和组织[7,26]以创建稳定的版本。该数据集主要包含与笔记本电脑和餐厅领域相关的评论文本,其中为每个评论标记了方面实体,意见实体和情感极性。
MAMS数据集[15]是来自Citysearch纽约数据集[9]的另一个具有挑战性的ABSA数据集。这个数据集中的每个句子平均包含2.62个方面术语。每个句子都包含相反的情感标签,这使得确定对不同方面实体的情感态度变得特别具有挑战性。由于我们在本文中没有讨论方面标签,因此我们只使用了来自MAMS的ATSA版本集。
所有数据集的统计信息见表1。#S和#A分别表示句子和方面的数量
4.3 实验结果
4.3.1 ALSC任务:
(
S
,
a
)
∣
O
u
t
p
u
t
:
{
p
∣
p
i
∈
P
}
(S,a)|Output:\{p|p_i∈P\}
(S,a)∣Output:{p∣pi∈P}
4.3.2 AOPE:
S
∣
O
u
t
p
u
t
:
{
(
a
i
,
o
i
)
∣
a
i
∈
A
,
o
i
∈
O
}
S|Output:\{(a_i,o_i)|a_i∈A,o_i∈O\}
S∣Output:{(ai,oi)∣ai∈A,oi∈O}
4.3.3 ASTE
S
∣
O
u
t
p
u
t
:
{
(
a
i
,
o
i
,
p
i
)
∣
a
i
∈
A
,
o
i
∈
O
,
p
i
∈
P
}
S|Output:\{(a_i,o_i,p_i)|a_i∈A,o_i∈O,p_i∈P\}
S∣Output:{(ai,oi,pi)∣ai∈A,oi∈O,pi∈P}。
5. 消融实验
5.1 样例大小的影响
样本大小对结果的影响。作为ChatGPT-3.5和GPT-J在RES 16上完成ASTE任务的示例绘制,为每个折叠设置拟合曲线并标记拟合极值。
5.2 主干模型的影响
表5:骨干模型对ChatGPT-3.5和GPT-J在LAP14和RES16数据集上实验结果的影响。省略骨干模型用“w/o b”表示,下降值是将主实验中的最佳结果与相应的模型和数据集进行比较后计算得到的。
5.3迁移实验
表6:数据集转移实验结果的比较。比较对应于原始候选数据集的每个数据集的提升值,上升结果以粗体突出显示。
6.结论
本文提出通过引入All in One (AiO)模型来应对基于方面的情感分析(ABSA)所面临的多方面挑战。鉴于ABSA任务的复杂性以及现有解决方案的局限性,我们提出了一种利用特定骨干网络和生成式预训练变换器(GPT)模型的两阶段方法。我们的研究首次从少样本的角度使用GPT来处理ABSA任务,这要求我们定义可重复的通用学习范式,以便GPT能够处理少样本情感分析任务。对各种ABSA数据集进行的广泛实验表明,AiO模型具有强大的泛化能力,并为ABSA领域作出了显著贡献。本研究引入了一种新颖的模型,用于全面处理ABSA子任务。我们相信这项研究提供了宝贵的见解,将指导未来在GPT模型与情感分析交叉领域的发展,特别是在数据有限的情况下。