专栏首页AI科技大本营的专栏如何在3天内拿下DigSci大赛的亚军?| DigSci科学数据挖掘大赛

如何在3天内拿下DigSci大赛的亚军?| DigSci科学数据挖掘大赛

作者 | 朱翔宇(DOTA)

【导读】本文将基于作者在中国计算机大会方案宣讲PPT中的内容,给出此次比赛的完整方案,主要从赛题理解、建模核心思路、算法核心思想等角度阐述,同时对相关细节进行了适当的拓展讲解。涉及SIF Sentence Embedding、InferSent、Bi-LSTM和BERT等算法及相关概念。

任务背景

科学研究已经成为现代社会创新的主要动力。大量科研数据的积累也让我们可以理解和预测科研发展,并能用来指导未来的研究。论文是人类最前沿知识的媒介,因此如果可以理解论文中的数据,可以极大地扩充计算机理解知识的能力和范围。

在论文中,作者经常会引用其他论文,并对被引论文做出对应描述。如果我们可以自动地理解、识别描述对应的被引论文,不仅可以加深对科研脉络的理解,还能在科研知识图谱、科研自动问答系统和自动摘要系统等领域有所进步。

任务描述

本次比赛将提供一个论文库(约含20万篇论文),同时提供对论文的描述段落,来自论文中对同类研究的介绍。参赛选手需要为描述段落匹配三篇最相关的论文。

例子:

描述段落:

An efficient implementation based on BERT [1] and graph neural network (GNN) [2] is introduced.

相关论文:

[1] BERT: Pre-training of deep bidirectional transformers for language understanding.

[2] Relational inductive biases, deep learning, and graph networks.

评测方案

准确率(Precision): 提交结果的准确性通过 Mean Average Precision @ 3 (MAP@3) 打分,具体公式如下:

其中,|U|是需要预测的press_id总个数,P(k)是在k处的精度,n是paper个数。

题意分析

从任务描述中我们可以看到,该任务需要对描述段落匹配三篇最相关的论文。单从形式上可以理解为这是一个“完形填空”任务。但相较于在本文的相应位置上填上相应的词语不同的是,这里需要填充的是一个Sentence,也就是论文的题目。但是如果你按照这个思路去寻求解决方案,你会发现在这个量级的文本数据上,一般算力是满足不了的。

既然如此,那我们不如换一个思路来思考这个问题,“对描述段落匹配三篇最相关的论文”,其实最简单的实现方式是计算描述段落和论文库里所有论文的相似度,找出最相似的即可。但这同样会存在一个问题,通过对数据进行探查你会发现“An efficient implementation based on BERT [1] and graph neural network (GNN) [2] is introduced.”这一描述段落,同时引用了两篇文章,那么在计算相似度时,到底哪个位置该是哪篇文章呢?

基于分析中提到的问题和难点,本次比赛给出了以下解决方案。

建模核心思路

在解决本问题时,我借鉴了推荐算法的思想,将问题拆解了两部分——召回和排序。在召回阶段,使用了两种方式,其一是利用Word2Vec和TFIDF方法,将描述段落利用Word2Vec得到每个词的词向量,同时对句子中的词使用TF-IDF为权重进行加权得到Sentence Embedding,同时为了得到更好的效果,这里做了一个改进,即使用Smooth Inverse Frequency代替TFIDF作为每个词的权重;其二是利用TFIDF得到Sentence Embedding。两种方法各自计算余弦相似度得到3篇论文,去重后召回集中每个段落有3-6篇不等的召回论文。

在排序阶段,我们利用Bi-LSTM对描述段落Description和论文文本PaperText组成句子对(Description,PaperText)进行编码,在中间层对两个向量进行差值和内积操作后,在输出层经过Dense和Softmax层后得到概率值后排序。

算法核心思想

1.SIF Sentence Embedding

SIF Sentence Embedding 使用预训练好的词向量,使用加权平均的方法,对句子中所有词对应的词向量进行计算,得到整个句子的embedding向量。

SIF 的计算分为两步:

1) 对句子中的每个词向量,乘以一个独特的权重b,权重b是一个常数 a除以a与该词频率的和,这种做法的会对出现频率高词进行降权,也就是说出现频次越高,其权重也就越小;

2) 计算句向量矩阵的第一主成分u,让每个Sentence Embedding减去它在u上的投影,具体参见论文[2];

这里,利用该方法做召回,在验证集上的准确性要比其他两种方式效果好。

(1)对句子中所有单词求平均得到sentence embedding;

(2)对句子中所有单词利用TF-IDF值加权后求平均得到sentence embedding。

2. InferSent

InferSent相似度模型是Facebook提出了一种通过不同的encoder得到Sentence Embedding,然后计算两个Sentence Embedding的差值、点乘得到交互向量,计算两者之间的相似度。

这里,对原始论文方法做了两处修改:

其一,针对这个问题对3-way softmax层(entailment,contradiction,neutral)做了相应的修改变为2-way softmax;

其二,中间层去掉了u和v,只使用差值和内积两种特征表征方式;

同时在7中编码器:1)LSTM, 2)GRU, 3)bi-GRU, 4)bi-LSTM(mean pooling), 5)bi-LSTM(max pooling), 6)self-attention, 7)CNN 中选用了Bi-LSTM MaxPooling的方式。

3. Others-BERT

当时,在BERT时代,解决方案的尝试中少不了它的身影,这里我们用BERT尝试了两种方案,其一是利用BERT对Description和PaperText进行编码后,计算文本的余弦相似度;其二是在上述整体模型中,用BERT替换InferSent部分。

以上两种方式是我和何从庆在CCL“中国法研杯”相似案例匹配评测竞赛中使用的方案(https://zhuanlan.zhihu.com/p/88207736),但在本任务中首次尝试后发现线下Valid是不Work的,因为本次比赛我只做了最后两天,5次线上提交后得到终榜最高分,所以未对其他更多方式做尝试性修正,如果BERT在本任务上work的话,按照经验应该可以提升不少MAP@3,有兴趣的朋友可以尝试一下。

总结

入职两年,见过了许多形形色色,感慨良多,但初心没忘,为了让自己保持一个良好的竞技状态和学习状态。每次任务又是一个不断审视、总结自己的过程。无论是结构化数据、自然语言处理领域还是图像领域,欢迎志同道合的小伙伴一起分享探讨,共同进步。

参考论文:

[1] Sanjeev Arora, Yingyu Liang, Tengyu Ma. A Simple but Tough-to-Beat Baseline for Sentence Embeddings, ICLR 2017

[2] Conneau A , Kiela D , Schwenk H , et al. Supervised Learning of Universal Sentence Representations from Natural Language Inference Data[J]. 2017.

[3] Devlin J , Chang M W , Lee K , et al. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding[J]. 2018.

(*本文为 AI科技大本营投稿文章,请联系作者)

本文分享自微信公众号 - AI科技大本营(rgznai100)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 夺得WSDM Cup 2020大赛金牌的这份参赛方案,速来get!

    近日,在美国休斯敦闭幕的第13届网络搜索与数据挖掘国际会议(WSDM 2020)上,华为云语音语义创新Lab带领的联合团队,摘得WSDM Cup 2020大赛“...

    AI科技大本营
  • ICLR 2019高分论文抢先看,谁是第一?

    ICLR 2019 将于明年的 5 月 6-9 日在美国路易斯安那州的新奥尔良市举行。本届大会共收到近 1600 篇投稿,相比 ICLR 2018 的 935 ...

    AI科技大本营
  • 从特斯拉到英伟达,那些端到端自动驾驶研发系统有何不同?

    Nvidia是比较早做端到端控制车辆工作的公司,其方法训练CNN模型完成从单个前向摄像头的图像像素到车辆控制的映射。 其系统自动学习一些处理步骤的内部表示,比如...

    AI科技大本营
  • DigSci科学数据挖掘大赛:如何在3天内拿下DigSci亚军

    本文将基于在中国计算机大会方案宣讲PPT中的内容,给出此次比赛的完整方案,主要从赛题理解、建模核心思路、算法核心思想等角度阐述,同时对相关细节进行了适当的拓展讲...

    zenRRan
  • DigSci科学数据挖掘大赛:如何在3天内拿下DigSci亚军

    本文将基于在中国计算机大会方案宣讲PPT中的内容,给出此次比赛的完整方案,主要从赛题理解、建模核心思路、算法核心思想等角度阐述,同时对相关细节进行了适当的拓展讲...

    小小詹同学
  • 势如破竹!169 篇论文带你看 BERT 在 NLP 中的 2019 年!

    2019 年,可谓是 NLP 发展历程中具有里程碑意义的一年,而其背后的最大功臣当属 BERT !

    AI科技评论
  • GitHub超9千星:一个API调用27个NLP预训练模型

    前几日,著名最先进的自然语言处理预训练模型库项目pytorch-pretrained-bert改名Pytorch-Transformers重装袭来,1.0.0版...

    新智元
  • 92年的小哥,985的特聘教授:3年博士期间发表40篇SCI

    近日,又有一位90后学者火了:92年出生,本科毕业后3年读完博士,博士期间发表40余篇SCI (一作/通讯 31 篇),毕业即获聘成为985高校特聘教授。

    新智元
  • 【钱塘号专栏】“能源互联网、工业互联网、工业4.0”之间的区别与联系

    其实工业4.0、工业互联网、能源互联网这几个概念,本质都是互联网深度参与到工业生产、能源领域中,从而将生产力提升到一个全新的高度。过去10年是消费者互联网的10...

    钱塘数据
  • Python每天五分钟-面向对象编程之对象

    用户2475223

扫码关注云+社区

领取腾讯云代金券