中小学汉语阅读文本自动分级技术研究报告
2020-02-05◎吴边肖敏
◎ 吴 边 肖 敏
一、研究背景
上海市中小学汉语分级阅读标准研制项目于2013 年12 月正式启动,截至2016 年上半年完成第一阶段任务,形成一系列成果,并出版阶段性成果《上海市中小学汉语分级阅读标准研究报告——阅读能力分级》一书。在此基础之上,项目团队继续开展影响汉语阅读文本分级的相关指标研究,旨在提出影响汉语文本难易度的量化指标,初步形成一个文本分级评估模型,尝试探索建设一套利用信息技术支撑的线上汉语文本自动分级系统。
一套通用的文本分级系统不仅可以为学生寻找最适合其阅读能力的阅读材料,实现“个性化阅读文本推荐”,而且在信息检索系统中可以对检索结果进行难易排序,将更易于理解的内容以较高顺位提供给使用者。更重要的是,将文本分级标准与第一阶段完成的阅读能力分级标准结合,形成完善的阅读分级标准,可以为上海市中小学生汉语阅读能力测评、中小学语文教材配套阅读资源的选择等提供量化依据,也可以为汉语分级阅读书目的推出提供支持,从而有效推动上海市中小学生的阅读活动,进一步促进学生阅读素养的提升。
二、研究目标
文本自动分级的研究目标是利用分级量化模型为待分级文本进行文本难易级别评估,以实现对中小学阅读文本提供与专家主观分级较为一致的自动化分级标注。本研究是上海市中小学汉语分级阅读标准研制项目的一部分。本研究选取一批典型文本,参照模型利用系统对典型文本进行量化分级标定,并构建相应的阅读学习平台进行数据采集及实证研究,运用相关统计方法对文本的分级标定以及学生分级阅读数据进行分析和比较,不断修正模型,借此获得一套通用的文本分级标准。
三、相关研究的发展阶段回顾
文本难易度分级常常被视为一个文本分类问题,即以分级别的方式来划分文本阅读的难易程度。文本难易度分级已经是业界长期以来在持续研究的问题,对其比较系统的研究已经发展近百年,但目前仍然谈不上是一个被解决的问题。文本难易度分级从时间跨度上主要可以分为以下四个阶段。
(一)以词汇控制为代表的词汇度量方法
20 世纪20 年代的研究者们主要关注词汇控制,即从词汇的结构难度、内容或功能多样性、使用范围等方面考虑设计一个词汇难度标准。该标准的优劣主要依赖于专家的经验和相关性分析指标。基于这种词汇表可以对文本的难度作简单的判断。
(二)基于可读性公式的结构度量研究
20 世纪30 年代到70 年代期间,研究者们开始关注大量的文本因素,并尝试使用可读性公式以实现更准确的文本难易度分级。从沃格尔(Vogel)和沃什伯恩(Washburne)在1928年设计Winnetka 公式开始,到1981 年可读性评估公式的数量就超过200 个。其中比较有名的是Dale-Chall 公式和Flesch 公式。前者使用句长和词汇难度来评估文本难易度;而后者则使用平均句长和平均单词音节数来度量文本难易度。
事实上,后续的研究表明单单考虑词汇度量对于文本难易度分级来说是不充分的;而各种有效可读性公式的广泛运用则从侧面证明结构度量确实对文本难易度分级有帮助。
(三)以认知理论为核心的语义度量方法研究阶段
在20 世纪80 年代和90 年代,受认知理论的启发,研究者倾向于认为文本难易度的概念更多的与文本语义结构有关。研究者开始关注文本的内容组织、连贯性、凝聚性等语义结构特点,他们不认为难的文章含有难词是因为它们讨论的是抽象的问题,容易的文章使用一般的单词是因为它们处理的是具体的经验。研究者将联结理论、构思图式理论、原型理论以及扩散激活理论等引入研究中,用来解释人是如何在长期记忆中存储和检索信息的。
(四)基于人工智能技术的研究阶段
近十几年来,随着计算机性能的提升以及自然语言处理和机器学习领域的发展,文本难易度研究又有了新进展。得益于词性标注、语法分析、连贯度分析等新兴的自然语言处理技术,研究者能深入地挖掘文本语法和语义的结构信息,并设计出更多的文本难易度评价特征。此外,诸如支持向量机、朴素贝叶斯、对率回归等机器学习新技术也被用于新的文本难易度评估方法。
四、文本自动分级主要技术路线
文本自动分级技术主要是利用文本难易度的量化指标建立文本自动分级模型,对文本进行自动化的分级评估。因此,文本自动分级技术应包含两个方面的研究任务:①研究并提出决定文本难易度的量化指标;②研究如何综合各种量化指标,建立模型,确定文本分级标注。
经过大量的文献研究和技术分析,可以得到以下结论:传统的文本自动分级方法都是仅关注语义单元的熟悉程度和语法的复杂程度,所提取的特征并不足以反映出文本的难易程度。我们尝试通过使用机器学习和自然语言处理的前沿方法,提取有效特征——语句复杂度指标,研究该特征对于文本难易度的描述能力,并实验验证。首先对大量文本进行人工难易度的标定,然后利用神经网络进行有监督的训练,最终利用训练得出的语言模型对文本难易度进行直接标定。而选取语句复杂度作为指标的理由是:语句是组成文本的基本单元,可将文本可读性评估简化为文本平均语句复杂度评估。
(一)基于深度学习的自动文本分级技术
深度学习是一种表示学习方法,是人工神经网络的一个分支;具有深度网络结构的人工神经网络是深度学习最早的网络模型。深度学习可以避免繁琐的人工特征抽取,有效地利用无监督数据,并且具有优秀的泛化能力,因此非常适用于解决自然语言处理领域一系列难题。
首先,由于语言本身的高维特性,传统的自然语言处理系统往往需要复杂的语言学知识以便手工提取分类特征。而利用深度学习,则可以通过构造神经网络模型和训练来自动学习用于解决自然语言处理领域的问题所需的特征。其次,在自然语言处理领域,无标签数据可轻易大量获得,而有标签数据则相对稀少且昂贵,深度学习则刚好可以利用大量的无标签数据来获取特征。最后,自然语言处理领域的许多问题往往相互之间具有非常强的关联性,深度学习可以在特征抽取层面构造统一的模型以同时处理这些问题,并通过多任务学习的方法在模型中对其关联性进行建模,从而获得更好的性能。
(二)语句复杂度评估模型
在自然语言处理中,语言模型是一个非常重要的基础性工具。我们可以从多个角度去理解语言模型和文本可读性,其中较为有代表性的一个角度就是:基于语言模型的文本可读性是对语言确定性的计算。在具体研究中,我们常希望将语言进行建模,用量化方式来衡量某个语料库的确定性(或可预测性)。
在计算语言模型时,我们将每个语句视为一个词汇序列,确定性则是要回答“当一个模型观察到一个词序列中的前(t–1)个词之后,能否准确预测出第t个词”这一个问题。即如果一个语言集合所包含的语言较为简单,则我们可以认为其语句序列较为可预测,在观察到前若干个词之后,能够将之后才出现的下一个词较为确定地锁定在若干个候选者之中;而对于一个含有大量较复杂语句的语料库来说,则观察到某一语句中的前(t–1)个词后,预测其之后的第t个词则依旧非常困难。
(三)基于神经网络的语言模型与语句复杂度的计算
传统语言模型是指基于n-gram 模型构建的,但n-gram 模型存在着一个两难问题:如果参数取得越大,其所需的计算量与特征空间的稀疏度会越大;反之如果n取得较小,模型无法使用序列中距离较远的信息,这将导致模型预测并不准确。
所幸在神经网络语言模型中,序列中的词被参数化为连续的实数向量,并将其作为神经网络的输入来解决n-gram 模型中数据稀疏性的问题。这些参数也将作为模型训练中的一部分进行学习。而循环神经网络在神经网络语言模型中的应用,大幅度地提高模型在长序列上学习相关上下文的能力。
如图1 所示,本文采用一个基于长短期记忆神经网络的语句复杂度评估模型,该模型由一层词嵌入层、两层 LSTM 层以及一层Softmax 层构成。其中,词嵌入层用于将每个词嵌入连续的实数向量空间;LSTM 层用于处理词序列与记住历史信息;Softmax 层用于获得输入词序列中每个词对应的概率,该概率将会用于语句复杂度的计算之中。这样一来,训练样本中的每个词、词序列、历史信息、输入词序列中每个词对应的概率等信息都被综合在一起以得到一个语言模型。之后,我们就可以量化计算“语句复杂度”这一指标。
图1 “语句复杂度”评估模型
五、本研究实验过程和结果
本研究中进行的所有实验都是基于PyTorch及其子模块所编写的。
(一)数据集
本研究共选取两个来源的数据集:①国内应用最为广泛的四个版本语文课程教材作为本实验模型的语料库(去除诗歌和古文);②由专家遴选的60 本经典图书。
其中,选择语文教材作为训练样本的原因有以下三点。
(1)教材覆盖区域、人群广泛,具有一定代表性。
(2)教材符合一定的文本难度递增规则,具有较高可分辨性。
(3)教材是由相关领域的专家组完成编撰的,具有权威性。
(二)数据预处理
在模型训练之前,所有课文都进行分句与分词的预处理。句子长度方面,本研究选取数据集中长度大于或等于2 个字符且小于或等于128 个字符的所有句子,仅少量句子长度超过128 字符(小于1%)。预处理后,合并所有数据用于模型训练。
另外,还需对训练集进行采样处理,这是因为在实际学习中,各个学期的教材都是以一个学期时间为单位进行学习的。也就是说,不论每个学期的教材课文文本量为多少,学生所付出的学习时间大致相同。其中,低年级的课文语句数量较少,那么该年级的学生在同一句话上所花费的时间自然会更多。为在模型训练中反映这一现象并且平衡各年级语句数量,本研究采用蒙特卡洛采样法,重新平衡各个年级中句子数量在训练集中的分布。
(三)若干设定
在实验中,我们所选取的教材都服从以下两个假设。
(1)假设课文难度的评判主体是已学习过所有课文的学生,因此语言模型将所有年级的课文作为学习数据。
(2)假设每个学期内的课文难度大致保持一致,而不同学期的课文难度与年级符合一定程度的线性增长关系,且由年级序列号决定(即一年级第一学期难度为1,以此类推)。
(四)实验结果
利用训练好的最佳语言模型,分别测量四种教材中课文的语句复杂度,结果如图2 所示。从图2 中不难发现,难度等级与语句平均复杂度有着很强的相关性(详见表1),除A 教材为+0.788 外,其余三种教材课文平均语句复杂度与难度等级的相关性都达到+0.86 以上,并且四套教材之间还存在着较强的相似度。
图 2 基于神经网络的语句复杂度模型——四套教材的实验结果
表1 教材中语句复杂度与难度等级的皮尔逊相关性结果
为进行对比,我们还使用SRILM 工具来构建传统的n-gram 语言模型,在使用相同训练集数据训练得到语言模型后,同样对各版本教材进行语句复杂度的测量,并标记为KN 3-gram。具体实验结果可见图3。
图 3 基于KN 3-gram 的语句复杂度模型——四套教材的实验结果
从表1 中可以看出,KN 3-gram 模型得到的结果,其各教材的相关性均低于本模型,甚至在A 教材中的相关系数只有+0.356。在图3中可以更为直观地看出差别。本研究认为这是由于n-gram 模型单纯地基于统计频率,无法抽取语句更多的相关特征所导致的。该对比结果在一定程度上展示语句复杂度对课文难度等级具有指导性意义。
此外,本研究还使用专家推荐的60 本经典图书用于验证模型的有效性:一方面,由19位相关专家为60 本图书做主观难易打分,并取平均值;另一方面,使用本文方法测量60本图书的文本难易度。结果表明,文本难易度打分与专家主观打分基本一致。
从上述实验结果可以看出,本研究所采用的基于神经网络的语句复杂度评估模型能够较好地提取文本难易度特征,可以进一步确定语句复杂度对于课文的难度等级有着很强的指导性价值,同时语句复杂度对于文本可读性评估任务来说是一个拥有良好指向性的指标。