深兰科技

赛道 | 与腾讯、哈工大同台竞技,深兰获自然语言处理领域国际顶会NAACL2021冠军

2021-06-08

2021年6月6日-11日,自然语言处理(NLP)领域的顶级会议NAACL在线上举办。深兰科技DeepBlueAI团队参加了Multi-Hop Inference Explanation Regeneration (TextGraphs-15) 共享任务比赛,并获得了第一,该方案多用于科学知识问答等领域。同赛道竞技的还有腾讯、哈尔滨工业大学组成的团队以及新加坡科技设计大学团队等。

undefined

图1 成绩排名


NAACL全称为 Annual Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies,与ACL、EMNLP并称NLP领域的三大顶会。

冠军方案分享

任务介绍

多条推理(Multi-Hop Inference)任务是结合多条信息去解决推理任务,如可以从书中或者网络上选择有用的句子,或者集合一些知识库的知识去回答他人提出的问题。如下图所示,如需回答当前问题,要结合图中所示三种信息才能完成推理,得到正确的答案。而解释再生(Explanation Regeneration)任务是多条推理任务的基础,其目的是构建科学问题的解释,每个解释都表示为一个“解释图”,一组原子事实(每个解释包含1-16个,从9000个事实的知识库中提取),它们一起构成了对回答和解释问题进行推理解析的详细解释。

undefined

图2 任务示例

对于当前任务,举办方将其定义为一个排序任务,输入的是问题及其对应的正确答案,要求系统能够对提供的半结构化知识库中的原子事实解释进行排序,以便排名靠前的原子事实解释能够为答案提供更加详细和确切的说明。


数 据

此共享任务中使用的数据包含从 AI2 推理挑战 (ARC) 数据集中提取的大约 5,100 道科学考试题,以及从 WorldTree V2.1[2] 解释中提取的正确答案的事实解释语料库,并在此基础上增加了专家生成的相关性评级。支持这些问题及其解释的知识库包含大约 9,000 个事实,知识库既可以作为纯文本句子(非结构化)也可以作为半结构化表格使用。

方 案

该任务为一个排序任务,具体表现为给定问题和答案,将知识库中的9,000个原子事实解释进行排序,评价方式为NDCG。方案主要由召回和排序两部分组成,第一步先召回Top-K(k> 100)个解释,第二步对召回的Top-K个解释进行排序。针对召回和排序任务,如果直接采用 Interaction-Based(交互型,即问题文本和事实解释在模型中存在信息交互) 类型的网络,计算量将巨大,因此交互型网络在当前的任务中无法使用,团队最终采用了向量化检索的方式进行排序。

为了提取更深的语义信息生成比较好的特征向量,团队没有采用TF-IDF、BM25、DSSM[3]等常用的排序模型,而是采用了当前比较流行的预训练模型作为特征提取器,结合Triplet loss[4]训练了一个Triplet Network来完成向量化排序,其中在召回部分和排序部分均采用Triplet Network。

undefined

图3 Triplet loss

undefined


模 型

针对当前任务,如下图所示,锚点(Anchor)样本为问题和答案连接的文本,正样本(Positive)为问题对应的解释文本,负样本(Negative)为其他随机选择与正样本不同的解释文本,其中他们三个输入共享一套预训练语言模型(Pre-trained language model :PLM)参数。训练时将上述三个文本输入到PLM模型中,选取PLM模型的所有Token 向量平均作为输出,将三个输入向量经过Triplet Loss 得到损失值完成模型的训练。

 
undefined

图4 模型图


负 采 样

为了更好地训练模型,团队在召回阶段采用了三种不同的负采样方式:

全局随机负采样,即在9,000个解释文本中随机选取一个不是正样本的样本作为负样本;

Batch内负采样,即在当前Batch内选取其他问题的对应的解释正样本,作为当前问题的负样本;

相近样本负采样,在同一个表中随机选取一个样本作为负样本,因为同一个表中的样本比较相近。


在排序阶段同样采取了三种不同的负采样方式:


Top-K 随机负采样,即在在召回的Top-K个样本中随机选取一个负样本;

Batch内负采样,和召回阶段相同;

Top-N 随机负采样,为了强化前面一些样本的排序效果,增大了前面N个样本的采样概率(N远远小于K)。


实 验

团队采用了两种预训练模型RoBERTa[5] 和ERNIE 2.0[6],并将两个模型的预测结果进行了融合。在召回和排序阶段,采用了同样的参数,主要参数如采用三种负采样方式,每种负采样方式选取16个样本,最终的batch size为48,epoch为15。同时,使用了Adam优化器并采用了学习率衰减策略,从1e-5衰减到0。

团队分别评测了NDCG @100、NDCG @500、NDCG @1000、NDCG @2000的结果,最终效果如下表所示,其中Baseline为TFIDF模型、Recall为召回阶段、Re-ranker为针对召回的结果重新排序的结果。从表中可以看出基于预训练模型的方法对比Baseline有着很大的提升,同时重排也有着显著的提升,同时从排行榜中可以看出DeepBlueAI团队的模型对比他人也有着较大的领先。

undefined

Table 1 The final results compared with different models



参考文献

[1] Clark P, Cowhey I, Etzioni O, et al. Think you have solved question answering? try arc, the ai2 reasoning challenge[J]. arXiv preprint arXiv:1803.05457, 2018.

[2] Xie Z, Thiem S, Martin J, et al. Worldtree v2: A corpus of science-domain structured explanations and inference patterns supporting multi-hop inference[C]//Proceedings of The 12th Language Resources and Evaluation Conference. 2020: 5456-5473.

[3] Huang, Po-Sen, et al. "Learning deep structured semantic models for web search using clickthrough data." *Proceedings of the 22nd ACM international conference on Information & Knowledge Management*. 2013.

[4] Schroff, Florian, Dmitry Kalenichenko, and James Philbin. "Facenet: A unified embedding for face recognition and clustering." *Proceedings of the IEEE conference on computer vision and pattern recognition*. 2015.

[5] Liu Y, Ott M, Goyal N, et al. Roberta: A robustly optimized bert pretraining approach[J]. arXiv preprint arXiv:1907.11692, 2019.

[6] Sun Y, Wang S, Li Y, et al. Ernie 2.0: A continual pre-training framework for language understanding[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(05): 8968-8975.

Document