4900篇NIPS 2018提交论文难评审?北京大学提出基于CNN的学术论文自动评分模型

选自arXiv

作者:Pengcheng Yang等

机器之心编译

参与:刘晓坤、王淑婷

近两日,NIPS 2018 8000 多篇投稿(后经 Hugo Larochelle 澄清,为 4900 篇)、使用本科毕业生做同行评审的信息刷爆朋友圈。在人工智能火热的今天,顶级大会收到的论文是越来越多,对同行评审的人数、要求也越来越高。恰好,机器之心发现一篇北京大学被 ACL 2018 接收的论文,提出使用模块化分层卷积神经网络来对学术论文的 LATEX 源文件进行自动评分。由于之前并没有相关研究,为此作者构建了包含 19218 篇人工智能领域学术论文的新数据集。

每年都会有数千篇学术论文被提交给会议和期刊。对所有论文进行专家评分是相当费时费力的,有时候评审员的个人因素也会对评分的分值产生影响,导致不公平问题。因此,自动化的学术论文评分是一项迫切需求。在本文中,研究者提出了如何基于论文的 LATEX 源文件和元信息自动地对学术论文进行评分,并称该任务为自动化学术论文评分(AAPR)。

和 AAPR 相似的任务是自动化的短文评分(AES)。AES 已经被研究了很长时间。Project Essay Grade(Page, 1967, 1968)是最早的尝试解决 AES 的研究,它通过在专家制作的文本特征上使用线性回归来预测分数。大多数随后的研究使用了类似的方法,在包含语法、词汇和风格(Rudner and Liang, 2002; Attali and Burstein, 2004)的更加复杂的特征上使用多种分类器。这些传统方法几乎可以达到人类评分员的程度。然而,它们都需要大量的特征工程,即需要大量的专业知识。

近期研究转向使用深度神经网络,并称深度学习模型可以使系统从繁重的特征工程中解放出来。Alikaniotis 等人在 2016 年提出了使用 LSTM 结合线性回归输出层来预测分数。他们添加了一个分数预测损失到原始的 C&W 嵌入上(Collobert and Weston, 2008; Collobert et al., 2011),因此词嵌入和短文的质量相关。Taghipour 和 Ng 在 2016 年也应用 RNN 来处理短文,但他们使用了卷积神经网络(CNN)来提取局部特征。Dong 和 Zhang 在 2016 年提出应用一个两层 CNN 来对短文建模。第一层用于编码语句,第二层用于编码整个短文。Dong 等人在 2017 年进一步提出了添加注意力机制到池化层上来自动化地决定哪些部分对于确定短文质量更加重要。

虽然有很多处理 AES 任务的研究,目前仍未有聚焦于 AAPR 任务的工作。和 AES 任务中对短文的语言能力测试不同,学术论文包含更长的文本和更多的信息,除了书写以外,其整体质量还被很多因素所影响。因此,研究者提出了考虑一篇学术论文的整体信息的模型,包括标题、作者、摘要和论文的 LATEX 源文件主要内容。

本研究的主要贡献:

  • 提出了自动化学术论文评分的任务,并为该任务构建了新的数据集;
  • 提出了模块化的分层卷积神经网络,其考虑了源论文的整体信息。实验结果表明该方法远远超越了基线。

2 本文提出的方法

一份源论文通常由几个模块组成,如摘要、标题等。每个模块还具有从单词级到句子级的分层结构。结构信息可能有助于作出更准确的预测。此外,还可以通过考虑源论文各部分贡献的差异来改进模型。在此基础上,研究者提出了一种模块化的分层 CNN,模型概要如图 1 所示。作者假设源论文具有 l 个模块,包含 m 个词且过滤器大小为 h(详细说明可参见第 2.1 节和第 2.2 节)。为简单起见,在图 1 中将 l、m 和 h 分别设置为 3、3、2。

图 1:模型概述。ACNN 表示基于注意的 CNN,其基本结构如(b)所示。AP 表示注意池化。

2.1 模块化的分层 CNN

在给定一篇完整源论文 r 的基础上,首先根据论文的总体结构(摘要、标题、作者、引言、相关研究、方法和结论)将其划分为几个模块(r_1、r_2……r_l)。对于每个模块,第 i 个单词 w_i 的 one-hot 表征通过嵌入矩阵嵌入到密集向量 x_i 中。对于以下模块(摘要、引言、相关研究、方法、结论),研究者使用基于注意的 CNN(如 2.2 节所示)在单词级上得到第 i 句的表征 s_i。另一个基于注意的 CNN 层用于将句子级表征编码到第 i 个模块的表征 m_i 中。

源论文标题中只有一个句子,因此在单词级上仅使用基于注意的 CNN 来获得标题的模块化表征是合理的。此外,由于作者之间是相互独立的,因此可以采用加权平均法通过方程(1)来获得作者的模块化表征。

在γ=(γ_1,……,γ_A)的转置是权重参数。a_i 是第 i 个作者在源论文中的嵌入向量,它是随机初始化的,可以在训练阶段学习。A 是作者序列的最大长度。

所有模块的表征 m_1、m_2……m_l 被汇集到一起,以利用注意池化层获得源论文的论文级表征 d。使用 softmax 层将 d 作为输入,并预测论文被接收的概率。在训练阶段,把被广泛应用于各种分类任务中的交叉熵损失函数作为目标函数进行优化。

2.2 基于注意的 CNN 的细节

基于注意的 CNN 由卷积层和注意池化层组成。卷积层用于捕获局部特征,注意池化层可以自动确定单词、句子和模块的相对权重(理论细节请参见源论文)。

3 实验

arXiv 学术论文数据集:由于没有可直接使用的现有数据集,研究者通过从 website 2 收集关于人工智能领域的学术论文来创建数据集。该数据集包括 19218 篇学术论文。每篇源论文的信息包含标记该论文是否被接收的的会议和期刊,以及源 LATEX 文件。作者将数据集划分为训练、验证和测试三个部分。详情见表 1。

表 1:arXiv 论文数据集的统计信息。Positive 和 Negative 表示源论文是否被接收。

表 2 报告了多个模型的实验结果。如表 2 所示,本文提出的模型 MHCNN 超越了上述所有的基线模型。

表 2:本文提出模型(MHCNN)和基线模型在测试集上的性能对比。

如表 3 所示,当注意力机制被移除的时候,模型的准确率下降了 0.9%。这表明不同文本内容有不同的贡献。

表 3:控制变量研究。符号*表示在 t 测试下,和 MHCNN 相比有显著性差异(p≤0.05)。

如表 4 所示,模型的性能在移除不同的源论文模块时会有不同程度的下降。这表明源论文的不同模块对论文接收的贡献是不同的,也进一步证实了使用模块化分层结构和注意力机制的合理性。

表 4:控制变量研究。符号*表示在 t 测试下,和完整数据相比有显著性差异(p≤0.05)。

论文:Automatic Academic Paper Rating Based on Modularized Hierarchical Convolutional Neural Network

  • 论文地址:https://arxiv.org/abs/1805.03977
  • 项目地址:https://github.com/lancopku/AAPR

随着越来越多的学术论文被提交到会议和期刊上,让专家来评估所有的论文变得很耗时间,并可能由于评审者的个人因素导致不公平现象。为了协助专家评估学术论文,我们在本文中提出了一种新的任务类型:自动化学术论文评分(AAPR),即自动地确定接收还是拒绝学术论文。我们为该任务构建了一个新的数据集,并提出了新的模块化分层卷积神经网络来获得自动化的学术论文评分。评估结果表明,该模型的性能远远超越了基线模型。

原文发布于微信公众号 - 机器之心(almosthuman2014)

原文发表时间:2018-05-20

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ml

朴素贝叶斯分类器(离散型)算法实现(一)

1. 贝叶斯定理:        (1)   P(A^B) = P(A|B)P(B) = P(B|A)P(A)   由(1)得    P(A|B) = P(B|...

3657
来自专栏desperate633

LeetCode Invert Binary Tree题目分析

Invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9 to4 / \ 7 2 / \ / \9 6 3 1 Tri...

991
来自专栏Hongten

ArrayList VS Vector(ArrayList和Vector的区别)_面试的时候经常出现

2392
来自专栏拭心的安卓进阶之路

Java 集合深入理解(12):古老的 Vector

今天刮台风,躲屋里看看 Vector ! 都说 Vector 是线程安全的 ArrayList,今天来根据源码看看是不是这么相...

2547
来自专栏Phoenix的Android之旅

Java 集合 Vector

List有三种实现,ArrayList, LinkedList, Vector, 它们的区别在于, ArrayList是非线程安全的, Vector则是线程安全...

692
来自专栏开发与安全

算法:AOV网(Activity on Vextex Network)与拓扑排序

在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网,我们称之为AOV网(Activity on Vextex ...

4057
来自专栏赵俊的Java专栏

从源码上分析 ArrayList

1211
来自专栏刘君君

JDK8的HashMap源码学习笔记

3308
来自专栏项勇

笔记68 | 切换fragmengt的replace和add方法笔记

1544
来自专栏java闲聊

JDK1.8 ArrayList 源码解析

当运行 ArrayList<Integer> list = new ArrayList<>() ; ,因为它没有指定初始容量,所以它调用的是它的无参构造

1242

扫码关注云+社区