刘 磊
(燕山大学外国语学院 河北 秦皇岛 066004)
作文是评测英语学习者语言能力的重要指标。目前,在英语教学和测试领域,学习者作文通常依靠人工审阅,耗费大量人力和物力,同时很难保证评测结果的可信度和有效性[1]。为了改善这一状况,近年来国内外学者开始借助机器学习和自然语言处理技术,利用计算机自动评测学习者的作文质量[2]。作文自动评分(Automated Essay Scoring,AES)系统可用于TOEFL和GRE等大规模、高影响力的语言水平测试,作为辅助手段验证人工评分的信度,如果二者相差较大,则需重新评估作文质量[3]。此外,AES系统也适用于非考试环境下的网络自主学习平台,在学生提交作文后提供实时反馈,通过动态评估督促其修改作文,提高二语写作水平[4]。本文结合计算机科学和语言学领域的研究方法,采用基于机器学习的统计算法,提取学习者文本的词汇、语法和语篇特征,从文本复杂度、语法正确度和语篇连贯度等层面构建评分模型,提高现有AES系统的性能。
AES研究始于20世纪60年代,在当时的技术条件下,计算机并不对输入文本进行语言学分析,只采用简单的表层特征,如平均词长、句长和标点符号数量等评测作文质量[5]。但是,由于当时计算机普及程度较低,运算能力有限,导致AES研究一度陷入沉寂。直至20世纪90年代,随着计算机软硬件性能的提高和自然语言处理技术的进步,AES研究重新焕发生机,出现了一批面向商业应用的英语作文自动评阅系统[6],如Measurement Inc.公司的Project Essay Grader、美国教育考试处的E-rater和Pearson Knowledge Technologies公司的Intelligent Essay Assessor。然而,由于版权原因,上述商用AES系统均未公开训练和测试数据,文献中也未涉及详细的算法介绍。因此,虽然这些系统声称机器评分信度已达到甚至超过人工评分,但研究者无法在相同数据的基础上对比不同评分方法的优劣,继续提高AES系统的性能。为了改善这一状况,近十年来,从事AES研究的学者陆续建立了一批可供研究者免费使用的英语学习者语料,如剑桥FCE和TOEFLL11考试作文语料库,使得基于公开数据集的系统评测成为可能[7]。现有的基于FCE数据集的AES系统如表1所示。
表1 现有基于FCE数据集的AES系统
可以看出,Yannakoudakis等[8]使用FCE语料库,从中提取N元序列、句法复杂度和语法错误数量等文本特征,使用支持向量回归(Support Vector Regression,SVR)算法训练AES模型,系统机评与人评分数的Pearson相关系数r和Spearman相关系数ρ分别达到0.741和0.773。Yannakoudakis等[9]和Zhang等[10]在上述研究基础上增加了语篇连贯特征,改进后的评分模型将Pearson和Spearman相关系数提升为0.761和0.790,均方根误差为3.988。Farag等[11]采用基于词向量和卷积神经网络(Convolutional Neural Network,CNN)的深度学习算法构建评分模型,但其准确率低于基于语言学特征的SVR模型。因此,本文着重探讨如何细化语言学特征的选取及优化SVR模型,从以下三方面提高现有AES系统的性能。
(1) 降低词袋特征维度。现有AES系统通常采用由单词和词性N元序列构成的词袋(Bag of Words,BOW)特征训练评分模型。假设训练集的词汇数量为V,则可能的N元序列多达VN,造成维度灾难,影响系统性能。现有研究多采用频率阈值降低特征维度。本文利用互信息值(Mutual Information,MI)筛选词袋特征,选取与作文分数高度相关的特征子集。
(2) 细化语言学特征。文本复杂度、语法错误数量和语篇连贯度等深层语言学特征与英语学习者书面语质量关系密切[12]。现有研究只使用了平均词长和句长等表层特征测量文本复杂度,未涉及词汇丰富度和词汇难度等指标。Yannakoudakis等[8]采用RASP句法分析器自动剖析学习者作文的句法结构,通过计算主语-谓语、谓语-宾语等语法关系间的平均距离评测句法复杂度。但这种方法未考虑句子的层级结构,如简单句、复杂句、从句和复杂名词短语比例等指标,无法全面反映学习者书面语的句法复杂性。此外,现有研究的语法错误检测模块多采用统计方法,借助外部语料库计算作文中的二元或三元词组概率,如果概率低于设定阈值则判定为语法错误。但这种方法只能分析相邻序列的概率,无法检测涉及长距离语法关系的语误(如主谓不一致错误)。语篇连贯包括局部连贯和整体连贯两个层次,分别考察语篇句子间和段落间的语义关联[13]。现有研究通过计算作文中相邻句子的语义相似度评测作文连贯性,忽略了文本的整体连贯度。为解决上述问题,本文从文本表层特征、词汇多样性、文本可读性和句法复杂度四个方面评估文本复杂度;采用基于语法规则的链语法分析器检测语法错误;从局部和整体两个维度考察语篇连贯性。
(3) 融合稀疏和非稀疏特征。使用词袋特征构建AES模型时,需要将文本表征为一个包含N元序列频数的向量。N元序列数量庞大,每个文本只包含少数序列。因此,词袋特征向量的多数元素为0,属于稀疏特征。而由文本复杂度、语法错误数量和语篇连贯度构成的语言学特征为连续性数值变量,属于非稀疏/稠密特征。现有研究构建评分模型时,将词袋向量vbow和语言学向量vling合并为向量v=(vbow_1,vbow_2,…,vbow_m,vling_1,vling_2,…,vling_n),其中,m和n为词袋和语言学特征的数量。由于m≫n,经过数据标准化处理的语言学特征权重降低,无法体现其重要性。因此,本文使用Stacking集成学习算法[14]将词袋特征转换为非稀疏的实数值后构建AES模型。
为便于与先前研究展开对比,本文选用FCE语料库训练和评测作文评分系统。总体框架如图1所示,其包括数据预处理、特征筛选、模型构建和模型评测四个部分。
图1 AES评分系统总体框架
1) 特征提取。首先从训练集提取所有N元序列集合V,然后将训练和测试集中的每篇作文转换为|V|维向量,|V|代表序列种类。假设V={v1,v2,…,v|V|},则文本d可表征为向量d=(c(v1,d),c(v2,d),…,c(v|V|,d))。其中c(v,d)是序列v在文本d中的出现频率。词袋特征由长度为1~3的单词和词性序列构成。例如,作文“What clothes should I taken? How much money should I taken? And how could we meet at the airport? I am looking forward your reply.”中包含的单词和词性序列如表2所示。其中,词性赋码PRP表示代词,VB为动词原形,MD为情态动词[15]。
表2 词袋特征提取
N元序列体现了词汇间的固定搭配关系;不同水平作文中的序列种类和数量存在差异,能够反映学习者英语的准确度和流畅度。如上例中的三元词性序列“MD PRP VBN”可检测作文中两例情态动词+动词的误用现象“should I taken”。
2) 特征筛选。如式(1)所示,本文通过N元序列长度和互信息筛选原始特征集合BOW,得到特征子集BOWsub。其中:lenv为单词和词性序列的长度;tlen为长度阈值;MIv为序列的互信息值;tmi为互信息阈值。tlen和tmi由人工设定取值范围,最终根据SVR模型误差确定最佳值。
BOWsub={v∈BOW|lenv
(1)
N元序列的种类与序列长度成正比。然而,部分序列只是与训练作文主题密切相关的特殊词汇。如果不加筛选,会降低模型在预测不同主题作文时的泛化能力。互信息值用于选取高区别度的N元序列,计算方法如下:首先统计序列v在高分和低分作文的分布情况,构建表3所示的2×2列联表。其中,高分作文Dhigh_score={d∈Dtrain|score(d)≥m},低分作文Dlow_score={d∈Dtrain|score(d) 表3 N元序列分布列联表 根据式(2)计算序列v的MI值: (2) 式中:n=n11+n12+n21+n22,表示训练集作文总数;n1+=n11+n12,表示包含序列v的作文数量;n+1=n11+n21,表示高分作文数量。互信息值测量给定文本类别后序列分布的信息增益,MI值越高表示序列和作文分数的相关度越高。 SVR模型需要对序列频率进行加权,以降低常用词(如get、make等)权重。如式(3)和式(4)所示,本文采用词频二值化(Binary)和词频-逆文档频率(TF-IDF)两种方式对原始词频进行加权。 (3) (4) (5) 1) 特征提取。语言学特征包括文本表层特征、词汇多样性、文本可读性、句法复杂度、语法正确性和语篇连贯度等6个维度,共28个子类。 (1) 文本表层特征。评分员倾向于根据作文长度评测写作质量,两者存在正相关关系[16]。因此,本文选择7类基于文本长度的表层特征构建评分模型,如表4所示。早期AES系统如PEG完全采用表层特征构建,只考虑文本形式,不涉及文本内容,很容易出现误判情况。为避免上述缺陷,需要引入其他深层语言学特征提高系统准确率。 表4 文本表层特征 (2) 文本可读性。本文选用表5所示的可读性指标评测英语学习者书面语的复杂度。其中:N为作文总词数;SYL为所有单词的音节总数;CW指复杂单词,即包含两个以上音节单词的数量;ASL为平均句长;AWS为单词平均音节长度。FOG、FLESCH和KINCAID可读性计算公式中的参数均由多元回归方程确定[17]。FOG和KINCAID的值与文本难度成正比,大致对应学习者的语言水平;FLESCH测量文本的易读性,与文本难度成反比。 表5 文本可读性特征 续表5 (3) 词汇多样性。如表6所示,词汇多样性指不同词汇类型T与文本总词数N的比值。Lu[18]指出,词汇多样性在不同水平英语学习者的语言产出中存在明显差异,并建议使用该指标评测学生的词汇运用能力。 表6 词汇多样性特征 传统的多样性计算方法为词种/词次比(Type Token Ration,TTR)。然而,这种方法受文本长度影响较大,随着文本字数增加,TTR逐渐减小,无法准确测量不同长度文本的词汇多样性。为解决这一问题,出现了若干基于TTR的变换形式,如方根TTR、对数TTR和标准化TTR等[19]。其中,标准化TTR从文本抽取m个长度为n的样本,然后计算所有样本的TTR均值。本文采用连续和随机抽样两种方式计算标准化TTR,样本长度n=50,随机样本数量m=100,连续样本数量m=N/n。 (4) 句法复杂度。如表7所示,句法复杂度通过分析学习者作文中各句法结构的比例评测写作质量[20]。首先使用句法分析器自动标注子句(SYN_C)、从句(SYN_DC)、动词短语(SYN_VP)、复杂名词短语(SYN_CN)和并列短语(SYN_CN)等语法结构,然后通过计算上述结构的使用频率与文本总句数S的比值衡量句法复杂度。 表7 句法复杂度特征 通过编写例1中(b)和(c)所示的Tregex表达式[21]检索例句1(a)中的定语从句“which should be filmed”和由从句修饰的复杂名词短语“lessons and activities which … …”。 例1 (a) I write this report to suggest some [NP[NPlessons and activities][DCwhich should be filmed ]]. (b) SBAR<(S|SINV|SQ<(VP<#MD|VBD|VBP|VBZ)) (c) NP!>NP [< Tregex表达式用于匹配句法树各节点间的支配、从属和相邻关系:如符号<和>分别表示父节点和子节点,$++表示兄弟节点,可检索表6所示各语法结构的使用频率。 (5) 语法正确度。如表8所示,本文通过检测拼写(SPELL_E)和复杂语法错误(GRM_E)评估学习者作文的语法正确性。其中,复杂语法错误检测基于链语法[22]。链语法由词典和算法两部分组成,词典包含词汇的句法搭配方式;算法根据词条的搭配方式对句子进行切分,符合语法的句子形成完整的链接,反之,则表明包含语法错误。 表8 语法正确度特征 以检测例句2(a)中的语法错误为例,链语法首先读取由词条和链接子表达式构成的词典,然后分析各链接子之间是否能形成完成的链条,分析结果如图2所示。 例2 (a) I’m looking forward your reply. (b) I: S+; ’m: S- & Pg+; looking: Pg- & MVa+; forward: MVa-; your: D+; reply: O- & D- 图2 链语法语误检测示例 (6) 语篇连贯度。如表9所示,本文根据词汇衔接理论[23],通过计算语篇的词汇连接数量评估作文的整体和局部连贯度。其中:Linkslocal和Linksglobal是作文中相邻和任意两个句子间的词汇连接数量,Nsent是作文总句数。 表9 语篇连贯度特征 词汇连接数量的计算方法如下:首先使用Word2vec词嵌入模型[24],将句子中的代词和名词表征为实数值向量,然后通过式(6)计算词汇的语义相似度。 (6) 式中:w1和w2为Word2vec词向量;分子为向量点积,分母为向量模的乘积。若词汇相似度大于0.25,则判定为存在词汇连接。如图3所示,例3中的两个句子包含4条词汇连接。 例3 I like doing sports. I would like to play basketball and golf when I am at the Camp. 图3 词汇连接示例 2) 特征筛选。提取语言学特征后,使用随机森林(RF)算法筛选特征。RF回归采用自助抽样法(Bootstrap sampling)和CART算法构建n个决策树,每个决策树节点从随机选取的m个特征中挑选一个最优特征划分数据,最终结果由n个决策树预测值的均值决定。使用自助抽样法选取决策树训练集时,大约有35%的样本未出现在数据集中,构成包外样本(oob),用于评测特征的重要度[25],具体计算式为: (7) 式中:x为语言学特征;Ntree为决策树数目;MSE为第i个决策树模型预测包外样本(oobi)分数的均方误差;permutate(·)函数用于随机排列包外样本中特征x的值。本文选取重要度大于0的语言学特征构建评分模型。 使用公开数据集FCE英语学习者语料库训练并测试评分模型。如表10所示,该语料库由剑桥FCE考试作文构成,包含训练集作文1 141篇,测试集作文97篇,共95万词,每篇作文均有人工批改分数。此外,FCE训练和测试集语料选自不同年份的FCE考试作文,写作主题并不重合。 表10 FCE训练集和测试集情况 FCE中的语法错误均为人工标注,有助于研究英语学习者的二语写作能力与语法错误之间的关系[26]。但本文通过链语法自动检测语法错误评估作文质量,不借助人工标注的数据训练模型,因此需要将语料中的XML标签删除,转换为纯文本文件,然后使用斯坦福自然语言处理工具Stanford CoreNLP[27]自动标注文本的词性和句法结构等语言学信息。 首先采用随机抽样法,从训练数据中选取90%的样本作为训练集,10%的样本作为验证集,然后通过设定N元序列长度和互信息值提取词袋特征。其中:序列长度取值范围为1≤lenv≤3;互信息取值范围为10≤-log2MIv≤20。采用Binary和TF-IDF两种方式对训练和验证集数据加权,使用LIBLINEAR[28]构建SVR模型。模型的损失函数为: (8) 式中:(xi,yi)为训练集样本,i=1,2,…,m,xi∈Rn,w∈Rn;超参C为约束代价参数,ε为不敏感损失参数。本文选用LIBLINEAR的默认参数设置训练模型,令C=1,ε=0.1。求得模型参数w后,使用验证集计算模型的均方误差,进而筛选特征。 图4是词袋类型(type)、MI值与模型误差的关系图示。其中:t为单词序列,p为词性序列。可以看出:Binary加权模型的误差低于TF-IDF;由一元单词序列(t1)和一元到三元词性序列(p3)构建的模型误差最低。表11是模型误差最小的5类特征组合。可以看出,所有特征均包含一元到三元词性序列,但不包含三元单词序列。一元到三元单词序列的种类较多,大多数序列的频率都很低,不利于模型的泛化。与之相比,词性序列的出现频率较高,同时能够反映学习者书面语的词汇和句法搭配关系,具备更强的泛化能力。 图4 词袋特征-模型误差图 表11 词袋特征筛选结果 筛选词袋特征后,使用统计软件R构建随机森林模型,通过式(7)计算语言学特征的重要度。模型参数设置如下:决策树数目Ntree=1 000;随机选取特征数m=9。如图5所示,筛选结果显示段落数(LEN_PARA)和并列短语比例(SYN_CP/S)的重要度小于0。排除这两类特征后,最终选取26类语言学特征构建评分模型。 图5 语言学特征筛选结果 图6 集成学习评分模型框架 如表12所示,评测结果表明,基于集成学习的评分模型准确率明显高于基于SVR的模型。Pearson相关系数r、Spearman相关系数ρ和均方根误差RMSE等评测指标显示,模型Ⅱ以词袋特征BOW_A和26类语言学特征LINGUA构建的集成评分模型均优于现有基于FCE数据集的基准模型。 表12 集成评分模型评测 为了更全面地与现有研究展开对比,本文使用Python深度学习工具Keras,尝试了两种基于CNN深度学习算法的评分模型。如图7所示,模型Ⅲ实验参数如下:输入层单词序列的长度为最大作文字数dinput_length=900;词嵌入层选用Word2vec预训练词向量,维度dword_embedding=300;卷积层的滤波器数量h=20,卷积窗口长度m=3;最大池化层窗口长度n=2;全连接层维度ddense=128。模型Ⅳ除单词序列外,在输入层增加了词性序列,词性嵌入层维度dpos_embedding=50,通过模型训练得到词性向量,然后融合两类序列在全连接层的输出预测作文分数。模型Ⅲ和模型Ⅳ的各层均选用ReLU激活函数,模型训练使用Adam优化器,训练批次大小batch=16。如表13所示,评测结果显示,加入词性序列的深度网络模型准确率最高。如前文所述,词性序列包含一些反映学习者写作质量的浅层句法特征,融合单词和词性序列的模型优于单一的词向量模型。 图7 深度学习评分模型框架 表13 深度学习评分模型评测 然而,与集成评分模型相比,基于CNN的深度学习评分模型准确率仍有较大差距。可能的原因是参加FCE考试的考生多为初级英语学习者,导致数据集中包含较多的语法错误。如图5所示,复杂语法错误数量比例是预测作文质量的重要语言学特征,而基于英语本族语使用者的Word2vec词嵌入模型不能有效地识别这些错误。 本文结合机器学习、自然语言处理和语言学领域的相关研究成果,开发了英语学习者作文质量自动评阅系统。首先使用支持向量回归,通过N元序列长度和互信息值筛选出与作文分数高度相关的词袋特征子集;然后从文本复杂度、正确度和连贯度入手,提取作文的深层语言学特征;最后,使用基于随机森林回归的集成学习算法融合词袋和语言学特征,构建评分模型。与现有评分系统相比,本文方法减少了词袋特征数量,降低了模型复杂度;细化了语言学特征种类,从词汇、语法和语篇等多个角度评估学习者作文质量。研究结果表明,本文选取的26类语言学特征与作文质量高度相关,基于集成学习的评分系统优于现有基于SVR和CNN的评分系统。本文的局限在于FCE语料库的训练和评测数据较少。主要原因是现有公开的英语学习者作文语料中,大多不包含人工评阅分数,无法构建和评估系统性能。后续研究将扩大训练和测试样本数量,从在线机考平台收集更多的学习者数据,验证和改善本文的评分模型,以进一步提高学习者作文自动评分系统的准确率。2.2 语言学特征提取与筛选
3 实 验
3.1 实验数据
3.2 特征提取和筛选
3.3 模型构建和评测
4 结 语