MESED
A Multi-modal Entity Set Expansion Dataset with Fine-grained Semantic Classes and Hard Negative Entities
具有细粒度语义类和硬否定实体的多模态实体集扩展数据集
实体集扩展介绍
定义
实体集扩展(Entity Set Expansion,ESE)任务旨在用属于同一语义类别的新实体扩展少量种子实体。例如,给定{Washington D.C., Chicago, Los Angeles},ESE 会尝试检索具有目标语义类别 US 的其他实体城市,如New York, NYC, Boston。
存在问题
传统的ESE 方法基于单模态(即字面模态),难以处理现实世界中的复杂实体,例如:
- 具有细粒度语义差异的否定实体:指属于同一粗粒度语义类作为目标类的实体。这些实体共享文本内涵的语义,因此很难进行详细区分。例如,在扩展US Cities时,不可避免地要扩展具有相同父类(即US Location)的实体,如同样位于美国的佛罗里达州和德克萨斯州(US states)。
- 同义实体:实体有各种别名,ESE 模型可以很容易地理解常见的别名,而无法理解对上下文敏感的别名,如缩写和昵称。由于确定缩略语和昵称的含义需要明确的文本提示,因为确定它们的含义需要明确的文本提示。例如,SEA 在某些上下文中只表示西雅图,这可能会导致检索的遗漏。
- 多义实体:表示文本中提及的多个实体可能存在歧义。由于预训练的语言模型是通过word co-occurrence来学习语义的,因此由相同标记组成的实体在本质上更接近。例如,Washington, D.C.(城市)到Washington State(州)的 L2 距离反而小于到Austin等其他许多城市的距离(8.89 对 10.02)。因此,仅仅具有相同文本标记的实体可能会被错误地检索出来。
- 长尾实体:语料库中的低频实体,如生僻地名。由于文本描述不充分,这些实体的表示常常过于稀疏,这给它们的检索带来了挑战
多模态实体集扩展
因此,提出了多模态实体集扩展(MESE),即模型整合多种模态的信息来表示实体。直观地说,多模态信息对 ESE 有三方面的好处:
- 不同模态可以提供互补信息:多模态信息可以补充文本(尤其是短文本)提供的信息,从而增强模型对实体的全面理解
- 对于同一语义类别或实体,多模态信息通过共同的视觉属性提供统一的信号:多模态信息可以作为一种内聚信号,将基于共同视觉属性或特征的语义类别联合起来。例如,在处理漫画人物时,图像的背景和风格可以作为漫画人物的统一特征,将其与硬性的负面语义类别 “电影人物 “区分开来。
- 多模态信息可为同义实体提供稳健的匹配信号
遗憾的是,尽管有多种多模态数据类型,但目前还没有基于细粒度语义类别构建的多模态数据集可用来评估 MESE 的功效。为了填补这一空白,我们构建了一个名为MESED 的大规模人工标注 MESE 数据集,其中包括来自维基百科的 14,489 个实体和 434,675 对图像-句子。据我们所知,MESED 是首个进行了大规模、精细人工校准的 ESE 多模态数据集。MESED 的几个特点突出了 ESE 所面临的挑战。首先,我们精心设计了一个由 26 个粗粒度类别和 70 个细粒度类别组成的语义类别模式,其中相互模糊的细粒度类别(如中国演员与美国演员)被指定为彼此的硬否定类别。同义词和多义词实体也加入其中,以扩大实体之间的混淆。为了衡量模型理解稀疏实体的能力,还特意加入了不常见的语义类别。
我们提出了一个功能强大的多模态模型 MultiExpan,该模型在四个多模态预训练任务上进行了预训练。在 MESED 上进行的大量实验和分析表明了该数据集的高质量和我们的 MultiExpan 的有效性,同时也为未来的研究指明了方向。
主要贡献:
- 提出了一项新颖的多模态实体集扩展(MESE)任务,该任务可扩展多种模态的实体。
- 首先发布了一个名为 MESED 的大规模人工标注 MESE 数据集,可以微调语义类和模棱两可的候选实体。
- 提供了强大的多模态baseline模型 MultiExpan,并探索了多样化的自监督预训练目标,以实现多模态实体的感知学习。
数据集构建
MESE 的输入是一个小集合$𝑆={𝑒_1,𝑒_2,…,𝑒_𝑘}$,其中包含几个描述某个语义类别的种子实体和一个候选实体库V。语料库D包含多模态文本${e_i, (t_1^i, v_1^i),…,(t_n^i, v_n^i)}$,给定的实体$e_i$,$t_n^i$是一个$e_i$构成的句子,$(t_n^i, v_n^i)$形成一个图像-句子对。注意在特定语境中可能缺乏任意模态。
数据收集
采用了更通用的自上而下的方法来构建 MESED。即首先构建语义类别和相应的实体,然后依次收集与实体相对应的文本和视觉语境。
- 语义类和实体收集
- 收集实体标注的句子
- 收集相关图片
- 图像重新排序
MultiExpan 方法
将 Multi-Expan 分成两个步骤:多模态实体表示阶段和实体扩展阶段。
在第一阶段,我们设计了一个多模态实体级编码器,其输出是候选实体的掩蔽跨度概率分布。实体表示为包含该实体的所有句子的预测实体分布的平均值。我们提出了一个多模态掩蔽实体预测任务和三个辅助自学习预训练任务,以重新完善实体表示。在第二阶段,MultiExpan 会根据实体概率表征的相似性获取目标实体。提出 MultiExpan 的目的是为了提供一个稳健的多模态baseline,并探索不同预训练任务的有效性
多模态实体表示阶段
多模态编码器首先利用自注意Transformer分别处理文本和图像,然后将它们结合起来,进行深度跨模态交互。
文本:上下文文本用$BERT_{base}$初始化的12层Transformer编码,获得文本嵌入$\hat{W} = {\hat{w_1}, \hat{w_2}, …, \hat{w_{L_1}} = BERT_{BASE}(T)}$。$L_1$ 是句子中词块的最大长度
图像:将每幅图像转换成固定的形状,并确定每个patch的大小,将每幅图像分为 36个patch,然后用ResNet提取patch特征:${v_1, v_2, …, v_{L_2}} = Flat(Resnet(I))$。$L_2$是patch数。
由于patch特征会导致分割过程中位置信息的丢失,因此添加了一个可学习的位置嵌入$P = {p_1, p_2, …, p_{L_2}}$来标记每个patch的位置信息。patch特征和位置嵌入都通过成对相加的方式结合起来。
最后,建立一个 3 层Transformer架构,作为视觉信息处理中的图像编码器。
跨模态融合:通过文本特征和视觉特征的组合$concat(\hat{W}, \hat{V})$得到隐藏状态${h_1,h_2,…,h_L}$。然后,我们将其输入一个 3 层Transformer进行交互和融合,使图像-文本对完全对齐:${\hat{h_1},\hat{h_2},…,\hat{h_L}} = Encoder_{cross}({h_1,h_2,…,h_L})$,这里$L=L_1+L_2$
多模态嵌入编码器后面有一个分类 f。在得到掩码位置的隐藏状态后,嵌入向量通过 MLP 和 Softmax 函数转换为掩码实体在可能的候选实体中的概率分布:
$V_e$表示候选实体词汇量的大小。
训练目标
在多模态编码器的训练中,四种自监督预训练目标包括:Masked实体预测损失、对比学习损失、聚类学习损失和动量蒸馏损失。最终,多模态编码器对这四个目标进行迭代优化。
Masked实体预测损失
用交叉熵损失计算,$y$表示one-hot向量,$N$表示batch size,$\eta$表示平滑因子,用于防止与目标实体共享序列的实体被过度压制。
对比学习损失
对比学习通过拉近相同语义类别实体的代表和拉远不同语义类别实体的
代表,使语义类别的语义边界更加清晰。
从上一次迭代中获得的扩展列表中为每个语义类生成正反两方面的实体。排在前$K_{pos}$ 位的实体被定义为正实体,排在$L_{neg}$至$U_{neg}$之间的实体则被视为负实体。来自正/负实体的样本配对形成正/负样本对。对于大小为𝑁 的迷你批次,每个样本$x_{2𝑖− 1}$ 与其他样本形成 $2𝑁−1$对,其中,我们将$x_{2𝑖− 1},x_{2i}$对视为正,并定义其他 $2𝑁−2$对为负。
由于直接对隐藏特征$\hat{h}_{MASK}$使用对比学习可能导致信息丢失,所以在多模态编码器后面插入了一个双层MLP(用$p_{con}(\cdot)$表示)来把隐藏特征映射到正则子空间:$z_i= p_{con}(\hat{h}_{MASK})$。相似度计算用点积:
对比学习的损失集中在硬性的负面实体,对于一个样本$z_i$(假设它与$z_j$形成正样本对),则损失为:
聚类学习损失
采用另一种投影头(表示为$p_{clu}$ ),将输入样本$x_i$ 映射到一个语义类子空间,结果是$c_i = p_{clu}(\hat{h}[MASK])$。$c_i$的维数$M$与聚类的数量(即目标语义类别的数量)有关。我们认为,一个语义类别可以通过一批实体对它的概率反应来表征。让$C = [c_1,…,c_{2i-1},…,c_{2N-1}] \in R^{N \times M}$表示样本${x_1,…,x_{2i-1},…,x_{2N-1}}$的类可能分布,$C’ = [c_2,…,c_{2i},…,c_{2N}]$表示样本${x_2,…,x_{2i},…,x_{2N}}$的类可能分布。正聚类对是由矩阵$C$和$C’$的相同列所代表的语义类别形成的,这是因为与这些列向量的每个元素相对应的实体$x_{2𝑖− 1}$ 和$x_{2i}$ 是源自同一语义类别的正样本对。
动量蒸馏损失
MESED 中的图像-句子对是从网络中收集的,通常伴有噪声,这就导致收集到的图像可能与句子关系不强,或者属于语义类的扩展实体没有包含在地面实况中。为了缓解上述问题,我们引入了动量蒸馏学习。在训练过程中,模型的动量版本会以指数方式缓慢更新。
移动动量系数$m:\theta_t m \leftarrow \theta_t + (1-m) \theta_s$
动量模型用于生成伪标签,作为额外的监督,防止学生模型过度拟合噪音。
动量蒸馏损失用动量模型生成的伪实体概率分布$\tilde{y}$ 和当前一轮多模态编码器的预测结果$\hat{y}$之间的 KL 发散来表示:
实体扩展阶段
实体被表示为包含该实体的所有句子的预测实体分布的平均值。语义类别由当前扩展集实体的加权平均值表示,权重由窗口搜索算法动态保持。这样,具有相似分布的候选实体就会被放置在当前集合中,并以 KL 分歧来衡量。当前集合中的实体数量达到目标规模时,就会执行实体重新排序算法,以完善最终的排序列表。
由于扩展过程不是本文的重点,我们使用了 ProbExpan 中的窗口搜索和实体重新排序算法,在此不再赘述。
实验
比较了三类模型
- 传统的基于文本的 ESE 方法:包括SetEx- pan、CaSE、CGExpan、ProbExpan和 GPT-3.5。SetExpan 和 CaSE 是传统的基于统计概率的方法,而 CGExpan 和ProbExpan 则是基于预训练语言模型 BERT 的最先进方法。
- 基于视觉的模型:VIT、BEIT、ICLIP的图像编码器
- 具有不同结构的多模态模型:CLIP、ALBEF
评价指标 ESE 的目标是根据实体与给定种子实体的相似度,按降序扩展排序实体列表。采用了两种广泛使用的评价指标,即MAP@𝐾 和 P@𝐾。MAP@K计算方式如下:
𝑄是每个查询q的集合,$AP_K(R_q, G_q)$是𝐾与排名列表$R_q$ 和groud truth列表$G_q$ 的平均精度。P@K是前K个实体的精度。
主要实验
- 多模态方法上优于单模态方法。值得注意的是,我们的 MultiExpan(MEP)仅通过使用屏蔽实体预测任务就取得了优异的性能。完整的 MultiExpan 方法取得了最佳的整体性能。此外,完整版的 Multi-Expan也达到了最佳性能。
- 就多模态模型的结构而言,ALBEF 和我们的 MultiExpan 通过Transformer实现了深度模态交互,与 CLIP 通过点积相似性计算实现的浅度模态交互相比,后者更适合 ESE 任务。这些结果表明,深度模态交互和融合是未来可以探索的一个方向。
- 就基于视觉的模型而言,BEIT 通过对遮蔽图像建模进行预训练,在利用更精细的图像语义如物体和背景形成)方面表现出色。VIT 模型通过对 Image Net 数据集中的图像进行分类来学习整体图像语义,相比之下,BEIT 在实体理解方面取得了更好的效果。同时,CLIP 的图像编码器由于与文本模态相联系,也捕捉到比 VIT 模型更丰富的语义。然而,仅仅依靠图像模式并不足以产生令人满意的结果,文本模式仍然占据主导地位。
- 种子数的增加并不一定会带来整体性能的提高。更多的种子可以更精确地描述语义类别,并更安全地检索到一些 “必须正确 “的实体,因此当 K 较小时(=10,20),MAP/P 会有所提高。然而,更多的种子实体意味着更大的语义类搜索空间,这就需要对共同实体属性进行比当前模型更细致的分析。这个问题代表了 ESE 模型一直面临的语义漂移挑战,因此当 K 越大时,MAP/P 就越小。当然,增加 |Seed| 也有助于消除查询中属于多个类别的实体的歧义。例如,在语义类别Light Novel(轻小说)中,一些种子实体也属于 Manga(漫画),增加 |Seed| 在所有指标上平均增益 17.5%。
- GPT-3.5 没有取得令人满意的结果,甚至不如无监督 CGExpan。通过细致GPT-3.5 在特定语义类别上的表现,我们发现该模型在处理复杂类别(如 108 位二战烈士)时表现吃力。我们明确指示 GPT-3.5 首先推理类名,然后根据类名进行扩展。这一修改被命名为 GPT+Name ,与 GPT-3.5 相比有了大幅提升。这种方法与大型语言模型的新兴思维链推理理念一致,即一步一步地思考。我们建议未来的研究探索思维链与 ESE 任务的结合。