CN107301163B - 包含公式的文本语义解析方法及装置 - Google Patents
包含公式的文本语义解析方法及装置 Download PDFInfo
- Publication number
- CN107301163B CN107301163B CN201610237536.4A CN201610237536A CN107301163B CN 107301163 B CN107301163 B CN 107301163B CN 201610237536 A CN201610237536 A CN 201610237536A CN 107301163 B CN107301163 B CN 107301163B
- Authority
- CN
- China
- Prior art keywords
- entity
- formula
- mathematical
- text data
- analyzed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种包含公式的文本语义解析方法及装置,该方法包括:预先构建用于描述数学实体之间关系的语义解析模型;接收包含数学公式的待解析文本数据;构建待解析文本数据的数学实体对;提取各数学实体对的语义解析特征;利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。利用本发明,可以对包含公式的文本解析得到准确的语义解析结果。
Description
技术领域
本发明涉及自然语言处理领域,具体涉及一种包含公式的文本语义解析方法及装置。
背景技术
随着互联网的不断普及和互联网技术的迅速发展,传统的教育模式也在逐渐发生改变,信息、在线化、智能化等辅助教学手段正在向传统教育领域渗透,并逐步获得广大老师、家长和学生的认可。对海量题库中试题的深度理解是将在线教育系统推向智能化和个性化所必需的底层核心技术;所述智能化主要指在线教育系统能够实现自动学情诊断,智能组卷等操作;所述个性化主要指在线教育系统能够根据用户的学习情况有针对性的推荐能够提升用户学习水平的学习资源,如试题。因此,对包含公式的文本进行准确的语义解析显得尤为重要,尤其是对试题的语义解析。
现有的试题解析方法一般是直接利用试题的分词结果做简单的变换后,来表达试题的语义,如通过word2vec技术将试题分词的结果向量化,使用试题中每个词的词向量表达试题的语义信息。
由于词向量中每一维仅能够描述词、词共现等浅层相关性,而不能充分表达深层的词义,公式中字符被分词处理后,词向量中的各维仅能表达词的共现关系,无法描述公式内部的逻辑结构,从而导致现有基于词向量的表达方法无法准确描述试题所蕴含的语义信息,同时也无法描述出试题中词与词之间的语义关系。
比如,如下为试题(1)和试题(2)使用词向量表达语义的实例:
(1)已知f(x)=ax2+x+1是定义在(1,+∞)上的增函数,则a的取值范围是?
tokens:已知/w FUN/t QUA/t VARa/t VARx/t NUM/t是/w定义/w在/w INTEVAL/t上/w的/w增函数/w则/w VARa/t的取值/w范围/w是/w
(2)若f(x)=bx2+x+1,x∈(1,+∞),且f(x)单调增,试求b的取值范围?
tokens:若/w FUN/t QUA/t VARa/t VARx/t NUM/t VARx/t INTEVAL且/w FUN/t单调/w增/w,试/w求/w VARb/t的/w取值/w范围/w
其中,tokens表示每个试题的词向量,可以看出不同部分较多,而由试题(1)与试题(2)的题干可以看出,两个试题仅参数不同,语义完全相同,如果使用词向量表达试题的语义信息,则会认为这是两个不同的试题,语义差别较大,这显然不合理。
发明内容
本发明提供一种包含公式的文本语义解析方法及装置,以便对包含公式的文本进行语义解析,能够得到准确的语义解析结果。
为此,本发明提供如下技术方案:
一种包含公式的文本语义解析方法,包括:
预先构建用于描述数学实体之间关系的语义解析模型;
接收包含数学公式的待解析文本数据;
构建待解析文本数据的数学实体对;
提取各数学实体对的语义解析特征;
利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
优选地,所述预先构建用于描述数学实体之间关系的语义解析模型包括:
收集设定数量的包含公式的文本数据;
根据收集的文本数据构建公式实体集合和概念实体集合;
构建数学实体对并标注每个数学实体对之间的关系;
基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征;
根据所述数学实体对的语义解析特征构建所述语义解析模型。
优选地,所述数学实体对包括:公式实体与公式实体之间的实体对、公式实体与概念实体之间的实体对;所述公式实体是指对包含公式的文本进行识别时得到的公式和/或公式字符;所述概念实体是指文本数据中出现的与数学概念相关的描述;所述数学实体之间的关系是指文本数据中数学实体之间的关系。
优选地,所述根据收集的文本数据构建公式实体集合包括:
对收集的文本数据进行公式识别,得到公式和/或公式字符;
将得到的公式和/或公式字符作为公式实体,得到公式实体集合。
优选地,所述根据收集的文本数据构建概念实体集合包括:
对收集的文本数据进行分词,得到各词;
计算各词在所述文本数据中出现的频率;
如果所述频率大于设定的频率阈值,则将对应的词作为概念实体,得到概念实体集合。
优选地,所述数学实体对的语义解析特征包括以下任意一种或多种:
所述数学实体对中两个数学实体的语法树的包含关系、两个数学实体的编辑距离、两个数学实体在文本数据中的位置关系、各数学实体的类型、各数学实体前后一个或多个词的词面信息。
优选地,所述构建待解析文本数据的数学实体对包括:
对待解析文本数据进行分词,根据分词结果确定所述待解析文本数据中的概念实体;
识别所述待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;
将所述待解析文本数据中的概念实体和公式实体组成数学实体对。
一种包含公式的文本语义解析装置,包括:
模型构建模块,用于预先构建用于描述数学实体之间关系的语义解析模型;
接收模块,用于接收包含数学公式的待解析文本数据;
数学实体对构建模块,用于构建待解析文本数据的数学实体对;
特征提取模块,用于提取各数学实体对的语义解析特征;
解析模块,用于利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
优选地,所述模型构建模块包括:
数据收集单元,用于收集设定数量的包含公式的文本数据;
公式实体集合构建单元,用于根据收集的文本数据构建公式实体集合;
概念实体集合构建单元,用于根据收集的文本数据构建概念实体集合;
数学实体对构建单元,用于构建数学实体对并标注每个数学实体对之间的关系;
特征提取单元,用于基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征;
模型构建单元,用于根据所述数学实体对的语义解析特征构建所述语义解析模型。
优选地,所述公式实体集合构建单元包括:
公式识别子单元,用于对所述数据收集单元收集的文本数据进行公式识别,得到公式和/或公式字符;
公式实体集合生成子单元,用于将所述公式识别子单元得到的公式和/或公式字符作为公式实体,得到公式实体集合。
优选地,所述概念实体集合构建单元包括:
分词子单元,用于对所述数据收集单元收集的文本数据进行分词,得到各词;
频率计算子单元,用于计算各词在所述文本数据中出现的频率;
概念实体集合生成子单元,用于在所述频率大于设定的频率阈值时,将对应的词作为概念实体,得到概念实体集合。
优选地,所述数学实体对构建模块包括:
概念实体确定单元,用于对待解析文本数据进行分词,根据分词结果确定所述待解析文本数据中的概念实体;
公式实体确定单元,用于识别所述待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;
组合单元,用于将所述待解析文本数据中的概念实体和公式实体组成数学实体对。
本发明实施例提供的包含公式的文本语义解析方法及装置,通过构建待解析文本数据的数学实体对,利用数学实体对之间的关系描述待解析文本数据的语义信息,所述数学实体对之间的关系根据数学实体对的语义解析特征及语义解析模型确定,从而可以准确的对包含公式的文本数据进行语义解析,得到准确的语义解析结果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本发明实施例中数学实体之间的关系示意图;
图2是本发明实施例中构建语义解析模型的流程图;
图3是本发明实施例中构建的数学公式的语法树的示意图;
图4是本发明实施例包含公式的文本语义解析方法的流程图;
图5是本发明实施例包含公式的文本语义解析装置的一种结构示意图;
图6是本发明实施例中模型构建模块的一种结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例的方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
本发明实施例提供一种包含公式的文本语义解析方法及装置,预先构建用于描述数学实体之间关系的语义解析模型,利用该模型对包含数学公式的待解析文本数据进行解析,得到解析结果。具体解析时,首先构建待解析文本数据的数学实体对,并提取各数学实体对的语义解析特征;然后利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
所述语义解析模型用来描述数学实体之间的关系,所述数学实体包含两种实体,即公式实体与概念实体;所述公式实体主要指对包含公式的文本(比如试题)进行识别时得到的公式和公式字符,如f(x);所述概念实体主要指文本数据中出现的与数学概念相关的描述,如概念实体为“增函数”,相同数学概念的不同描述构成该概念实体的同义描述列表,如单调增函数、单调递增函数都是增函数的同义描述,从而可以组成同义描述列表。
所述数学实体之间的关系指文本数据中数学实体之间的关系,所述关系可以分为两种:公式实体与公式实体之间的关系,如“定义域”,公式实体与概念实体之间的关系,如“单调性”。数学实体之间的关系使用三元组表示为<公式实体,实体关系,公式实体>或<公式实体,实体关系,概念实体>,如图1为数学实体之间的关系示意图。
为了进一步对数学实体进行清楚说明,举例如下:
例如文本数据中的试题为:“已知f(x)=ax^{2}+x+1是定义在(1,+∞)的增函数,则a的取值范围是_____”,则其中的“f(x)=ax^{2}+x+1”、“(1,+∞)”以及“a”为公式实体;“增函数”、“TARGET”两个数学概念词汇作为概念实体,TARGET表示求解目标,即题干中的“_____”。
公式实体“f(x)=ax^{2}+x+1”与公式实体“(1,+∞)”之间的关系为“定义域”,可以表示为<f(x)=ax^{2}+x+1,function:xDomain,(1,+∞)>;
公式实体“f(x)=ax^{2}+x+1”与概念实体“增函数”之间的关系为“单调性”,可以表示为<f(x)=ax^{2}+x+1,function:mono,增函数>
在本发明实施例中,预先构建用于描述上述数学实体之间关系的语义解析模型,利用该模型对包含数学公式的待解析文本数据进行解析,得到解析结果。
所述语义解析模型的具体构建流程如图2所示,包括以下步骤:
步骤201,收集包含公式的文本数据。
步骤202,根据收集的文本数据构建公式实体集合和概念实体集合。
在构建公式实体集合时,需要首先识别出文本数据中的公式和/或公式字符,将识别出的公式和/或公式字符作为公式实体,从而得到公式实体集合。比如,可以先建立一个空的公式实体集合,在每得到一个公式或公式字符后,即检查该公式实体集合中是否已有该公式或公式字符,如果没有,则将其作为公式实体放入该公式实体集合中;或者先识别出所有文本数据中的公式和公式字符,然后去除其中重复的公式和公式字符,将剩余的公式和公式字符作为公式实体,得到公式实体集合。需要说明的是,公式和公式字符的识别可以采用现有技术,对此本发明实施例不做限定。
在构建概念实体集合时,需要首先对收集的文本数据进行分词,计算每个词在这些文本数据中出现的频率,如果该词出现的频率大于设定的频率阈值,则将该词作为概念实体,得到概念实体集合。
进一步地,还可以将概念实体集合中同义的概念实体加入同一个同义描述列表中,得到不同概念实体的同义描述列表。对于每一个同义描述列表,可以根据该同义描述列表中各概念实体的描述确定该同义描述列表对应的概念实体,从而得到概念实体集合及概念实体集合中每个概念实体对应的同义描述列表。
具体可以通过计算不同概念实体之间的相似度确定两个概念实体是否为同义描述,当所述相似度大于预先设定的相似度阈值时,可以认为两个概念实体为同义描述,则将这两个概念实体加入同一个同义描述列表中,如“最大值”与“极大值”可以加入同一同义描述列表中。
需要说明的是,为了进一步减少一些在包含公式的文本中出现频率较高的停止词(即无意义的词,如“的”)对后续模型训练过程的干扰,在进行分词后,计算每个词在这些文本数据中出现的频率之前,可以先去除这些干扰词,再进行频率的计算。
另外,需要说明的是,在实际应用中,可能会出现以下情况:加入到同一个同义描述列表中的一个或多个概念实体与该列表中的其它概念实体实际上不具有同义描述,因此,为了进一步保证后续语义解析的准确性,可以由人工或自动从同义描述列表中去除这部分概念实体,比如通过计算同一个同义描述列表中的一个概念实体与该列表中的其它概念实体的相似度来确定其是否为真正的同义描述。
如下为概念实体与同义描述列表的实例:
概念实体:增函数;
同义描述列表:递增函数、单调增函数、单调递增函数。
步骤203,构建数学实体对并标注每个数学实体对之间的关系。
具体地,将所述公式实体集合与所述概念实体集合组合成数学实体对,并标注每个数学实体对之间的关系,比如,可以由领域专家根据文本数据的内容来标注。所述数学实体对包含公式实体与公式实体之间的实体对、公式实体与概念实体之间的实体对。
每个数学实体对及其关系具体可以使用三元组表示,即<公式实体,实体关系,公式实体>、<公式实体,实体关系,概念实体>。
例如:文本数据(题干):“已知f(x)=ax^{2}+x+1是定义在(1,+∞)的增函数,则a的取值范围是_____”,则构建的数学实体对及关系三元组如表1所示,其中“NULL”表示无,即数学实体之间没有关系。
表1
步骤204,基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征。
由于数学实体对之间的关系由每个数学实体周围的上下文及数学实体所在公式的内容决定,并且在文本数据中,离数学实体越远的词,对数学实体之间的关系影响越小,因此,在本发明实施例中,对每个数学实体对提取的语义解析特征如下:
每个数学实体对使用<E,F>表示,其中E和F表示数学实体,其中,E表示公式实体,F表示公式实体或概念实体,具体语义解析特征可以包括以下任意一种或多种组合:
1)两个数学实体的语法树的包含关系
每个公式实体对应一个语法树,每个语法树对应一个或多个公式实体。在实际应用中,每个公式和公式字符的语法树可以根据预先定义的方法集合构建得到。
所述文法集合可以通过对各种不同类型的数学公式的表达形式进行抽象得到。比如,所述文法由“->”左右两部分组成,“->”左边为数学公式的类型,“->”右边为满足该公式类型的数学表达式的具体形式。
在构建语法树时,收集大量包含数学公式的文本数据,作为语料库,然后根据所述语料库中各数学公式所在的上下文以及所述文法集合,构建各公式的语法树。
所述语法树中的节点由相应文法中的终结符和非终结符表示。所述终结符一般为根据词法分析器直接得到的公式字符,如所有英文字符、公式固定字符串等,所述公式固定字符串如cos,sqrt等,终结符作为语法树的叶子节点。所述非终结符一般为根据终结符组合后形成的公式类型,如function,add等,非终结符作为语法树的非叶子节点,所述终结符与非终结符与每条文法的公式类型或子类型相对应。所述语法树的边表示父节点和子节点之间的逻辑关系。
数学实体E的语法树是否是数学实体F的语法树的子树,使用subtree(E,F)表示,如果是,subtree(E,F)=1;否则,subtree(E,F)=0;如果F为概念实体,该特征取值直接为0,即subtree(E,F)=0。
数学实体F的语法树是否是数学实体E的语法树的子树,使用subtree(F,E)表示,如果是,subtree(F,E)=1;否则,subtree(F,E)=0;如果F为概念实体,该特征取值直接为0,即subtree(F,E)=0。
2)两个数学实体的编辑距离
即数学实体E和数学实体F的编辑距离是多少,使用edit(E,F)表示;
所述编辑距离指由数学实体E转换为数学实体F需要的最少编辑操作次数,所述编辑操作为插入、删除、替换,具体计算方法与现有技术相同,在此不再详述。
3)两个数学实体在文本数据中的位置关系
即数学实体E和数学实体F在文本数据中的位置关系,使用order(E,F)表示;如果数学实体E在数学实体F的前面,order(E,F)=1;否则,order(E,F)=0。
4)数学实体的类型
所述类型指数学实体的语法树根节点的类型,所述根节点的类型可以在根据文法规则构建语法树时,根据文法的类型得到。
数学实体E的类型和数学实体F的类型分别使用subtype(E)、subtype(F)表示;如数学实体E的语法树根节点为函数类型,则subtype(E)=“fun”,“fun”表示函数类型;如数学实体F的语法树根节点为区间类型,则subtype(F)=“inteval”,“inteval”表示区间类型。如果数学实体F为概念实体,则E的类型使用统一符号表示,如“concept”。
5)数学实体前后一个或多个词的词面信息
数学实体E的前后n个词的词面信息,使用T(E,n)表示;数学实体F的前后n个词的词面信息,使用T(F,n)表示。
例如:对上例中公式实体“f(x)=ax^{2}+x+1”与公式实体“(1,+∞)”之间数学实体对提取的语义解析特征如下所示:
a)subtree(E,F)=0,E的公式语法树不是F的公式语法树的子树;
b)subtree(F,E)=0,F的公式语法树不是E的公式语法树的子树;
c)edit(E,F)=12,E和F之间的文本编辑距离是12;
d)order(E,F)=1,E在文本数据中的位置位于F之前;
e)subtype(E)=“fun”,E的公式类型是函数;
f)subtype(F)=“inteval”,F的公式类型是集合;
g)T(E,3)=“NULL NULL已知是定义在”,“NULL”表示无,即没有词面信息;
h)T(F,3)=“已知是定义上增函数”。
步骤205,根据所述数学实体对的语义解析特征构建所述语义解析模型。
所述语义解析模型可以采用模式识别中的常用分类模型,如支持向量机模型、神经网络模型等,将数学实体之间的关系作为分类标签,利用提取的每个数学实体对的语义解析特征来构建语义解析模型。具体模型训练时,将数学实体对的语义解析特征作为模型的输入,将该数学实体对的关系作为分类结果训练模型参数,具体训练方法可以采用现有技术,在此不再详述。
如图4所示,是本发明实施例包含公式的文本语义解析方法的流程图,包括以下步骤:
步骤401,预先构建用于描述数学实体之间关系的语义解析模型。
所述语义解析模型用来描述数学实体对之间的关系,根据数学实体对之间的关系可以抽取出文本数据的语义。
步骤402,接收包含数学公式的待解析文本数据。
所述文本数据包含数学公式,如数学试题、数学资料相关文本数据等。
步骤403,构建待解析文本数据的数学实体对。
具体构建时,首先对待解析文本数据进行分词,根据分词结果确定待解析文本数据中的概念实体(比如通过查找前面所述的概念实体集合、或者查找概念实体集合及相应同义描述列表来确定);随后识别当前待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;最后将所述概念实体和公式实体组成数学实体对,所述数学实体对包括两种类型,即<公式实体,实体关系,公式实体>和<公式实体,实体关系,概念实体>。
步骤404,提取各数学实体对的语义解析特征。
提取每个数学实体对的语义解析特征,所述语义解析特征主要描述数学实体对中数学实体在文本数据中的相关信息,所述语义解析特征可以包括以下任意一种或多种:所述数学实体对中两个数学实体的语法树的包含关系、两个数学实体的编辑距离、两个数学实体在文本数据中的位置关系、各数学实体的类型、各数学实体前后一个或多个词的词面信息。
需要说明的是,在实际应用中,提取待解析文本数据的数学实体对中两个数学实体的语法树的包含关系时,其中的数学实体的语法树可以通过人工(如前面在步骤204中介绍的语法树的构建方式)或自动方式得到。
比如,通过预先构建概率上下文无法文本模型对识别得到的公式字符进行解析,得到相应的语法树。进行公式解析时,自左向右扫描每个公式字符,采用动态规划方法寻找公式字符之间对应的所有文法,并且对所述文法进行规约,根据规约后的文法及规约路径得到相应的语法树。
需要说明的是,在文法规约时,如果存在多条规约路径,扫描文法的规约路径可以得到多个候选语法树,则可以选择概率最大的语法树作为相应公式或公式字符的语法树,所述语法树的概率为树中所有文法出现概率之积。当然,如果只有一条规约路径,则将根据该规约路径得到的语法树作为相应公式或公式字符的语法树。
步骤405,利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
将待解析文本数据中每个数学实体对的语义解析特征作为语义解析模型的输入,对待解析文本数据中数学实体对的关系进行预测,具体预测结果使用概率的形式表示,将概率最大时对应的关系作为当前数学实体对中数学实体之间的关系,将所述待解析文本数据中数学实体对及预测得到的数学实体之间的关系作为当前待解析文本解析得到的语义信息,具体可以使用关系三元组的形式表示,即<公式实体,实体关系,公式实体>或<公式实体,实体关系,概念实体>。
如下为待解析文本语义解析的实例:
构建的数学实体对如下:
1)<f(x),偶函数>
2)<f(x),R>
3)<f(x),xf(x+1)=(x+1)f(x)>
4)<f(x),不恒为零>
6)<x(f(x+1)=(x+1)f(x),R>
7)<xf(x+1)=(x+1)f(x),偶函数>
8)<xf(x+1)=(x+1)f(x),不恒为零>
以<f(x),R>为例,抽取的语义解析特征具体如下:
令E=f(x),F=R,语义解析特征如下:
1)subtree(E,F)=0,E的公式语法树不是F的公式语法树的子树;
2)subtree(F,E)=0,F的公式语法树不是E的公式语法树的子树;
3)edit(E,F)=4,E和F之间的文本编辑距离是4;
4)order(E,F)=1,E在题干中的位置位于F之前;
5)subtype(E)=“fun”,E的公式类型是函数;
6)subtype(F)=“set”,F的公式类型是集合;
7)T(E,3)=“NULL已知函数是定义在”,E的上下文词面信息,NULL表示空;
8)T(F,3)=“定义在实数集上不恒为零偶函数”,F的上下文词面信息。
根据所述语义解析特征及语义解析模型对待解析文本数据的数学实体对之间的关系进行预测,得到待解析文本数据的语义解析结果,使用关系三元组表示如下:
1)<f(x),function:parity,偶函数>;
2)<f(x),function:xDomain,R>;
3)<f(x),function:constraint,xf(x+1)=(x+1)f(x)>;
4)<f(x),function:constraint,不恒为零>;
其余数学实体对之间的关系为NULL,未列出,NULL表示空,即没有关系。
从上述语义解析结果中可以得到的信息如下:
f(x)的奇偶性(function:parity)是偶函数;
f(x)的定义域(function:xDomain)是实数集R;
f(x)(x)满足约束条件(function:constraint)是xf(x+1)=(x+1)f(x);
f(x)满足约束条件(function:constraint)不恒为零;
本发明实施例提供的包含公式的文本语义解析方法,通过构建待解析文本数据的数学实体对,利用数学实体对之间的关系描述待解析文本数据的语义信息,所述数学实体对之间的关系根据数学实体对的语义解析特征及语义解析模型确定,从而可以准确的对包含公式的文本数据进行语义解析,得到准确的语义解析结果。
相应地,本发明实施例还提供一种包含公式的文本语义解析装置,如图5所示,是该装置的一种结构示意图,包括以下各模块:
模型构建模块501,用于预先构建用于描述数学实体之间关系的语义解析模型;
接收模块502,用于接收包含数学公式的待解析文本数据;
数学实体对构建模块503,用于构建待解析文本数据的数学实体对;
特征提取模块504,用于提取各数学实体对的语义解析特征;
解析模块505,用于利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。具体地,将待解析文本数据中每个数学实体对的语义解析特征作为语义解析模型的输入,对待解析文本数据中数学实体对的关系进行预测,具体预测结果使用概率的形式表示,将概率最大时对应的关系作为当前数学实体对中数学实体之间的关系,将所述待解析文本数据中数学实体对及预测得到的数学实体之间的关系作为当前待解析文本解析得到的语义信息,具体可以使用关系三元组的形式表示,即<公式实体,实体关系,公式实体>或<公式实体,实体关系,概念实体>。
上述数学实体对构建模块503包括:
概念实体确定单元,用于对待解析文本数据进行分词,根据分词结果确定所述待解析文本数据中的概念实体;
公式实体确定单元,用于识别所述待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;
组合单元,用于将所述待解析文本数据中的概念实体和公式实体组成数学实体对。
如图6所示,是本发明实施例中模型构建模块的一种结构示意图。
在该实施例中,所述模型构建模块包括:
数据收集单元601,用于收集设定数量的包含公式的文本数据;
公式实体集合构建单元602,用于根据收集的文本数据构建公式实体集合;
概念实体集合构建单元603,用于根据收集的文本数据构建概念实体集合;
数学实体对构建单元604,用于构建数学实体对并标注每个数学实体对之间的关系;
特征提取单元605,用于基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征;
模型构建单元606,用于根据所述数学实体对的语义解析特征构建所述语义解析模型。
上述公式实体集合构建单元602可以对包含公式的文本数据进行公式识别,得到其中的公式和/或公式字符,进而得到公式实体集合,具体可以包括以下各子单元:
公式识别子单元,用于对所述数据收集单元收集的文本数据进行公式识别,得到公式和/或公式字符;
公式实体集合生成子单元,用于将所述公式识别子单元得到的公式和/或公式字符作为公式实体,得到公式实体集合。
上述概念实体集合构建单元603可以对包含公式的文本数据进行分词,根据各词在这些文本数据中出现的频率确定其是否为概念实体,进而得到概念实体集合,具体可以包括以下各子单元:
分词子单元,用于对所述数据收集单元收集的文本数据进行分词,得到各词;
频率计算子单元,用于计算各词在所述文本数据中出现的频率;
概念实体集合生成子单元,用于在所述频率大于设定的频率阈值时,将对应的词作为概念实体,得到概念实体集合。
本发明实施例提供的包含公式的文本语义解析装置,通过构建待解析文本数据的数学实体对,利用数学实体对之间的关系描述待解析文本数据的语义信息,所述数学实体对之间的关系根据数学实体对的语义解析特征及语义解析模型确定,从而可以准确的对包含公式的文本数据进行语义解析,得到准确的语义解析结果。
本发明实施例提供的包含公式的文本语义解析方法及装置,主要应用于教育领域的个性化学习、学情诊断或自动答题等方向,如个性化学习中,进行个性化试题的推荐时,需要通过分析试题的语义,判断试题考查了哪些知识点,结合用户的学习情况进行试题推荐。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本发明实施例进行了详细介绍,本文中应用了具体实施方式对本发明进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及装置;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种包含公式的文本语义解析方法,其特征在于,包括:
预先构建用于描述数学实体之间关系的语义解析模型;
接收包含数学公式的待解析文本数据;
构建待解析文本数据的多个数学实体对;
提取各数学实体对的语义解析特征;
利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
2.根据权利要求1所述的方法,其特征在于,所述预先构建用于描述数学实体之间关系的语义解析模型包括:
收集设定数量的包含公式的文本数据;
根据收集的文本数据构建公式实体集合和概念实体集合;
构建数学实体对并标注每个数学实体对之间的关系;
基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征;
根据所述数学实体对的语义解析特征构建所述语义解析模型。
3.根据权利要求2所述的方法,其特征在于,所述数学实体对包括:公式实体与公式实体之间的实体对、公式实体与概念实体之间的实体对;所述公式实体是指对包含公式的文本进行识别时得到的公式和/或公式字符;所述概念实体是指文本数据中出现的与数学概念相关的描述;所述数学实体之间的关系是指文本数据中数学实体之间的关系。
4.根据权利要求2所述的方法,其特征在于,所述根据收集的文本数据构建公式实体集合包括:
对收集的文本数据进行公式识别,得到公式和/或公式字符;
将得到的公式和/或公式字符作为公式实体,得到公式实体集合。
5.根据权利要求2所述的方法,其特征在于,所述根据收集的文本数据构建概念实体集合包括:
对收集的文本数据进行分词,得到各词;
计算各词在所述文本数据中出现的频率;
如果所述频率大于设定的频率阈值,则将对应的词作为概念实体,得到概念实体集合。
6.根据权利要求2所述的方法,其特征在于,所述数学实体对的语义解析特征包括以下任意一种或多种:
所述数学实体对中两个数学实体的语法树的包含关系、两个数学实体的编辑距离、两个数学实体在文本数据中的位置关系、各数学实体的类型、各数学实体前后一个或多个词的词面信息。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述构建待解析文本数据的数学实体对包括:
对待解析文本数据进行分词,根据分词结果确定所述待解析文本数据中的概念实体;
识别所述待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;
将所述待解析文本数据中的概念实体和公式实体组成数学实体对。
8.一种包含公式的文本语义解析装置,其特征在于,包括:
模型构建模块,用于预先构建用于描述数学实体之间关系的语义解析模型;
接收模块,用于接收包含数学公式的待解析文本数据;
数学实体对构建模块,用于构建待解析文本数据的多个数学实体对;
特征提取模块,用于提取各数学实体对的语义解析特征;
解析模块,用于利用所述语义解析特征及所述语义解析模型对待解析文本数据进行语义解析,得到解析结果。
9.根据权利要求8所述的装置,其特征在于,所述模型构建模块包括:
数据收集单元,用于收集设定数量的包含公式的文本数据;
公式实体集合构建单元,用于根据收集的文本数据构建公式实体集合;
概念实体集合构建单元,用于根据收集的文本数据构建概念实体集合;
数学实体对构建单元,用于构建数学实体对并标注每个数学实体对之间的关系;
特征提取单元,用于基于所述数学实体对的上下文信息提取所述数学实体对的语义解析特征;
模型构建单元,用于根据所述数学实体对的语义解析特征构建所述语义解析模型。
10.根据权利要求9所述的装置,其特征在于,所述公式实体集合构建单元包括:
公式识别子单元,用于对所述数据收集单元收集的文本数据进行公式识别,得到公式和/或公式字符;
公式实体集合生成子单元,用于将所述公式识别子单元得到的公式和/或公式字符作为公式实体,得到公式实体集合。
11.根据权利要求9所述的装置,其特征在于,所述概念实体集合构建单元包括:
分词子单元,用于对所述数据收集单元收集的文本数据进行分词,得到各词;
频率计算子单元,用于计算各词在所述文本数据中出现的频率;
概念实体集合生成子单元,用于在所述频率大于设定的频率阈值时,将对应的词作为概念实体,得到概念实体集合。
12.根据权利要求8至11任一项所述的装置,其特征在于,所述数学实体对构建模块包括:
概念实体确定单元,用于对待解析文本数据进行分词,根据分词结果确定所述待解析文本数据中的概念实体;
公式实体确定单元,用于识别所述待解析文本数据中包含的公式和/或公式字符,得到待解析文本数据中的公式实体;
组合单元,用于将所述待解析文本数据中的概念实体和公式实体组成数学实体对。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610237536.4A CN107301163B (zh) | 2016-04-14 | 2016-04-14 | 包含公式的文本语义解析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610237536.4A CN107301163B (zh) | 2016-04-14 | 2016-04-14 | 包含公式的文本语义解析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107301163A CN107301163A (zh) | 2017-10-27 |
CN107301163B true CN107301163B (zh) | 2020-11-17 |
Family
ID=60136834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610237536.4A Active CN107301163B (zh) | 2016-04-14 | 2016-04-14 | 包含公式的文本语义解析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107301163B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255812B (zh) * | 2018-01-16 | 2021-03-23 | 西南大学 | 基于语义标注的微积分能力测试题智能生成方法 |
CN108228568B (zh) * | 2018-01-24 | 2021-06-04 | 上海互教教育科技有限公司 | 一种数学题目语义理解方法 |
CN109062904B (zh) * | 2018-08-23 | 2022-05-20 | 上海互教教育科技有限公司 | 逻辑谓词提取方法和装置 |
CN110362723B (zh) * | 2019-05-31 | 2022-06-21 | 平安国际智慧城市科技股份有限公司 | 一种题目特征表示方法、装置及存储介质 |
CN110751137A (zh) * | 2019-09-04 | 2020-02-04 | 中山大学 | 一种自动求解数学题的方法和系统 |
CN110473551B (zh) * | 2019-09-10 | 2022-07-08 | 北京百度网讯科技有限公司 | 一种语音识别方法、装置、电子设备及存储介质 |
CN112529034B (zh) * | 2020-10-24 | 2021-11-16 | 中极华盛工程咨询有限公司 | 利用参数识别的微控操作系统及方法 |
CN113254581B (zh) * | 2021-05-25 | 2022-08-19 | 深圳市图灵机器人有限公司 | 一种基于神经语义解析的金融文本公式抽取方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101118538B (zh) * | 2007-09-17 | 2010-12-15 | 中国科学院计算技术研究所 | 中文命名实体中特征词项的识别方法和系统 |
CN102799577B (zh) * | 2012-08-17 | 2016-08-03 | 苏州大学 | 一种中文实体间语义关系抽取方法 |
US9830556B2 (en) * | 2014-05-21 | 2017-11-28 | Excalibur Ip, Llc | Synthetic question formulation |
CN104834729B (zh) * | 2015-05-14 | 2018-08-10 | 作业帮教育科技(北京)有限公司 | 题目推荐方法和题目推荐装置 |
CN104933027B (zh) * | 2015-06-12 | 2017-10-27 | 华东师范大学 | 一种利用依存分析的开放式中文实体关系抽取方法 |
CN104991905B (zh) * | 2015-06-17 | 2018-01-30 | 河北大学 | 一种基于层次索引的数学表达式检索方法 |
CN104933164B (zh) * | 2015-06-26 | 2018-10-09 | 华南理工大学 | 互联网海量数据中命名实体间关系提取方法及其系统 |
-
2016
- 2016-04-14 CN CN201610237536.4A patent/CN107301163B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107301163A (zh) | 2017-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107301163B (zh) | 包含公式的文本语义解析方法及装置 | |
CN110175325B (zh) | 基于词向量和句法特征的评论分析方法及可视化交互界面 | |
CN108959242B (zh) | 一种基于中文字符词性特征的目标实体识别方法及装置 | |
CN106886580B (zh) | 一种基于深度学习的图片情感极性分析方法 | |
CN112270196B (zh) | 实体关系的识别方法、装置及电子设备 | |
CN107943911A (zh) | 数据抽取方法、装置、计算机设备及可读存储介质 | |
WO2016085409A1 (en) | A method and system for sentiment classification and emotion classification | |
CN108563638B (zh) | 一种基于主题识别和集成学习的微博情感分析方法 | |
CN107301164B (zh) | 数学公式的语义解析方法及装置 | |
CN110598203A (zh) | 一种结合词典的军事想定文书实体信息抽取方法及装置 | |
CN107679110A (zh) | 结合文本分类与图片属性提取完善知识图谱的方法及装置 | |
CN115858758A (zh) | 一种多非结构化数据识别的智慧客服知识图谱系统 | |
CN112069312A (zh) | 一种基于实体识别的文本分类方法及电子装置 | |
CN112860896A (zh) | 语料泛化方法及用于工业领域的人机对话情感分析方法 | |
CN116775874A (zh) | 一种基于多重语义信息的资讯智能分类方法及系统 | |
US11983501B2 (en) | Apparatus and method for automatic generation of machine reading comprehension training data | |
CN113486174B (zh) | 模型训练、阅读理解方法、装置、电子设备及存储介质 | |
CN107783958B (zh) | 一种目标语句识别方法及装置 | |
CN117252739A (zh) | 一种评卷方法、系统、电子设备及存储介质 | |
CN112784601A (zh) | 关键信息提取方法、装置、电子设备和存储介质 | |
CN115630357B (zh) | 一种应用程序越界收集个人信息行为的判定方法 | |
Kasmuri et al. | Subjectivity analysis in opinion mining—a systematic literature review | |
CN111078879A (zh) | 基于深度学习的卫星互联网文本敏感信息检测方法及装置 | |
CN115906818A (zh) | 语法知识预测方法、装置、电子设备和存储介质 | |
CN115757695A (zh) | 一种日志语言模型训练方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |