基于代表性答案选择与注意力机制的短答案自动评分

2019-11-18 08:49谭红叶午泽鹏段庆龙
中文信息学报 2019年11期
关键词:样例代表性参考答案

谭红叶,午泽鹏,卢 宇,段庆龙,李 茹,张 虎

(1. 山西大学 计算机与信息技术学院,山西 太原 030006;2. 北京师范大学 未来教育高精尖创新中心,北京 100875;3. 北京师范大学 教育技术学院,北京 100875)

0 引言

人工智能技术在教育领域的应用得到国家和政府的高度重视。2017年国务院推出的《新一代人工智能发展规划》明确指出: 利用智能技术加快推动人才培养模式、教学方法改革,构建包含智能学习、交互式学习的新型教育体系。2018年教育部印发《教育信息化2.0行动计划》,将“智慧教育创新发展行动” 列为推动教育信息化2.0发展的“八大行动”之一。这充分说明: 教育将全面进入智慧教育时代。智慧教育主要包括教育大数据挖掘、教育知识图谱构建、教学过程智慧化、智慧教育平台建设等技术[1]。自动评分是智慧化教学过程中评价教学质量的一个重要环节。该任务通过一定模型与算法对学生答案预测分值,不仅能减轻教师工作量,还能避免因主观性引起的评分不一致问题,是智慧教学中的一个研究热点。

自动评分主要包括作文自动评分(automatic essay grading,AEG)与短答案自动评分(automatic short answer grading,ASAG)[2]。其中,AEG侧重质量评价,一般需要从立意、结构、文采等方面对作文形成整体评分;而短答案问题主要考察学生对特定知识(如: 科学概念或原理)的理解,因此ASAG更注重评价学生答案的正确程度。本文主要研究ASAG技术。

ASAG一般通过一定模型对学生答案与参考答案进行对比,根据匹配程度预测其分值。随着机器学习技术的发展,该任务已取得一定进展,但准确率仍需进一步提高。目前导致ASAG不准确的原因主要有两方面: ①学生答案多种多样,预先给定的参考答案难以覆盖所有可能答题情况。此外,还存在许多开放程度高、不具有单一明确参考答案的问题。例如,对于表1示例1的问题,学生可以从故事情节、人物性格、写作特点、语言风格等角度来回答。然而现实中对这类问题要么不提供参考答案,要么提供非常有限的参考答案,因此引起学生答题情况覆盖度不高、自动评分不准确问题; ②模型不能准确刻画学生答案与参考答案匹配情况。如表1示例2中,模型需要对二者进行语义匹配,才能得到学生答案中“身高差不多的人数最多”与参考答案中“人数最为集中,且大家的身高相对接近”语义一致的判断。

表1 短答案题目示例

本文采用基于聚类与最大相似度方法选择代表性学生答案重新构建更完备的参考答案,尽可能覆盖学生不同答题情况。在此基础上,本文提出基于注意力机制(attention)的深度神经网络自动评分模型,提升系统对学生答案与参考答案匹配的准确刻画。相关数据集实验结果表明: 本文模型有效提升了自动评分准确率。

1 相关研究

1.1 短答案自动评分研究现状

Page[3]于1966年开始针对自然语言形式的答案进行自动评分研究。自此,研究者围绕作文或短答案自动评分进行研究并取得了一定进展。其中,ASAG的方法主要有三类: ①基于规则方法[4-6]。例如,Bachman等[4]根据参考答案生成正则表达式规则,每条规则与一个分数相关联,当学生答案与规则相匹配就获得对应分数。由于规则获取精度与表达能力有限,因此该方法泛化能力较差。②基于传统机器学习方法,利用一定特征基于分类或回归模型预测分数[7-9]。例如,Sultan等[7]使用基于对齐或嵌入式的文本相似度、词项权重等特征构建了随机森林分类器,在SemEval-2013评测数据集SCIENTSBANK上获得55%的F测度值。③基于深度学习方法,无需人工设计特征,通过对数据进行表示学习,实现端到端的训练与输出[10-11]。例如,Riordan等[11]使用CNN与LSTM构成的神经网络进行自动评分,获得的效果比非神经网络方法好。

参考答案是自动评分的重要依据,对ASAG系统性能有重要影响,但目前对参考答案构建的深入研究还较少。Marvaniya等[12]通过对人工评分的学生答案进行聚类、选择与排序,获得各个分数对应的代表性答案来构成参考答案。实验表明,重新构造的参考答案显著提高了短答案评分的性能。还有研究关注如何处理学生答案以加速或简化评分过程。例如,Lan等[13]对学生答案聚类后,在每个簇中选择代表性样例让专家评分,然后再为同簇其他样例自动评分。

本文构建参考答案后进行自动评分的思想很大程度受到了文献[12]与文献[13]的启发。但本文与这些文献的主要不同是: ①选择代表性答案的方法不同。文献[12]认为参考答案应该具有长度较短、句法结构良好的特点,并按照该特点选择代表性答案。由于判断学生答案是否正确的依据不是长度或句法结构,而是看其是否包含标准答案所需的关键概念,因此本文没有对候选样例进行显式建模,而是采用基于最大相似度方法选择代表性答案; ②目的不同。文献[13]选择代表性答案目的是减少专家评分工作量,而本文目的是构造更完备参考答案以覆盖更多的学生答题情况; ③自动评分模型不同。文献[12]基于参考答案与学生答案的比较特征训练多元逻辑回归分类器进行自动评分。文献[13]依据每个簇中的人工评分样例,采取同簇同分数的策略对未评分样例进行评分(或利用样例属于该簇概率调整分数)。本文是通过神经网络模型引入注意力机制来捕获参考答案与学生答案的匹配信息进行打分。

1.2 注意力机制研究现状

Bahdanau等人最早将注意力机制(attention mechanism,AM)引入基于编码器-解码器框架的神经机器翻译系统[14],解决输入与输出不能对齐的问题。从此研究者针对各种NLP任务提出不同的AM方式,并取得很好的效果。因此,AM目前已成为神经网络架构中一个重要概念。

AM可以从以下几个视角进行分类[15]: ①按照AM是否捕获多个输入之间的关系,分为互注意力与自注意力(self-attention)机制。前者用来捕捉多个输入之间关系;后者用来学习同一输入序列中词语之间关系; ②按照AM包含的层次,分为单层注意力(single-level attention)与多层注意力(multi-level attention)机制。其中多层AM用来获取输入的层次结构信息。如: 文本存在词语、句子、篇章层次结构; ③按照AM计算上下文向量所需信息量,分为全局注意力(global-attention)与局部注意力(local-attention)机制。全局AM是使用输入序列所有隐藏状态的加权平均值来构建上下文向量;局部AM是在输入序列的关注点周围选择一个窗口来创建上下文向量。

本文针对ASAG任务需要比较学生答案与参考答案的特点,使用互注意力机制来捕获两者之间的关系。

2 基于代表性答案构建参考答案

由于学生答案具有多样性,预先给定的参考答案难以覆盖学生所有可能答题情况。针对该问题,本文尝试构建更完备的参考答案,增强对答题情况的覆盖能力。

如图1所示,本文构建参考答案包括两个步骤: (1)基于聚类获取学生可能的答题情况。我们认为: 聚类后得到的每一个簇代表学生的一种答题情况。(2)在每个簇中选择一个或多个代表性答案作为本簇代表构建参考答案。

图1 参考答案构建示意图

2.1 学生答案聚类

本文采用k-means聚类方法对学生答案聚类。其核心思想是: 对数据集D={x1,x2,…,xm},考虑所有可能的k个簇集合,目标是找到一个簇集合{C1,C2,…,Ck},使得每一个样本到其对应簇的中心的距离的平方和E最小,具体如式(1)所示。

(1)

聚类质量的评价指标有外部指标和内部指标。外部指标是计算聚类结果与已有标准分类结果的吻合程度。内部指标是利用数据集的固有特征来评价一个聚类质量。本文没有对满分答案进行预先分类,因此采用内部指标评价聚类效果。轮廓系数(silhouette coefficient)是一种常用的内部评价指标,一般按照式(2)计算。

(2)

其中,si表示簇中第i个样本的轮廓系数,ai表示簇中第i个样例到其他样例的平均距离,bi表示簇中第i个样例到其他样例的最小距离。轮廓系数取值范围为[-1,1]。当簇内样本距离越近及簇间样本距离越远,其值越大,聚类效果越好。

2.2 代表性答案的选择

代表性答案指能够代表学生答题情况的答案。本文选择簇内与其他样例相似度最高的样例作为代表性答案。该策略基于的假设是: 与其他样例越相似的样例越能代表簇成员。关键问题是如何计算相似性。

由于簇内样本相似度已经较大,继续使用聚类过程中的相似度(距离)计算公式,将不能很好区分簇内样本之间的差异。本文从词语及句子长度特征出发,使用词重叠度、句子长度相似度来计算簇内样本x1与x2的相似度,按照式(3)进行计算:

(3)

其中,α1、α2为权重参数,二者之和为1,本文具体取值0.5;Loverlap表示学生答案x1与x2之间的重叠词个数;L1和L2分别表示x1和x2的词数。

对簇内任意两个答案计算相似度后得到相似度矩阵M∈Rn×n,其中mij表示第i个答案xi与第j个答案xj的相似度。本文用vi表示答案xi对簇代表的程度,vi∈[0,1],vi越大表示答案xi的代表性越强。按照式(4)计算vi:

(4)

3 模型

自动评分任务可形式化为: 给定参考答案r,学生答案s,按照式(5)预测评分结果g。

g=argmaxP(g|r,s)

(5)

本文采用基于注意力机制的神经网络模型(Att-Grader)进行自动评分。模型结构如图2所示,由编码层、注意力层、输出层三部分构成。编码层的输入为学生答案与第i个参考答案ri(下文简写为r),该层对两者进行编码,生成包含语义信息的向量集合;注意力层负责获取参考答案与学生答案之间的匹配信息;输出层利用CNN进一步获取局部特征并经过计算后,输出学生答案预测分值。

3.1 编码层

3.2 注意力层

图2 Att-Grader模型

计算注意力权重时需要共享由学生答案(Us)与参考答案(Ur)导出的相似度矩阵C∈RM×N,其中Cij表示参考答案中第i个词与学生答案中第j个词之间的相似度值,具体计算如式(8)所示。

(8)

在相似矩阵C的基础上计算双向注意力权重。

(1) 学生答案到参考答案的注意力权重(student-to-reference attention,S2R)。首先计算学生答案中的词与参考答案中第i个词的注意力权值为ai∈RM,计算公式如式(9)所示。

ai=softmax(Ci:)∈RM

(9)

然后计算学生答案中每个注意力向量,如式(10)所示。

(10)

其中,包含所有学生答案注意力向量的矩阵。

3.3 输出层

(11)

其中,K表示分值种类,P(y=k)表示学生答案在对应分值上的概率,其中k=0,1,…,K-1。

本文使用Adam优化算法[17]来最小化训练数据上的交叉熵损失函数[18]。损失函数如式(12)所示。

(12)

4 实证研究

4.1 实验数据

本文数据集来自某中学八年级期末考试试题及学生答卷,涉及数学、语文两门课程。数据集中有2道数学题、3道语文题,分别对应表2中的MATH1、MATH2与CRCC1到 CRCC3。其中,数学题是针对特定知识点的问答题,语文题为阅读理解问答题,两者相比,语文题对应的学生答案多样性程度更高。数据集具体信息如表2所示,学生答案均经过两位教师人工打分,QWKappa(QWK)值反映了两个评分者评分一致性。

实验中利用80%数据作为训练集,20%作为测试集。

表2 数据集信息表

4.2 实验设置

预处理。利用jieba分词工具包进行分词并去除停用词。针对低频词(词频<2)使用字符代替。

聚类算法选择。本文比较了Birch(balanced iterative reducing and clustering using hierarchies)聚类方法和k-means聚类方法。两者都通过机器学习工具包sklearn实现。Birch算法是一个综合的层次聚类算法,采用聚类特征和聚类特征树进行聚类描述。我们在聚类簇数K分别为[3,6,9,12,15,18,21,24,27]的情况下比较了这两种方法在语文数据集上的聚类效果,采用轮廓系数的平均值为评价指标。具体如图3所示。

由图3可知,k-means聚类算法在语文数据集上(CRCC1-CRCC3)的轮廓系数均值远远高于Birch算法,因此本文选择k-means作为聚类算法对学生答案进行聚类。

图3 聚类方法的比较

聚类簇数的选择。由图4可知,k-means算法在数据集CRCC 1、CRCC2、CRCC3上的聚类簇数K分别为6、12、3时,轮廓系数值较高,表明聚类效果较好。

图4 不同聚类簇数下的聚类效果

相关参数。实验中采用的长短时记忆模型LSTM、卷积神经网络CNN均利用Tensorflow深度学习框架实现,Mini-batch值为32,学习率为0.001。每次迭代过程中损失函数为交叉熵损失函数,优化器选择Adam-optimizer。词向量利用Gensim工具包中Word2Vec工具构建,词向量维度设置为400。

4.3 实验结果分析

4.3.1 自动评分结果分析

本文选择以下模型作为baseline:

KAGrader该模型由Yang等提出[19],使用了连续词袋模型(CBOW)与长短期记忆模型(LSTM),在汉语短答案自动评分任务上取得了很好的效果。该模型采用的数据集与本文有重叠。

CNNCNN[16]是目前应用范围最广的神经网络模型之一,许多学者利用其解决多种NLP任务并获得很好效果[20-22]。

LSTM+CNNLSTM属于递归神经网络(RNN),也是一种主要的深度神经网络结构[23-24]。对于CNN与LSTM已有研究表明[25]: CNN擅长提取位置不变特征, LSTM擅长对序列中的单元建模,两种模型可以为NLP任务提供相互补充的信息。因此本文将LSTM与CNN结合作为基线系统,该模型恰好是本文Att-grader模型没有使用attention的版本。实验中将学生答案向量作为输入,经过LSTM处理后,再经过CNN处理,完成自动评分任务。

本文使用准确率(Acc)、QWKappa(QWK)作为评价指标,采用5重交叉验证的均值作为最终结果。具体自动评分结果如表3所示。

表3 自动评分实验结果表

从表3中可以看出,Att-Grader模型在数学数据集上表现明显优于其他三个baseline,这表明: 系统加入注意力机制与新构建的参考答案后,不仅更好地捕获了学生答案与参考答案的匹配情况,而且通过参考答案覆盖了更多学生答题情况。同时也可看出LSTM+CNN表现优于CNN,可能的原因为: LSTM与CNN结构特点不同,为NLP任务提供互补的信息。这与研究者已经得到的结论一致[20]。

从表3中还可以看出,在语文数据集上,Att-Grader模型的表现大部分时候优于CNN与LSTM+CNN,只是在问题3上的QWKappa指标不如KAGrader。可能的原因是: 问题3开放程度更高,利用满分答案拓展的参考答案不能覆盖学生的各种答题情况。因此需要进一步针对开放程度高的问题研究如何选择代表性答案来形成参考答案。

4.3.2 不同注意力机制对自动评分的影响

本文在语文数据集上探讨了不同注意力机制对系统性能的影响,具体结果如表4所示。其中,NoAttention表示Att-Grader模型没有使用attention层;SelfAttention表示模型仅使用自注意力机制;CoAttention表示模型仅使用双向互注意力机制;SelfCoAttention表示模型中既有自注意力机制又有双向互注意力机制,即学生答案与参考答案分别先通过自注意力机制获取内部关键特征后,再通过互注意力获得两者的匹配信息。

表4 不同注意力机制下的自动评分结果

由表4可以看出: 模型加入注意力机制后效果更好,表明注意力机制能有效提升自动评分的性能。还可看出: CoAttention比SelfAttention以及SelfCoAttention效果都要好,可能的原因是目前数据规模较小,答案长度较短且答题方式多样,模型不能很好地学习出自身的重要概念。因此,在Att-Grader模型中,本文选择效果更好的双向互注意力机制。

4.3.3 代表性答案选择对自动评分的影响

本文以数据集CRCC 1作为测试样例集,与随机选择满分答案构建的参考答案集进行对比,具体实验结果如表5所示。

表5 不同参考答案下的自动评分结果

其中Att-Grader-1表示评分中仅使用预先提供的参考答案;Att-Grader-6(Random)表示使用随机选择方式构建参考答案集来进行评分;Att-Grader-6表示通过聚类及代表性答案选择的方式构建的参考答案集来进行评分。

可以看出: Att-Grader-6的评分效果在两个评价指标上均高于其他两个。表明通过选择代表性答案扩展参考答案对自动评分任务非常有效。

4 结论与展望

本文采用基于聚类与最大相似度方法选择代表性答案构建更完备的参考答案,更多地覆盖了学生答题情况。此外还提出基于互注意力机制的神经网络模型,刻画参考答案与学生答案的匹配情况。实验结果表明: 本文所提方法有效提升了自动评分效果。但是短答案自动评分的准确率,尤其是开放程度高的短答案问题的评分还有很大提升空间。未来我们将研究不同分值下代表性答案的选择,旨在进一步扩充参考答案;同时还将从错误发现等角度探索可解释分值的实现策略。

猜你喜欢
样例代表性参考答案
国家级非遗项目代表性传承人简介
非物质文化遗产代表性传承人
——呼光华
漳州市非物质文化遗产代表性项目代表性传承人名录
闽台地区代表性道地药材
“样例教学”在小学高年级数学中的应用
数学样例迁移的因素分析及策略探讨
2017年6月七、八年级参考答案
2017年6月九年级参考答案
参考答案
参考答案