一种公式化数据的搜索方法及装置制造方法及图纸

技术编号:7809451 阅读:219 留言:0更新日期:2012-09-27 08:27
本发明专利技术公开一种公式化数据搜索装置,包括:至少一用户端,该用户端包括一公式输入模块,用于输入公式并转换为一文本化编码;一服务器,该服务器包括一搜索模块,该搜索模块至少包括一数据库用于存储与公式对应的文本化编码;该搜索模块根据该文本化编码查询该数据库并将查询结果返回该用户端。

【技术实现步骤摘要】
一种公式化数据的搜索方法及装置
本专利技术涉及搜索引擎技术,尤其涉及一种公式化数据的搜索方法及装置。
技术介绍
随着互联网应用的发展、以及各种类型的数字化内容(文本、图片、音频和视频等)以指数级的形式呈现出爆炸性的增长,如何根据用户的输入在海量信息中准确地查找相关内容,是一个非常基础而又具有重大意义的技术挑战。目前,以Google、百度等为代表的通用搜索引擎在一定程度上已经较好地解决了这一难题。然而以通用搜索引擎为代表及其他基于传统的文本检索系统的软件、网络应用等,在针对各类数理化公式及其他符号(如五线谱、化学分子式等)的搜索上仍然具有很大的局限性,从而在理科教育、科研工程甚至其他方面无法满足用户的搜索需求。现有技术中所常用的数学搜索系统主要有利用文本信息检索系统对数学关键词搜索和对数学公式等内容进行粗粒度搜索。其中利用文本信息检索系统对数学关键词搜索是一种基于数学术语元数据搜索,可以实现对数学内容进行粗粒度搜索,这种方法无需考虑数学搜索与通用搜索的区别。这种方法通常可以同时支持文本搜索和数学公式搜索。但是不支持更高级别的数学搜索,比如要搜索a2+c=2a,其中a可以是任意相同的表达式,这种查询就不能执行。这种方法最大的优势在于依赖一种已存在的成熟技术,但是它没有完全支持面向数学公式的查询。另一种相似的思想是依靠基于XML的XQuery搜索引擎。这两种方法的优势在于都依靠一种已存在的技术,但是它们都没有提供完全面向数学的搜索方法。对数学公式等内容进行细粒度搜索,对数学公式的整体及部分具有一定语法结构和语义的子公式建立索引并进行搜索,这种方法比文本信息检索系统具有更强大的功能,并且更加高效。比如将模式匹配应用到基础编程语言中,在数据库中搜索数学内容并从中搜集到结构化元数据以进行有效检索。具体而言,现有技术中所使用的两种数学公式搜索方法的局限性主要表现在以下两个方面:1.输入障碍对于一些简单的如数学公式y=3x+5之类的公式化数据,用户可以通过键盘直接输入;而对于诸如这类结构性并不算复杂的公式如何准确进行输入,则缺乏统一的标准。具有一定数学和计算机语言知识背景的专业人士可能会输入1/sqrt(x)、1/sqrt{x}或一种出版行业通用的编辑排版的LaTeX语言的标准表达式\frac{1}{\sqrt{x}},甚至不规则的近似输入1/√x以√代替根号。但对于结构更为复杂的微积分表达式,例如则令用户捉襟见肘、根本无法输入,即使近似输入来表达积分区间也几乎不可能。2.搜索结果的准确度和相关性现有基于文本的搜索引擎在针对数理化公式的搜索方面仅限于基于关键词和字符串的搜索,即只能确保统计意义上的大致正确。然而数理化公式和符号是一类较为特殊的、具有结构化特征的语言,其语义依赖于特定的公式结构:例如同样含有“x+y”,但和2(x+y)这两个公式的数学意义相去甚远。因此相关的搜索算法如果仅从纯文本的角度进行字面意义上的匹配和排序,则无法确保搜索结果数学意义上的正确性,从而导致搜索的准确性和相关度下降,且精度不能达到一定标准、搜索算法过于模糊则失去使用价值。有鉴于此,现有技术中急需要一种新的针对公式化数据的搜索方法及装置。
技术实现思路
为了克服现有技术中存在的缺陷,本专利技术提供一种公式化数据的搜索方法及装置,该搜索方法及装置能使用户方便地输入复杂公式,且针对该公式的搜索准确度和相关性均能有效提高。为了实现上述专利技术目的,本专利技术公开一种公式化数据搜索装置,包括:至少一用户端,该用户端包括一公式输入模块,用于输入公式并转换为一文本化编码;一服务器,该服务器包括一搜索模块,该搜索模块至少包括一数据库用于存储与公式对应的文本化编码;该搜索模块根据该文本化编码查询该数据库并将查询结果返回该用户端。更进一步地,该公式输入模块包括:一输入界面模块,用于提供一标准的或自定义的公式元件;一处理模块,用于接收由该公式元件所组成的公式并将其转换为一文本化编码。该公式元件包括但不限于以下的一种或几种:数学公式符号、物理符号、化学符号、化学结构式、化学反应式、函数图形、五线谱、棋谱。该公式元件包括一符号以及至少一个输入光标,该输入光标用于根据用户需要输入一字母或数字。该搜索装置还包括一网络,该网络将该文本化编码传送至该服务器。该搜索模块还包括一索引。该索引的规则为将公式划分为运算变量、运算符以及其他结构类别,该公式均为由该变量、运算符、其他结构类别的一种、多种或其组合所组成的表达式。该文本化编码为LaTeX语言或MathML语言或OpenMath语言或其他用户自定义的文本化语言。该搜索模块中还包括一网络爬虫进程,用于在网络中查找与公式相关的网页或文档。本专利技术还同时公开一种公式化数据的搜索方法,包括:输入一公式;将该公式转换为一文本化语言;查询数据库中的公式;输出一查询结果。更进一步地,该公式包括但不限于数学公式、物理公式、化学结构式、化学反应式、函数图形、五线谱、棋谱。在输入公式之前对该数据库中的公式进行索引。该索引的规则为将公式划分为运算变量、运算符以及其他结构类别,该公式均为由该变量、运算符、其他结构类别的一种、多种或其组合所组成的表达式。输入一公式的过程具体包括:提供一标准的或自定义的公式元件,用户根据需要选择该公式元件以生成一公式。输入一公式的过程具体包括:提供一标准的或自定义的公式元件,该公式元件包括符号以及至少一个输入光标,用户根据需要选择该符号以及在输入光标处输入一字母或数字,以生成一公式。该查询数据库中的公式具体包括:在输入公式之前对该数据库中的公式进行索引,将该输入公式的文本化语言在索引中进行查询,与该数据库的公式进行相似性的比较和评分。该输出一查询结果具体包括:将查询结果进行排序后呈现给用户。本专利技术还同时公开一种公式化数据的搜索方法,包括:对数据库中的公式按规则建立索引;输入中英文及公式;将该输入公式转换为一文本化语言;将该输入公式的文本化语言在索引中进行查询,与该数据库的公式进行相似性的比较和评分以及将该中英文进行文本查询;根据该评分结果进行排序后呈现给用户。更进一步地,该索引的规则为将公式划分为运算变量、运算符以及其他结构类别,该公式均为由该变量、运算符、其他结构类别的一种、多种或其组合所组成的表达式。该输入公式的步骤具体包括:提供一标准或自定义的公式元件,用户根据需要选择该公式元件以生成一公式。在对数据库中的公式按规则建立索引前,利用网络爬虫在网络中查找与公式相关的网页或文档,并将与该公式相关的网页或文档保存至该数据库中。与现有技术相比较,现有技术中所采用的数学搜索引擎几乎都是采用文本输入的查询方式,即用户必须在输入框里直接输入欲查询的各类公式和符号的LaTeX或类似语言的文本化的编码表达式。而这类语言具有一定的专业格式和语法规范,需要用户具有一定程度的计算机和数学方面的知识背景,从而导致了较高的使用门槛。本专利技术能有效克服普通用户对公式输入的障碍,同时本专利技术所提供的搜索方法和装置避免了用户在输入公式表达式时因不规范所造成的无法搜索的问题。再次,现有的搜索技术只能针对公式进行粗粒度搜索,即满足公式相关的关键词或字符串匹配即认为搜索完成,无法从整体的搜索算法设计上确保搜索的准确度和相关性。本专利技术利用基于规则的索引方式,将公本文档来自技高网
...
一种公式化数据的搜索方法及装置

【技术保护点】

【技术特征摘要】
1.一种公式化数据搜索装置,其特征在于,包括:至少一用户端,所述用户端包括一公式输入模块,用于输入公式并转换为一文本化编码,所述公式输入模块包括:一输入界面模块,用于提供标准的公式元件;一处理模块,用于接收由所述公式元件所组成的公式并将其转换为一文本化编码,所述文本化编码为Latex语言或MathML语言或OpenMath语言;一网络,用于将所述文本化编码传送至一服务器;一服务器,所述服务器包括一搜索模块,该搜索模块至少包括一数据库用于存储与公式对应的文本化编码,所述搜索模块包含一索引,所述索引规则为将公式划分为运算变量和运算符两种结构类别,所述运算变量和运算符组成一表达式,所述公式由所述表达式递归或非递归定义而成,所述非递归是指如果所述公式无法匹配所述表达式的定义规则,则所述公式被不断分解直至形成一符合所述表达式定义规则的最长子结构,如果某一公式需要被整体识别,则将所述公式的结构特征添加为一定义规则;所述索引的规则为,实现粗粒度的公式中关键词的识别,并结合通过扩展表达式的定义规则,以最细粒度的单元作为索引,将所述粗粒度和最细粒度两者结合,实现精确搜索和模糊搜索的功能,即同时进行粗粒度和最细粒度的方式进行搜索;所述搜索模块根据所述文本化编码查询所述数据库并将查询结果通过所述网络返回所述用户端。2.如权利要求1所述的公式化数据搜索装置,其特征在于,所述公式元件包括以下的一种或几种:数学公式符号、物理符号、化学符号、化学结构式、化学反应式、五线谱。3.如权利要求1所述的公式化数据搜索装置,其特征在于,所述公式元件包括一符号以及至少一个输入光标,所述输入光标用于根据用户需要输入一字母或数字。4.如权利要求1所述的公式化数据搜索装置,其特征在于,所述搜索模块中还包括一网络爬虫进程,用于在网络中查找与公式相关的网页或文档。5.一种公式化数据的搜索方法,其特征在于,包括:建立一索引,所述索引规则包括将公式划分为运算变量和运算符两种结构类别,所述运算变量和运算符组成一表达式,所述公式由所述表达式递归或非递归定义而成,所述非递归是指如果所述公式无法匹配所述表达式的定义规则,则所述公式被不断分解直至形成一符合所述表达式定义规则的最长子结构,如果某一公式需要被整体识别,则将所述公式的结构特征添加为一定义规则;所述索引的规则为,实现粗粒度的公式中关键词的识别,并结合通过扩展表达式的定义规则,以最细粒度的单元作为索引,将所述粗粒度和最细粒度两者结合,实现精确搜索和模糊搜索的功能,即同时进行粗粒度和最细粒度的方式进行搜...

【专利技术属性】
技术研发人员:侯秀峰徐飞张国晨
申请(专利权)人:上海极值信息技术有限公司
类型:发明
国别省市:

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

1