首页> 中国专利> 一种自然语言文本和数学语言文本的混合词嵌入方法

一种自然语言文本和数学语言文本的混合词嵌入方法

摘要

本发明提供了一种自然语言文本和数学语言文本的混合词嵌入方法,包括:对混合文本进行识别和预处理,得到由文本和数学表达式组成的数学资源数据集;对具有树形结构的数学表达式进行位置编码,保持树形结构的相对位置平移不变;对具有线性结构特征的文本和具有树形结构特征的数学表达式进行统一位置编码;将相对位置编码送入预训练模型的注意力模块,采用掩蔽语言模型和下句预测两个标准预训练任务对数学资源进行预训练,预训练完成后,每个符号均可得到富含上下文信息的嵌入向量表示。

著录项

  • 公开/公告号CN114818698A

    专利类型发明专利

  • 公开/公告日2022-07-29

    原文格式PDF

  • 申请/专利权人 华中师范大学;

    申请/专利号CN202210469691.4

  • 申请日2022-04-28

  • 分类号G06F40/289;G06F40/30;G06F16/35;G06N3/08;

  • 代理机构武汉科皓知识产权代理事务所(特殊普通合伙);

  • 代理人罗飞

  • 地址 430079 湖北省武汉市洪山区珞瑜路152号

  • 入库时间 2023-06-19 16:08:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-29

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及自然语言处理技术领域,尤其涉及一种自然语言文本和数学语言文本的混合词嵌入方法。

背景技术

数学文本是指包含数学表达式的自然语言文本,具有多义性和多态性的特征,广泛出现于STEM学科和高等教育中。自然语言文本具有线性结构特征,而数学表达式具有树形结构特征,这种混合文本的词嵌入表达对数学文本相关领域具有至关重要的作用。传统的词嵌入技术适合处理具有线性特征的文本,难以处理具有树形结构特征的数学表达式。

数学表达式可以表达为两种最重要的树形结构,一种是符号布局树(SymbolLayer Tree,SLT),这种表示是根据表达式的书写线构建的,具有数学表达式外观信息;另一种是运算符树(Operator Tree,OPT),这种表示是根据表达式中的运算符层次结构构建的,具有数学表达式语义信息。2021年,北京大学的Peng等提出基于BERT的数学表达式预训练模型MathBERT,可以获得混合文本的词嵌入表达。作者将数学表达式的LaTeX序列,OPT树中序遍历序列,上下文文本序列作为BERT模型输入,并使用关注度掩蔽矩阵提取OPT树的结构信息,使树形结构中相邻节点在掩蔽矩阵中才互相可见。最后在掩蔽语言模型和上下文预测任务上增加掩蔽结构预测任务训练BERT模型。但此方法人为限制了关注度计算范围,难以获取远距离依赖的词嵌入信息。同年,宾夕法尼亚大学的Shen等,提出了面向数学教育的MathBERT模型,创新的使用自动打分任务和认知追踪预测任务对BERT进行微调。但作者用数学文本的简单线性序列作为输入,忽略了数学表达式的树形结构特征,使词嵌入缺乏数学语义信息。

发明内容

针对数学文本广泛的、依赖于上下文的多义性和多态性特征,以及现有方法难以提取远距离依赖的数学表达式语义关系,从而导致的词嵌入表示不够全面和准确的技术问题,本发明根据数学结构的位置表达原理,以及自然语言和数学语言混合文本的结构特点,对具有树形结构的数学表达式进行位置编码,并将具有线性序列特征的文本和具有树形结构特征的数学表达式统一位置编码,通过预训练模型在数学语言处理任务下的精细调整,进而获得自然语言和数学语言混合文本的词嵌入表达。

为了达到上述目的,本发明提供了一种自然语言文本和数学语言文本的混合词嵌入方法,包括:

S1:对包含自然语言文本和数学语言文本的学习资源进行预处理,得到数学资源数据集,其中,数学语言文本为具有树形结构的数学表达式,自然语言文本为具有线性序列特征的上下文;

S2:对具有树形结构的数学表达式采用基于分支的位置编码方式进行绝对位置编码,并根据绝对位置编码结果计算树形结构中两个节点的相对位置编码;

S3:对具有线性序列特征的上下文采用负整数位置编码,并使用补码表示,然后将树形结构的根节点作为线性序列的首节点,实现数学表达式和上下文的统一位置编码,再根据统一位置编码计算树形结构和线性序列中任意两个节点的相对位置编码;

S4:将步骤S1得到的数学资源数据集输入BERT预训练模型,其中,BERT预训练模型具有位置编码模块和注意力模块,将步骤S3中得到的统一位置编码输入位置编码模块、将步骤S3计算出的树形结构和线性序列中任意两个节点的相对位置编码送入BERT预训练模型的注意力模块进行训练,采用掩蔽语言模型和下句预测两个标准预训任务对数学资源进行预训练,得到训练好的词嵌入模型;

S5:利用训练好的词嵌入模型对自然语言文本和数学语言文本进行处理,得到最终混合词嵌入表达。

在一种实施方式中,步骤S1对包含自然语言文本和数学语言文本的学习资源进行预处理包括:

对将包含自然语言文本和数学语言文本的学习资源处理为符号序列,其中,数学表达式为LaTeX格式,数学资源数据集为数学资源集合,表示为L={L

在一种实施方式中,对将包含自然语言文本和数学语言文本的学习资源处理为符号序列,包括:

利用im2markup分词工具LaTeX格式的数学表达式进行分词,得到数学表达式分词结果的符号序列,利用TangenS工具,将LaTeX格式的数学表达式转化为运算符OPT树,对OPT树进行深度优先遍历,得到数学表达式树形结构遍历结果的符号序列,其中,第i个数学资源的第j个数学表达式,表示为

根据自然语言和数学表达式的符号表达形式得到每个数学资源的表达,其中第i个数学资源,表示为:

N

当数学表达式M

在一种实施方式中,S2在进行绝对位置编码时,引入位移操作,数学表达式为N叉树,定义根节点为

S2.1:对所有分支的子节点用one hot编码表示,one hot编码共有N个比特位,对于第r个分支的子节点,则one hot编码从右往左的第r个比特位为1,其余比特位为0;S2.2:将父节点的位置编码左移N位后加上该分支子节点的one hot编码,则为该分支节点的最终绝对位置编码,最终表达式树中任意节点表示为

其中,PE表示相对位置计算函数,T表示tree,

在一种实施方式中,步骤S3包括:

对于具有线性序列特征的自然语言文本,进行相对位置编码,其中,单词之间的相对位置定义为绝对位置的差值,表示为

将树形结构的根节点作为线性序列的首节点,实现两种结构的统一位置编码,其中,统一位置编码中相对位置的计算如下所示:

其中,

在一种实施方式中,在将树形结构和线性序列中任意两个节点的相对位置编码送入BERT预训练模型的注意力模块进行训练时,相对位置编码的作用表达式如下:

其中,

在一种实施方式中,最终混合词嵌入表达的计算方式为:

其中,

本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:

本发明提供的一种自然语言文本和数学语言文本的混合词嵌入方法,包括:对混合文本进行识别和预处理,得到由文本和数学表达式组成的数学资源数据集;对具有树形结构的数学表达式进行绝对位置编码,并根据绝对位置编码结果计算相对位置编码,保持树形结构的相对位置平移不变;对具有线性结构特征的文本和具有树形结构特征的数学表达式进行统一位置编码;将相对位置编码送入预训练模型的注意力模块,采用掩蔽语言模型和下句预测两个标准预训练任务对数学资源进行预训练,预训练完成后,每个符号均可得到富含上下文信息的嵌入向量表示,从而使得最终的词嵌入表达包含的信息更丰富,表达更准确。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的自然语言文本和数学语言文本的混合词嵌入方法的流程图;

图2是本发明实施例中词嵌入方法的数据预处理流程图;

图3是本发明实施例中的数学表达式树示意图;

图4是本发明实施例中的树形位置编码示意图;

图5是本发明实施例中的统一位置编码示意图;

图6是本发明实施例中的预训练模型示意图。

具体实施方式

本发明提供了一种自然语言文本和数学语言文本的混合词嵌入方法,包括:对混合文本进行识别和预处理,得到由文本和数学表达式组成的数学资源数据集;对具有树形结构的数学表达式进行位置编码,保持树形结构的相对位置平移不变;对具有线性结构特征的文本和具有树形结构特征的数学表达式进行统一位置编码;将相对位置编码送入预训练模型的注意力模块,采用掩蔽语言模型和下句预测两个标准预训练任务对数学资源进行预训练,预训练完成后,每个符号均可得到富含上下文信息的嵌入向量表示。

与现有技术相比,本发明对数学表达式的树形结构进行了位置编码,保证了树形结构的位置编码具有相对位置平移不变性,并将具有线性结构特征的文本和具有树形结构特征的数学表达式统一位置编码,并用于BERT预训练模型,进而提取词嵌入表达。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种自然语言文本和数学语言文本的混合词嵌入方法,包括:

S1:对包含自然语言文本和数学语言文本的学习资源进行预处理,得到数学资源数据集,其中,数学语言文本为具有树形结构的数学表达式,自然语言文本为具有线性序列特征的上下文;

S2:对具有树形结构的数学表达式采用基于分支的位置编码方式进行绝对位置编码,并根据绝对位置编码结果计算树形结构中两个节点的相对位置编码;

S3:对具有线性序列特征的上下文采用负整数位置编码,并使用补码表示,然后将树形结构的根节点作为线性序列的首节点,实现数学表达式和上下文的统一位置编码,再根据统一位置编码计算树形结构和线性序列中任意两个节点的相对位置编码;

S4:将步骤S1得到的数学资源数据集输入BERT预训练模型,其中,BERT预训练模型具有位置编码模块和注意力模块,步骤S3中得到的统一位置编码输入位置编码模块、将步骤S3计算出的树形结构和线性序列中任意两个节点的相对位置编码送入BERT预训练模型的注意力模块进行训练,采用掩蔽语言模型和下句预测两个标准预训任务对数学资源进行预训练,得到训练好的词嵌入模型;

S5:利用训练好的词嵌入模型对自然语言文本和数学语言文本进行处理,得到最终混合词嵌入表达。

请参见图1,为本发明实施例提供的自然语言文本和数学语言文本的混合词嵌入方法的流程图。

具体来说,S1是学习资源的预处理,S2是对具有树形结构的数学表达式的编码,S3是对上下文进行位置编码,并实现数学表达式与上下文的统一位置编码,S4是利用统一位置编码对BERT预训练模型进行训练,S5是对训练好的词嵌入模型的应用。

在一种实施方式中,步骤S1对包含自然语言文本和数学语言文本的学习资源进行预处理包括:

对将包含自然语言文本和数学语言文本的学习资源处理为符号序列,其中,数学表达式为LaTeX格式,数学资源数据集为数学资源集合,表示为L={L

N’表示数学资源的总数量。

在一种实施方式中,对将包含自然语言文本和数学语言文本的学习资源处理为符号序列,包括:

利用im2markup分词工具LaTeX格式的数学表达式进行分词,得到数学表达式分词结果符号序列,利用TangenS工具,将LaTeX格式的数学表达式转化为运算符OPT树,对OPT树进行深度优先遍历,得到数学表达式树形结构遍历结果符号序列,其中,第i个数学资源的第j个数学表达式,表示为

根据自然语言和数学表达式的符号表达形式得到每个数学资源的表达,其中第i个数学资源,表示为:

N

当数学表达式M

具体实施过程中,如图2所示,对数据进行预处理得到数学资源数据集。将包含自然语言和数学语言的学习资源通过Mathpix OCR接口处理为符号序列,得到数学资源集合,其中学习资源包含了解答过程。Mathpix OCR接口可以从图片提取文本和数学表达式,并将数学公式转换为LaTeX格式。用L={L

对每个数学资源的数学表达式用im2markup分词工具将LaTeX格式的数学表达式分词得到数学表达式符号序列。用TangenS工具,将LaTeX格式的数学表达式转化为运算符OPT树,数学表达式的运算符OPT树如图3所示。对OPT树进行深度优先遍历,得到数学表达式符号序列。由此,一个数学表达式,可以得到两种符号序列,对于第i个数学资源的第j个数学表达式,可表示为:

每个数学资源由文本和数学表达式组成,其中,文本为数学表达式的上下文,上下文可能含有对数学表达式的描述和解释信息,是数学符号和自然语言之间语义关联的关键。由于输入数据的长度有限,所以需要限定数学表达式的上下文。定义数学表达式M

综上,对于第i个数学资源,可表示为:

在学习资源中,数学表达式M

最后所有学习资源按照上述过程处理,构成预训练模型数据集

在一种实施方式中,S2在进行绝对位置编码时,引入位移操作,数学表达式为N叉树,定义根节点为

S2.1:对所有分支的子节点用one hot编码表示,one hot编码共有N个比特位,对于第r个分支的子节点,则one hot编码从右往左的第r个比特位为1,其余比特位为0;

S2.2:将父节点的位置编码左移N位后加上该分支子节点的one hot编码,则为该分支节点的最终绝对位置编码,最终表达式树中任意节点表示为

其中,PE表示相对位置计算函数,T表示tree,

具体实施过程中,步骤S2对具有树形结构的数学表达式进行位置编码,并保证树形结构的位置编码具有相对位置平移不变性。相对位置能够反映词与词之间的关系,在线性序列中,相对位置定义为绝对位置的差值,相对位置平移不变性是指不论单词的绝对位置如何,只要其相对位置相同,位置偏移量就应当相同。相对位置不变保证了不论单词在何处,总能与固定相对位置的单词发生语义关联,使得训练过程可以获得语义关系。

为保证树形结构的位置编码具有相对位置平移不变性,本发明采用基于分支的编码方式,在计算相对位置时,引入位移操作。

如图4所示,假设数学表达式树为3叉树,定义根节点为(000),后续任意一个子节点,若为第一分支子节点,则将根节点左移3位后加上one hot编码(001),最终该分支子节点表示为(000001),同理第2分支子节点为(000010),第3分支子节点为(000100)。

表达式树中任意节点可表示为

在一种实施方式中,步骤S3包括:

对于具有线性序列特征的自然语言文本,进行相对位置编码,其中,单词之间的相对位置定义为绝对位置的差值,表示为

将树形结构的根节点作为线性序列的首节点,实现两种结构的统一位置编码,其中,统一位置编码中相对位置的计算如下所示:

其中,

具体来说,步骤S3将上下文自然语言的线性序列与S2的编码模型进行融合。对于具有线性序列的自然语言文本,单词之间的相对位置定义为绝对位置的差值,可表示为

为了将线性序列与树形结构统一位置编码,用负整数编码线性序列的位置,并用补码表示,这样所有自然语言单词的位置编码最高位均为1,树形结构节点的位置编码最高位均为0。其中线性序列的位置编码的长度为L

在一种实施方式中,在将树形结构和线性序列中任意两个节点的相对位置编码送入BERT预训练模型的注意力模块进行训练时,相对位置编码的作用表达式如下:

其中,

在一种实施方式中,其特征在于,最终混合词嵌入表达的计算方式为:

其中,

具体来说,通过前述步骤,将学习资源转化为数据集

预训练模型调整后,采用掩蔽语言模型(Masked Language Modeling,MLM)和下句预测(Next Sentence Prediction,NSP)两个标准预训练任务获取自然语言文本和数学语言文本的混合词嵌入表达。

在MLM任务中,会随机从三个输入序列中抽取15%的词,在抽取的词中,80%的词被替换为[MASK]标识,10%的词被替换为随机的其他词,10%的词不做改变。MLM任务使用交叉熵作为损失函数,本实施方式中表示为:

在NSP任务中,会随机选取50%的

综上所述,本发明与现有技术相比,对数学表达式的树形结构进行了位置编码,保证了树形结构的位置编码具有相对位置平移不变性,并将具有线性结构特征的文本和具有树形结构特征的数学表达式统一位置编码,并用于BERT预训练模型,进而提取词嵌入表达,使得最终的词嵌入表达包含的信息更丰富,表达更准确。

本发明中所描述的具体实施例仅仅是对本发明精神做举例说明。本发明技术领域的技术人员可以对所描述的具体实施例做各种各样的修改补充或者采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号