一种融合知识点信息的几何题自动求解方法

2024-01-20 02:21杰,肖菁,曹
中文信息学报 2023年10期
关键词:训练任务编码器题目

曹 杰,肖 菁,曹 阳

(华南师范大学 计算机学院,广东 广州 510631)

0 引言

近年来,随着自然语言处理技术的发展,越来越多的研究人员参与到数学题的自动求解研究当中来,实现数学题的自动解答也是人工智能领域的目标之一。但是当前许多数学题的自动求解工作主要集中于数学应用题的自动求解领域,对数学几何题的求解研究较少。在数学应用题的求解中,研究者们已经基于深度学习的方法设计出了与人类表现接近的数学应用题求解器。然而,在几何题的自动求解研究中,许多方法仍然依赖于人工设定的规则表达式进行求解,这不仅使得数据集的构建工作量巨大,而且在搜索和匹配答案的过程中也会消耗大量的时间。基于此,有研究者提出了基于深度学习的几何题自动求解器,Chen等[1]提出第一个用于构建基于深度学习方法几何题求解器的数据集GeoQA,并提出了第一个基于深度学习方法的几何题求解器NGS。随后Cao等[2]扩展了GeoQA数据集,提出了GeoQA+数据集,并设计了一个更有效的并行文本编码器(Dual Parallel Text Encoder,DPE)。然而,这些工作与应用题的求解类似,侧重于实现增强编码器对文本信息的提取和编码能力,并没有针对几何题的特点进行方法设计。

几何题的求解和数学应用题的求解有较大差异,在应用题的求解中人们往往更关注于题目中所包含的数量关系信息。而对于几何题,根据经验,人类在求解几何题的时候总是需要结合该几何题所属的知识点信息进行求解,在确定了题目所属的知识点后会以该知识点为依据进行演算推理,有时还需要结合多个知识点的定理知识来完成完整的推理。如图1是人类求解一道几何题的一般过程,在求解该题时,求解者首先会根据题目信息判断出其所属的知识点是勾股定理,随后,开始在题目中寻找相关数值条件,并找出题目中适用于勾股定理计算的相关条件计算出BD的长度;接下来结合题目所给条件得到三角形BDC也是直角三角形,最后再根据三角形的面积计算公式计算出两个三角形的面积,最终相加得到答案。由此可见,几何题的知识点信息是求解题目的重要依据,完整的解题过程实际上是知识点定理的应用过程。综上,本文认为在几何题的求解过程中融入几何题的知识点信息是有必要的。在Lu等[3]的工作中, 他们基于搜索的方法为几何题的求解匹配所需的定理知识。但是这样的搜索和匹配过程需要耗费大量的时间和计算资源, 而且他们数据集的标注工作量非常大, 不适用于深度学习的算法。在Chen等的工作中,以图像和文本信息的融合输出作为解码器的输入以获得解题序列,同时还将信息的融合输出输入到分类层,用于预测题目的知识点类型,最后将知识点预测任务的损失函数与生成解题序列的损失函数相加作为最终的模型求解损失函数。总的来说,Chen等只是把知识点预测任务应用到损失函数中优化模型训练,并没有真正地将知识点的信息引入到题目求解中。为了模拟人类求解几何题的思维,有效利用几何题相关知识点信息帮助题目求解,本文设计了基于预训练任务的知识点信息融合方法。

图1 几何题的求解及数据标注示例

Shen等[4]已经证明了对大型预训练模型使用解题子任务做微调工作有助于提升模型对解题任务的理解能力。Shen等通过设置基于解题表达式的生成和排序预训练任务来增强模型区分正确和错误解表达式的能力。实验表明,辅助预训练任务可以有效提高模型的题目求解能力。受Shen等研究的启发,本文基于DPE[2]文本编码器设计了一个几何题知识点预测任务(图2),目的是让模型熟悉几何题知识点的语义表达以辅助模型利用知识点信息进行题目求解,本文将预训练过的DPE编码器组合成一个新的编码器称为KNO-DPE。本文在预训练任务中为文本编码器嵌入了可学习的向量以获得知识点的语义向量表示,然后在解题训练中将该语义向量与题目文本的嵌入向量信息有效地融合起来,最后将其输入到RoBERTa[5]中进行编码工作。同时也使用类似的方法处理了KNO-DPE中的双向长短时记忆网络(Bidirectional Long Short Term Memory,Bi-LSTM)[6]模块。实验结果表明,本文基于预训练任务的知识点信息融合方法能有效地让模型学习到题目知识点和求解表达式之间的关系,并利用这种关系帮助模型求解出题目答案。基于KNO-DPE文本编码器的解题模型在使用GeoQA+数据集作为训练集时的最高求解准确率达到了66.89%。此外,本文还探究了KNO-DPE在基于其他几个预训练模型时的表现,结果表明当KNO-DPE使用其他预训练模型时,应用本文的方法后模型的求解准确率均有提升,这也证明了本文方法的普遍性。最后本文通过案例对比分析了基于KNO-DPE编码器和基于DPE编码器的求解模型生成的题目求解表达式的区别,进一步验证了本文方法的有效性。

图2 知识点预训练过程的结构图

综上所述,本文的贡献主要有三点:

(1) 将几何题的知识点预测作为预训练任务引入到几何题的自动求解研究中;

(2) 探究并设计了一种有效地将几何题知识点信息融合到几何题文本编码过程的方法;

(3) 实验表明,融合知识点信息的模型在测试集上明显优于其他基线方法,其求解几何题的准确率提升到了66.89%。将本文方法应用到基于其他预训练模型的文本编码器上,同样表现出色。

1 相关工作

1.1 几何题的自动求解

在人工智能领域出现之初,实现机器的自动问答便是研究者们一直致力于解决的一个问题。 其中几何问题的自动问答又是机器问答领域的一个研究热点之一。当前的几何题自动求解方法普遍分为基于规则的求解方法和基于深度学习的求解方法。

1.1.1 基于规则的几何题求解方法

在20世纪的几何题自动解答研究中,研究者主要通过符号化推理的方法对一些几何公理进行自动推导证明[7],对于数学几何题的自动求解还未进行深入研究。进入到21世纪,Wong等[8]设计了第一个用于求解数学几何题的自动求解器LIM-G。但是他们的方法只能求解纯文本类型的几何题,但是一般的几何题往往会带有图像信息。随后Seo等[9]提出了一种从几何图形中获取几何题关系信息的方法。在此基础上,Seo等[10]又提出了第一个结合几何题文本和图形信息进行几何题求解的方法,并提出了一个小规模的几何题数据集,但是其求解步骤烦琐且求解过程不具备可解释性。Sachan 等[11]设计了一种从课本中提取出几何题公理知识并将其转化为 Horn 子句形式的方法。Sachan等将他们研究应用于Seo等的工作中,这使得该几何题的求解过程具备更强的可解释性和更高的易用性。但是Sachan等的工作并未公开代码和数据集,而且他们的方法也未在更大规模的数据集上得到验证。以上这些工作极大地推动了几何题自动求解工作的发展,但这些方法也因为过于依赖人工设计的规则匹配方法而为问题的求解带来了一定的局限性。随后Lu等[3]继续基于规则匹配和搜索的方法提出了更强大的几何题自动求解器Inter-GPS以及一个更大的公开数据集Geometry3K。Lu等首先通过将题目文本和图形信息识别成规则表达式,随后通过在定理知识库中搜索适合求解该题目的定理知识并基于题目和定理知识信息进行推导求解。Lu等的工作将几何题的求解准确率提升至57.5%,但是该工作依然需要在题目文本和图形上进行大量的人工标注,而且其定理搜索过程也需要耗费一定的时间和计算资源。总的来说,基于规则匹配方法的几何题求解研究需要耗费大量人力进行数据标注和规则设计,且题目的求解效率也有待提高。

1.1.2 基于深度学习的几何题求解方法

为了改进几何题自动求解研究的现状,Chen等[1]设计了第一个基于深度学习的几何题求解器NGS,并且提出了第一个专门用于训练深度学习求解器的几何题数据集GeoQA,但是由于GeoQA数据集的数据量还不够大,题目类型不够丰富,题目的求解难度也相对较低,所以Cao等扩展了GeoQA数据集,构建了一个题目类型更丰富、求解难度更大的几何题数据集GeoQA+[2],同时也改进了NGS方法的文本编码器部分,增强了模型的文本特征提取能力,该工作也显著提高了基于深度学习方法的几何题求解准确率。但是无论是Chen等还是Cao等的工作都不能针对几何题的解题特点进行模型设计,这两项工作虽然用到了题目知识点的信息,但是其方法仅仅是将知识点预测任务用于优化模型训练的损失函数,并没有将知识点作为解题信息提供给模型以帮助求解过程的推导。而根据人类的解题思维,知识点信息是对几何题进行推导求解的重要依据。为了改进研究现状,本文设计了基于预训练任务的知识点信息融合的方法,实验表明,本文的方法能有效提升模型的理解能力以生成正确的解题表达式。

1.2 预训练模型在数学题自动求解上的应用

预训练模型的出现极大地推动了自然语言处理领域研究的发展[12-13]。不少研究者也将预训练模型应用于数学题的自动求解中。

1.2.1 预训练模型在应用题求解上的应用

在数学应用题求解中,通常需要一定的外部经验知识,如数量关系、生活常识等。刘等[14]通过构建一个应用题知识库来帮助求解古典概型的数学应用题,但是知识库的构建工作量较大且难以广泛拓展到其他类型的应用题求解中。因此研究者尝试通过引入预训练模型的方法为求解应用题引入外部知识,因为预训练模型是基于大规模的日用语料训练而来的,其训练数据往往包含丰富的经验知识,这些先验知识对于应用题的求解是十分重要的。在Yu等[15]的研究中也证明了预训练模型包含丰富的常识和事实知识,Yu等利用RoBERTa的编码器模块构建了一个多层的文本编码器,基于RoBERTa构建的编码器引入了外部先验知识,对题目文本具有更强的理解能力,也显著提升了模型的题目求解能力。

1.2.2 预训练模型在几何题求解上的应用

在大规模语料库上进行预训练得到的预训练模型如BERT[16]、RoBERTa[5]、ALBERT[17]等可以作为强大的文本特征提取器,同时也能为题目的求解带来外部经验知识。但是与应用题所需的经验知识不同的是,几何题的求解往往需要几何定理知识,这些定理知识对于预训练模型来说是更难以理解的。因此在几何题的自动求解中,单纯地通过预训练模型来为求解题目引入定理知识,并不一定能取得较好的效果,这在Cao等[2]的工作中也得到了验证。Cao等在GeoQA数据集上单独使用RoBERTa作为文本编码器的效果,并没有比仅使用一个(Long Short Term Memory,LSTM)作为文本编码器好,Cao等的研究认为这是因为预训练模型训练语料的文本表达与几何题的题目文本表达之间存在较大的差异,在几何题上使用预训练模型需要更大的数据量进行微调,而这也导致了在数据量较小的GeoQA数据集上进行预训练时解题准确率更低。此外,本文也认为求解几何题所需的知识点更多是定理知识,这涉及到复杂的数学关系,而这些知识对预训练模型来说也是更难以学习和理解的,在小数据集上预训练模型难以提供问题求解所需的定理知识。这也说明不能仅凭预训练模型为几何题的求解提供额外的定理知识。

1.3 基于预训练任务的数学题求解

Shen等[4]用解题表达式的生成和排序任务来微调训练了序列生成模型BART[18],经过预训练后的BART模型能够生成更多可能的解题表达式候选项,从而提高了模型对应用题的求解准确率。Liang 等[19]在BERT的基础上以数字属性关系预测为任务微调训练了BERT模型,这使得BERT模型能识别到题目文本中的数字字符之间的关系,令模型生成的解题表达式中数字字符的位置更准确,进而提高求解准确率。因为对于减法和除法来说,数字在操作符的左右侧顺序是会决定计算结果并最终影响到答案的求解。

本文受到以上研究的启发,基于文本编码器DPE设置了一个几何题知识点类型预测的预训练任务,通过预训练任务获得知识点的编码表示,并使得编码器模型进一步熟悉几何题的知识点信息。随后再通过有效的知识点信息融合方法将获得的几何题知识点信息融入题目求解过程中以帮助题目求解。

2 数据及正则语言

GeoQA与GeoQA+数据集GeoQA是由Chen等提出的第一个用于构建基于深度学习方法几何题求解器的数据集,其包含3 509条训练数据,755条验证数据以及764条测试数据。GeoQA+是Cao等基于GeoQA扩展得到的的几何题数据集,比起GeoQA,GeoQA+的题目求解难度更大,题目类型也更丰富。本文的实验主要基于这两个数据集进行。GeoQA+数据集的题目包含知识点类型有76个,其中每一个题目包含两到三个的知识点,这表明求解这道题目可能需要应用两到三个定理知识。本文基于GeoQA+的训练集来预训练本文的知识点预测模型。在解题实验部分,本文在两个数据集上分别训练本文的求解模型以验证本文模型有效性。但是需要注意的是,GeoQA和GeoQA+所包含的验证集和测试集是一样的,GeoQA+主要是扩展了GeoQA数据集的训练集部分。

题目求解的正则语言在GeoQA和GeoQA+数据集中,它们的数据标注都使用了如表1所示Chen等[1]定义的一种几何题求解正则语言,该正则语言包括操作符OP、常量操作数C等,共有十八个操作符,以及八个的常量操作数。如图1的例题求解过程为该正则语言的应用示例,其中Ni表示题目所给出的操作数,Vi表示计算产生的过程变量,可以使用这种正则语言组成的表达式对题目做出具有可解释性的求解。本文的研究也基于该正则语言进行题目的求解。

表1 几何题求解的正则语言

3 方法

几何题的求解和推理依赖于定理知识,而几何题的每个所属知识点类型都对应着一条几何定理。如图1例题中的知识点类型为勾股定理,表明该题目的求解过程需要用到勾股定理的知识,其中勾股定理的详细描述为“在直角三角形ABC中,直角边AB边长为a,直角边BC边长为b,斜边AC边长为c,则有a2+b2=c2”。根据人类的思维,在求解题目前需要理解勾股定理的含义及其各项使用条件,并在求解题目的过程中将相关数量关系代入进行运算。然而对于当前的深度学习模型来说,完全理解这样一段详细的定理描述是很困难的。此外,定理知识的详细描述往往是一段较长的文本序列,例如,勾股定理的描述其文本序列长度便达到了40个字符,而一般的几何题题目文本序列长度也在50~100字符之间,本文认为如果直接将完整的定理描述信息与题目文本信息相结合显然会因为较长的定理信息的存在而歪曲模型对题目文本的理解,会导致模型对题目文本信息做提取时出现遗漏,而无法促进模型对题目的求解。基于Shen等的工作,本文认为在预训练任务的基础上,仅将题目的知识点类型作为提示信息传递给解题模型是更有效的信息注入方法。知识点信息在求解过程中仅为模型提供提示学习作用,因为属于不同知识点类型的题目往往需要的解题操作符也不同。例如,属于勾股定理类型的题目在求解过程中总会出现与勾股定理运算相关的操作符;属于三角函数类型的题目也更可能出现与三角函数计算相关的操作符。这意味着可以利用这种差异让模型在训练过程中学习到知识点信息与求解表达式中的操作符之间的关系,利用引入的知识点提示信息生成更可靠的解题操作符并生成准确度更高的解题表达式序列。

为了在几何题的求解过程中融入几何题的知识点信息,本文做了以下两部分的工作。首先在GeoQA+数据集上用知识点预测的多标签分类任务预训练了文本编码器DPE并基于预训练过的DPE构建了一个新的文本编码器KNO-DPE。本文在DPE编码器中嵌入了一个可学习的向量并从预训练过的模型中取出该向量作为知识点的语义编码表示,随后将其与题目的文本嵌入向量结果相融合输入到KNO-DPE中进行进一步编码。图2为本文知识点预训练过程的结构图,图3为题目求解模型的整体结构图。

图3 基于KNO-DPE的几何题求解器模型结构图

本文研究基于NGS[1]和DPE-NGS[2]。DPE-NGS和NGS在模型上的不同仅仅是DPE-NGS使用了一个基于BiLSTM和RoBERTa组成的并行编码器用于编码文本输入。在其他部分,NGS和DPE-NGS都使用了一个预训练过的ResNet作为图形编码器用于处理几何题图形的输入,使用了一个共同注意力模块用于将图像和文本信息进行融合和对齐。在解码器部分则使用了一个基于注意力机制的LSTM模块作为模型的解码器用来解码生成题目的求解序列。本节接下来的内容中将对这些模块做进一步的介绍。

3.1 预训练任务

本文用GeoQA+作为数据集预训练了文本编码器DPE。GeoQA+数据集的题目共包含有76个几何题知识点类型,其中每一道题目属于一个或者多个知识点类型。例如,一道题目的求解过程可能同时使用到勾股定理和平行四边形的性质,这样的题目的知识点类型就同时包括勾股定理以及平行四边形的性质,因此本文的预训练任务是一个多标签分类任务。本文的目的是通过在文本编码器上做知识点分类任务来让编码器熟悉几何题的知识点信息并获取到知识点的编码表示,详细的模型预训练过程如图2所示。根据Cao等的研究,DPE由RoBERTa和一个双层的Bi-LSTM组成,这是一个并行的文本编码模型。预训练任务中以几何题题目文本的词嵌入向量T作为输入,文本编码器DPE通过识别题目的文本特征来进行知识点分类。本文分别将几何题的题目文本输入到RoBERTa和BiLSTM模块中,RoBERTa和BiLSTM分别对文本信息进行编码并得到题目文本的首字符编码向量r和l,随后将r和l拼接起来得到最终的编码结果O输入分类层。为了实现知识点预测分类任务,本文将DPE的输出设置为[64,768],768是RoBERTa和BiLSTM的隐藏层大小,64是批大小。为了获得知识点的编码表示,本文在输出层设置了一个可学习的知识点编码表示K,大小为[76,768],76是知识点的类别总数,本文预训练模型的输出如式(1)所示。

C=cat[K,O]

(1)

本文使用C作为知识点分类任务的输出。经过预训练任务的学习后可以得到训练过的文本编码器DPE,以及包含了丰富知识点特征信息的知识点语义向量K,本文将在解题模型中使用该向量作为知识点的语义编码表示。同时本文为了使得模型前后更一致,也为了获得更多的知识点特征信息,还在预训练模型中设置了一个可学习位置向量P,并与知识点语义向量K一起应用到后面的解题编码中。

3.2 文本编码器KNO-DPE

本文从预训练过的DPE中提取出RoBERTa以及BiLSTM模块来组成新的文本编码器KNO-DPE(图3)。本文使用K来代表预训练过程中模型学习到的知识点信息,并用其作为知识点的语义向量表示。本文还从预训练过程中获取了知识点的位置向量信息P用于增强知识点信息的特征表示。

同样本文也基于DPE中预训练过的BiLSTM来作为该并行文本编码器的另一模块,设BiLSTM的编码输出为L,最后本文将RoBERTa的输出和BiLSTM的输出拼接得到作为最终的文本编码输出结果E,如式(5)、式(6)所示。

本文将这个新的几何题文本编码器KNO-DPE应用于NGS求解模型中。图3为把KNO-DPE作为文本编码器的几何题求解模型。在图3所示的解题模型中,KNO-DPE作为文本编码器接受几何题题目和知识点信息的融合结果输入,经过编码后得到文本编码输出E,图形编码器(Diagram Encoder)模块接受题目的图形信息输入并得到图形编码输出M,随后将文本编码结果和图形编码结果输入到信息融合模块(Joint Reasoning Module)得到信息融合输出F,最后将F输入到解码器进行解码得到题目的求解序列。

3.3 图形编码器

由于几何题的题目往往包含图形信息,因此还需要图形编码器来提取图形特征。图像的特征提取模型一直是视觉问答任务模型的重要结构之一。在以往的研究中,研究人员针对各种视觉问答任务的特性设计了一系列的图像特征提取模型。但是这些预训练模型都没有针对几何图形进行识别训练,不利于进行几何图形的特征提取。本文认为,视觉问答任务的图像处理模型更关注于图像的目标分割和检测以利于与问题文本中的关键词进行匹配。而几何题的求解更关注的是通过题目条件进行推理,图形信息往往是解题的补充信息,因此传统的视觉问答任务中的图像处理模型并不适用于几何图形的特征提取。

Chen等使用了两个针对几何图形的预训练任务对ResNet[20]进行了预训练微调工作,分别是图像位置预测任务和几何元素识别任务,根据Chen等的实验,这两个预训练任务有效地提升了ResNet对几何图形的特征提取能力。本文的工作也使用了该预训练模型作为图形编码器。

3.4 信息融合模块

在获得了文本和图形的编码信息后,需要将两者的信息融合起来。在NGS的工作中,受到Yu等[21]的启发,Chen等使用了一个共同注意力机制模块(co-attention)来进行图像信息和文本信息的联和推理。该模块由12个自注意力(Self-attention)模块和6个导引注意力(Guide-attention)模块组成。具体的,Chen等首先使用6个自注意力模块对问题文本编码输出进行编码,随后将第6个自注意力单元的最终隐藏状态用作指导信息输入到由6个自注意力模块和6个导引注意力模块堆叠而成的共同注意力模型,以实现跨模态语义融合和对齐。在本文的研究中也使用了该信息融合模块。具体实现是把文本编码器的输出E和图形编码器的输出M作为信息融合模块的输入,经过信息融合后得到图形文本信息的融合结果输出为F,F中包含了丰富的文本和图形特征信息,我们使用Co-attention来简要表示图像和文本信息的融合过程。

F=Co-attention(E,M)

(7)

3.5 解码器

受Chen等工作的启发,本文使用了一个基于注意力机制的LSTM模块作为题目求解的序列解码器。设yt(1≤t≤T)是目标求解序列,设pt为下一个要生成的序列符号,本文使用负对数似然函数作为解题的损失函数,则损失函数可以表示如式(8)所示。

(8)

其中,θ是整个求解模型除了图像编码器外的所有参数集合,x是输入的图形和文本信息。模型解码器beam search的大小设置为N,每次生成N(在本文研究中N=10)个解码序列如[g1,g2,…,gn],本文只选取第一个求解出题目答案的序列作为正确的解题序列,如果所求解出的答案不在题目选项中,该题目将被标记为无结果类题目,而不是随机选择一个选项作为答案,如果求解错误的答案则为错误求解。

4 实验

在实验部分,本文基于GeoQA和GeoQA+两个数据集来训练求解模型,使用这两个数据集共同的测试集来评估基于KNO-DPE作为文本编码器的求解模型以及其他对比方法的解题效果。本文将KNO-DPE作为文本编码器应用于NGS方法中进行题目的求解,记为KNO-DPE-NGS。

4.1 实验设置

数据集当前几何题的自动求解领域主要存在以下几个数据集: GeoS[10]、GeoS++[11],Geometry3K[3]以及GeoQA[1]和GeoQA+[2]。其中Geos数据集只有186条数据,不适用于深度学习训练,而Geos++数据集则没有公开,对于Geometry3K,Lu等为了其文本处理器能有效地将题目文本识别成可用的规则表达式而将题目文本标注成极短的子句形式,丢失了大量的题目文本信息,因此也并不适用于本文的模型训练。GeoQA的训练集包含3 509道几何题,GeoQA+的训练集包含6 027道几何题,两个数据集使用同一个验证集和测试集,其中验证集中包含746道几何题,测试集中包含755道几何题。本文实验根据模型在该测试集上的求解准确率表现以对比模型的效果。

方法对比和实验参数在对比实验方面,本文基于以上两个数据集使用NGS[1]和DPE-NGS[2]作为本文模型的主要对比方法,此外本文还对比了另外两个设计用于求解数学几何题的模型Seq2Prog[22]以及BERT2Prog(基于BERT作为文本编码器的Seq2Prog)方法。同时,本文还设计了消融实验以证明本文的预训练方法和知识点信息融合方法的有效性。最后,本文还将DPE的RoBERTa替换成BERT模型以及更轻量化的ALBERT来进行实验,以观察本文的方法对在基于不同的预训练模型时的表现,并探究将本文的方法扩展至其他任务的可能性。主要的实验参数如下: ResNet的学习率为1e-5、BiLSTM学习率为1e-3、RoBERTa(BERT,ALBERT)学习率为2e-5、其余模块学习率设置为2e-5,批大小为32,模型训练了100个epoch。

4.2 实验结果

本文对比了不同模型在基于GeoQA和GeoQA+这两个数据集作为训练集时的表现,表2展示了不同模型基于不同数据集作为训练集时在测试集上的表现差异。

方法的有效性从实验结果可以看到,基于KNO-DPE的求解模型在两个训练集上训练时都取得相较其他方法更高的准确率,其中基于GeoQA+作为训练集时本文方法将几何题的求解准确率提升到了66.89%,领先当前的几何题自动求解研究的基准模型。本文进一步分析了模型在各种类型的几何题目上的表现,发现本文的模型在所有类型的几何题题目上都表现得更好,这也进一步说明了本文方法的有效性。尤其是在Others类型的题目中提升较大,这是因为在GeoQA训练集中Others类型的题目较少,而Chen以及Cao等的模型无法在数据量较小的情况下充分学习到该类型题目的特征,因此他们的模型在这种类型的题目上表现较差,但是在以KNO-DPE作为文本编码器的求解模型中,由于KNO-DPE为题目引入了知识点信息,为模型在求解这类型题目时提供了额外的信息并提高了对这类题目的求解准确率,由此也表明本文的方法对于求解数据集中少样本的几何题类型题目有显著作用。

方法的一般性为了探究本文的方法在使用不同的预训练模型作为文本编码器组成模块时的表现,本文将DPE文本编码器中的预训练模型RoBERTa替换成BERT或ALBERT,再基于本文的预训练任务进行编码器的预训练,最后在题目求解训练中应用同样的知识点信息融合方法再进行实验评估。表3的实验结果表明,本文方法对于其他不同类型的预训练模型同样有效,无论DPE编码器基于BERT还是ALBERT,在应用了本文的方法后题目求解准确率都有较大提升,这也证明了本文为模型设置的预训练任务以及知识点信息融合方法的一般性。

4.3 消融实验

本文还设计了消融实验以验证基于预训练任务将知识点信息融合到题目求解过程的合理性。本文分别对DPE编码器应用预训练任务处理或知识点信息融合处理再分别进行实验评估。从表4的实验结果中可以看到,当不对文本编码器进行预训练只是引入知识点信息时,模型在测试集上只取得了60.93%的准确率。当本文对模型进行了知识点的预训练但是在文本编码过程中不引入知识点信息时,模型能取得64.37%的准确率,而当既对文本编码器进行预训练又在文本编码过程中引入知识点信息时取得了66.89%的最高准确率。实验结果验证了预训练任务和知识点信息融合方法的必要性和合理性。本文认为如果只是单纯地将知识点信息融入DPE中,会使得模型难以理解知识点的编码表示,反而会歪曲模型对题目的理解,因为模型对知识点信息不熟悉,无法处理额外的知识点信息;而如果只是对模型使用知识点预测任务进行预训练,则无法利用到题目的知识点信息进行题目求解;当把知识点预训练任务和知识点信息融合方法组合在一起后,能取得最好的实验效果,此时模型不仅能够熟悉知识点的编码表达,并且能有效处理融入的知识点信息。

表4 消融实验结果 (单位: %)

4.4 案例分析

最后,本文对基于DPE和KNO-DPE求解模型生成的解题表达式进行了典型案例分析,选定的案例如图4所示。从生成的表达式可以看到,以KNO-DPE作为文本编码器的求解模型能够根据题目所属的知识点准确生成正确的解表达式进行题目求解。在该题中,题目的知识点类型为“切线定理”“等腰三角形”“三角形内角和”。本文的模型能够学习到知识点信息和解表达式的关系,并生成准确的解题操作。如在该题中首先需要根据切线性质得到∠MAC=90°且因为MA=MB,进而得到∠MAB=∠MAC-∠BAC=65°;随后根据等腰三角形性质得到∠ABM=∠MAB=65°;最后根据三角形内角和等于180°,用180°- 2×∠AMB=50°求出∠AMB的大小等于50°。基于KNO-DPE的求解模型能够提取题目信息并在知识点信息的提示下发掘出与人类求解题目类似的解题思维,根据知识点信息生成正确的求解操作符和准确的操作顺序。而基于DPE的求解模型则生成了完全错误的求解表达式。本文认为DPE因为没有针对题目知识点进行设计,导致模型在解题时无法建立起题目的知识点信息和解题表达式之间的联系,从而缺少了生成正确表达式所需的重要信息,难以生成置信度高的操作符,导致模型朝着错误的方向生成了错误的解题表达式。对比结果表明融入了知识点信息的几何题求解模型有着更强的解题能力,为解题模型融入知识点信息以模拟人类思维进行正确的题目求解有着重要作用。

图4 基于KNO-DPE和DPE的求解模型求解一道几何题的对比示例

5 总结

本文研究受到人类求解几何题思维的启发,将知识点信息应用到几何题的自动求解研究中。本文设计了一个几何题知识点预测任务用于预训练文本编码器,随后从预训练过的文本编码器中获得知识点的语义向量表示并提出了一个新的几何题文本编码器KNO-DPE。本文还提出了一种将几何题知识点信息融合到题目文本编码过程中的方法。实验结果表明,基于KNO-DPE作为文本编码器的解题模型将几何题的自动求解准确率提升至66.89%。此外,本文还通过消融实验进一步验证了本文方法的合理性。未来工作中,本文将探究增强几何题知识点的编码表示,并尝试将知识点信息与图形信息结合起来的方法进一步利用知识点信息辅助几何题的求解。

猜你喜欢
训练任务编码器题目
唐朝“高考”的诗歌题目
青少年皮划艇运动员各年龄阶段的训练任务分析
关于题目的要求
本期练习类题目参考答案及提示
分析青少年皮划艇运动员各年龄阶段的训练任务
基于FPGA的同步机轴角编码器
海军航母编队启航执行机动训练任务
辽宁舰开放,看什么
基于PRBS检测的8B/IOB编码器设计
JESD204B接口协议中的8B10B编码器设计