一种将LaTex公式转为自然语言的方法及系统技术方案

技术编号:39303907 阅读:7 留言:0更新日期:2023-11-12 15:53
本发明专利技术提出了一种将LaTex公式转为自然语言的方法和系统,属于文本处理技术领域,包括以下步骤:建立符号转换表;所述符号转换表中包括公式符号及对应的自然语言;从目标文本中提取所述待转换LaTex公式;将所述待转换LaTex公式转换为MathML文本;对所述MathML文本进行解析生成公式多叉树;所述公式多叉树中包括不同层级的若干个节点,无子级节点的节点表示所述待转换LaTex公式中的操作数和公式符号,有子级节点的节点表示所述待转换LaTex公式中的函数符号;深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言。式多叉树各节点转换成自然语言。式多叉树各节点转换成自然语言。

【技术实现步骤摘要】
一种将LaTex公式转为自然语言的方法及系统


[0001]本专利技术涉及文本处理
,特别是涉及一种将LaTex公式转为自然语言的方法及系统。

技术介绍

[0002]在目前的教育领域,将教学资料中的文本通过机器发音的应用非常广泛,而随着知识体系的复杂,在某些学科,特别是中小学数理化的教学资料中,逐渐会出现区别于自然语言文本的公式,在业界通常使用LaTex格式对教学资料中的公式进行排版;而现有的机器发音技术仅能够对教学资料中的自然语言文本进行机器发音,而并不能够实现对教学资料中公式的识别。所以要想在这些学科的教学中继续使用机器发音,需要将教学资料中的LaTex公式转换为自然语言文本。

技术实现思路

[0003]本专利技术的目的是提供一种将LaTex公式转为自然语言的方法和系统,实现了将LaTex公式转换为自然语言文本,扩展了机器发音在教育领域中的应用场景。
[0004]为实现上述目的,本专利技术提供了如下方案:
[0005]一种将LaTex公式转为自然语言的方法,包括以下步骤:
[0006]建立符号转换表;所述符号转换表中包括公式符号及对应的自然语言;
[0007]从目标文本中提取待转换LaTex公式;
[0008]将所述待转换LaTex公式转换为MathML文本;
[0009]对所述MathML文本进行解析生成公式多叉树;所述公式多叉树中包括不同层级的若干个节点,无子级节点的节点表示所述待转换LaTex公式中的操作数和公式符号,有子级节点的节点表示所述待转换LaTex公式中的函数符号;
[0010]深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言。
[0011]可选地,所述从目标文本中提取待转换LaTex公式,具体包括:
[0012]识别所述目标文本中的两个公式标记符;
[0013]截取两个所述公式标记符之间的文本,得到所述待转换LaTex公式。
[0014]可选地,所述公式标记符为“$”。
[0015]可选地,所述深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言,具体包括:
[0016]当读取的目标节点为操作数时:
[0017]直接将所述操作数作为自然语言输出;
[0018]当读取的目标节点为公式符号时:
[0019]在所述符号转换表中进行查找,输出所述公式符号对应的自然语言;
[0020]当读取的目标节点为函数符号时:
[0021]根据所述函数符号对所述公式多叉树进行修改;
[0022]深度遍历所述目标节点下级的各个子节点,按照预设规则以及所述符号转换表将所述目标节点下级的各子节点转换成自然语言。
[0023]可选地,所述根据所述函数符号对所述公式多叉树进行修改,具体包括:
[0024]当所述函数符号为分式时,所述目标节点下包括两个子节点:
[0025]将所述目标节点的两个子节点调换顺序,并在两个子节点之间插入一个辅助节点;所述辅助节点在所述符号转换表中对应的自然语言为“分之”。
[0026]可选地,所述根据所述函数符号对所述公式多叉树进行修改,具体包括:
[0027]当所述函数符号为次方时,所述目标节点下包括两个子节点:
[0028]在两个子节点之间插入第一辅助节点,并在第二个子节点之后插入第二辅助节点;所述第一辅助节点在所述符号转换表中对应的自然语言为“的”,所述第二辅助节点在所述符号转换表中对应的自然语言为“次方”。
[0029]可选地,所述根据所述函数符号对所述公式多叉树进行修改,具体包括:
[0030]当所述函数符号为开平方根时,所述目标节点下包括若干个子节点:
[0031]在所述目标节点的第一个子节点之前插入一个辅助节点;所述辅助节点在所述符号转换表中对应的自然语言为“根号下的”。
[0032]可选地,方法还包括:
[0033]当所述公式符号为负号时:
[0034]判断所述目标节点是否为同级节点中第一个节点,若是,使用第一辅助节点替换所述目标节点,否则,使用第二辅助节点替换所述目标节点;所述第一辅助节点在所述符号转换表中对应的自然语言为“负”,所述第二辅助节点在所述符号转换表中对应的自然语言为“减”。
[0035]对应于前述的将LaTex公式转为自然语言的方法,本专利技术还提供了一种将LaTex公式转为自然语言的系统,包括:
[0036]符号转换表建立模块,用于建立符号转换表;所述符号转换表中包括公式符号及对应的自然语言;
[0037]LaTex公式提取模块,用于从目标文本中提取待转换LaTex公式;
[0038]MathML转换模块,用于将所述待转换LaTex公式转换为MathML文本;
[0039]公式多叉树生成模块,用于对所述MathML文本进行解析生成公式多叉树;所述公式多叉树中包括不同层级的若干个节点,无子级节点的节点表示所述待转换LaTex公式中的操作数和公式符号,有子级节点的节点表示所述待转换LaTex公式中的函数符号;
[0040]自然语言转换模块,用于深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言。
[0041]可选地,所述LaTex公式提取模块包括:
[0042]标记符识别单元,用于识别所述目标文本中的两个公式标记符;
[0043]公式截取单元,用于截取两个所述公式标记符之间的文本,得到所述待转换LaTex公式。
[0044]根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:
[0045]本专利技术提供的一种将LaTex公式转为自然语言的方法和系统,包括以下步骤:建立
符号转换表;所述符号转换表中包括公式符号及对应的自然语言;从目标文本中提取所述待转换LaTex公式;将所述待转换LaTex公式转换为MathML文本;对所述MathML文本进行解析生成公式多叉树;所述公式多叉树中包括不同层级的若干个节点,无子级节点的节点表示所述待转换LaTex公式中的操作数和公式符号,有子级节点的节点表示所述待转换LaTex公式中的函数符号;深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言。本专利技术通过从目标文本中提取出待转换的LaTex公式,对其进行解析建立公式多叉树,结合预设规则和预先建立的用于公式符号与自然语言文本转换的符号转换表,深度遍历公式多叉树,对公式多叉树中的每一个节点进行自然语言文本的转换,达到了将LaTex公式转换成自然语言文本的目的,从而实现了对教学资料中的公式识别并进行发音。
附图说明
[0046]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种将LaTex公式转为自然语言的方法,其特征在于,所述方法包括以下步骤:建立符号转换表;所述符号转换表中包括公式符号及对应的自然语言;从目标文本中提取待转换LaTex公式;将所述待转换LaTex公式转换为MathML文本;对所述MathML文本进行解析生成公式多叉树;所述公式多叉树中包括不同层级的若干个节点,无子级节点的节点表示所述待转换LaTex公式中的操作数和公式符号,有子级节点的节点表示所述待转换LaTex公式中的函数符号;深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言。2.根据权利要求1所述的方法,其特征在于,所述从目标文本中提取待转换LaTex公式,具体包括:识别所述目标文本中的两个公式标记符;截取两个所述公式标记符之间的文本,得到所述待转换LaTex公式。3.根据权利要求2所述的方法,其特征在于,所述公式标记符为“$”。4.根据权利要求1所述的方法,其特征在于,所述深度遍历所述公式多叉树中的每一节点,按照预设规则以及所述符号转换表将所述公式多叉树各节点转换成自然语言,具体包括:当读取的目标节点为操作数时:直接将所述操作数作为自然语言输出;当读取的目标节点为公式符号时:在所述符号转换表中进行查找,输出所述公式符号对应的自然语言;当读取的目标节点为函数符号时:根据所述函数符号对所述公式多叉树进行修改;深度遍历所述目标节点下级的各个子节点,按照预设规则以及所述符号转换表将所述目标节点下级的各子节点转换成自然语言。5.根据权利要求4所述的方法,其特征在于,所述根据所述函数符号对所述公式多叉树进行修改,具体包括:当所述函数符号为分式时,所述目标节点下包括两个子节点:将所述目标节点的两个子节点调换顺序,并在两个子节点之间插入一个辅助节点;所述辅助节点在所述符号转换表中对应的自然语言为“分之”。6.根据权利要求4所述的方法,其特征在于,所述根据所述函数符号对所述公式多叉树进行修改,具体包括:当所述函数符号为次方时,所述...

【专利技术属性】
技术研发人员:任亚乐张彦华
申请(专利权)人:西安导学科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1