基于公式描述结构和词嵌入的科技文档检索方法*
河北大学网络空间安全与计算机学院 保定 071002
Retrieving Scientific Documents with Formula Description Structure and Word Embedding
School of Cyber Security and Computer, Hebei University, Baoding 071002, China
通讯作者: * 田学东,ORCID:0000-0002-2746-2278,E-mail:xuedong_tian@126.com。
收稿日期: 2019-08-13 修回日期: 2019-11-7 网络出版日期: 2020-01-25
基金资助: |
|
Received: 2019-08-13 Revised: 2019-11-7 Online: 2020-01-25
【目的】 提出一种公式匹配与文本排序相融合的科技文档检索方法。【方法】 利用公式描述结构对数学表达式进行解析得到公式的结构信息,实现基于数学表达式的科技文档检索;同时,通过词嵌入模型投影得到查询关键字的词向量和文档词向量,根据两种词向量之间的相似度对文档集合进行排序。【结果】 实验结果表明,方法的查全率和查准率分别为0.77和0.63,相较于传统科技文档检索方法分别提高24.2%和23.5%。【局限】 只针对LaTeX格式的查询表达式,在数学表达式描述格式方面有局限性。【结论】 数学表达式与文档关键字相结合的科技文档检索模型提高了科技文档检索的性能。
关键词:
[Objective] This study proposes a scientific document retrieval method combining formula match and text ranking, which address the challenges from mathematical expressions.[Methods] First, we used the analysis algorithm for formula description structure to study the mathematical expressions. Then, we acquired formula structure information, and retrieved technical documents based on mathematical expressions. Meanwhile, we obtained the inquiry keywords and document word vectors with the help of word embedding model. Finally, we ranked the documents based on the similarity between the two word vectors[Results] The recall and precision scores of our new model were 0.77 and 0.63, which were 24.2% and 23.5% higher than those of the traditional scientific document retrieval methods.[Limitations] Our method only focuses on expressions in LaTeX format.[Conclusions] The proposed model combining formula and document keywords improves the performance of scitific document retrieval.
Keywords:
本文引用格式
宰新宇, 田学东.
Zai Xinyu.
1 引 言
(1)普通的文档检索系统不能很好地处理数学表达式复杂的二维结构问题。
(2)不同类型文献之间对同一事物或主题使用不同的词汇或特征进行描述,产生语义上的差异,由此导致检索结果不准确[3]。
2 相关研究
在基于数学表达式的科技文档检索系统中,WikiMirs[7]作为维基百科中检索数学公式的工具,其目标是通过文本和空间的相似性搜索相似的数学表达式。WikiMirs3.0[8]提出一种支持精确匹配和模糊匹配的混合索引匹配模型。在混合模型中,既考虑公式的上下文信息,又考虑公式的结构信息。此外,模型中还引入了公式重要性的概念,使排序更加合理。LaTeXSearch[9]是施普林格(Springer)为研究人员提供的一项免费查询服务,用来获取LaTeX格式的科技文档,LaTeXSearch独特的“相似度”算法对LaTeX字符串进行规范化和比较,如果相似的公式写得稍有不同,输出就会进行规范化匹配,从而为用户提供尽可能广泛的结果集,使研究者能够发现与自己的公式相似的公式[10]。周南等[11]在充分考虑公式特点的基础上,设计LaTeX数学表达式解析和检索特征提取算法,使用Treap数据结构和倒排索引结构构成数学表达式索引,并在此基础上实现了数学表达式的索引匹配。在基于数学表达式的科技文档检索系统中,并未考虑到数学表达式相同但检索主题不同的情况,这会导致检索结果中存在大量与检索需求无关的文档。
为增加科技文档检索的准确性,一些研究人员将文本信息结合到基于数学表达式的科技文档检索中,取得了不错的效果。MIaS[12]对公式的所有子结构进行索引,并根据子结构的层次计算每个子结构的相似性。Pathak等[13]提出一种增强MathIRs的体系结构,它包含用于查询中的(文本/数学)内容和文档中的(文本/数学)内容之间进行语义相似性检测的单独模块,还通过改进基于替代树的索引机制,克服了传统索引技术的缺点。针对NTCIR-12 MathIR[14]任务中用户能够使用数学公式搜索特定数学概念的需求,MCAT Search System[15]通过使用三部分索引实现检索,分别是:前期处理、检索数学表达式、查找排序,其中,在前期处理阶段提取的文本信息,将在最终阶段结合所有的检索类型信息进行查找排序,提高了检索系统的性能。但是,大多数检索系统仅考虑文档中是否包含检索关键字,而不考虑与关键字语义相同或相近的其他词语,使检索范围具有一定的局限性。
综上,虽然已经存在一些科技文档检索系统和方法,但是技术还不够成熟,尤其在数学表达式和关键字相结合的科技文档检索方法上研究较少。
3 研究框架与方法
3.1 研究框架与设计
基于公式描述结构和词嵌入的科技文档检索系统分为三个步骤:
(1)通过FDS解析算法,检索出和查询表达式相匹配的文档集合;
(2)利用Word Embedding算法,分别得到查询关键字集合的词向量和第一部分检索出的文档集中关键字集合的词向量;
(3)利用余弦距离,得到两组词向量的余弦相似度,根据相似度值对文档进行排序。
定义1 设文档集合
定义2 设
科技文档检索及排序算法如下:
输入:LaTeX格式的查询表达式
输出:科技文档的检索排序结果
①利用FDS算法对
②根据
③利用Word Embedding模型,分别得到
④利用余弦距离,计算
⑤根据余弦相似度值的大小,对
3.2 数学表达式索引的建立
FDS是一种用来描述数学表达式格式的结构,通过提取数学表达式骨架的方式忽略运算符对检索的影响,这样做有利于提高数学表达式检索的效率。一个数学表达式中的每个符号在FDS中包含4个属性,如式(1)[5]所示。
其中,
FDS依据提取的表达式建立数学表达式索引,并存入数据表Exp(Id, fileId, fdsCode, expInfo),其中,Id为表达式的序号,fileId为当前表达式所在的文档编号,fdsCode为表达式的FDS结构编码,expInfo为表达式本身。根据表达式所在的文档,构建文档的索引结构表Fileinfo(fileId, filename),其中,fileId为文档编号,filename为当前文档的名称。
当输入待检索的查询表达式
3.3 面向科技文档的词嵌入训练
词嵌入又名词向量,可以通过神经网络训练语言模型得到,是一种词的类型表示。词嵌入将高维的词向量嵌入到低维空间,既能捕获词的语义信息,又能捕获词的句法信息,可用于测量词的相似性,在自然语言处理和机器学习中发挥了重要作用。
其中,Cn是第n个单词的上下文,S(n-2), S(n-1), …, S(n+1) , S(n+2)表示单词序列。CBOW模型的架构如图1所示。
图1
输入层包括当前词
由于词库中的单词数量庞杂,在很多情况下直接计算公式(2)是不切实际的。因此使用一种二分类器做Softmax分层判断,通过与一组抽样获得的否定候选词对比得到正确的单词,从而得到CBOW模型最大化的目标函数,如公式(3)所示。
其中,
使用向量
其中,
标准的词向量忽略了包含丰富信息的词的内部结构。目前一种简单而有效的方法是:通过“一袋”n元语法模型(n-gram)字符来丰富词向量,每个词都被分解为n-gram字符的集合
4 实验过程及结果分析
4.1 系统实验
实验使用的工具为PyCharm,编程语言为Python,结合MySQL,在C/S模式下进行。实验环境为CPU Intel(R) Core(TM) i7-6700,3.40GHz,内存8GB,系统环境为Microsoft Windows 10。
实验数据集为NTCIR-12_MathIR_Wikipedia_ Corpus,其中包含30 165篇英文文档,共366 432个数学表达式。
(1) 基于FDS的科技文档检索
对文档中所有公式进行解析,并将文档信息和解析后的表达式信息存入数据库。部分结果如表1所示。
表1 部分表达式解析结果
Table 1
查询表达式 | LaTeX结构 | FDS结构 |
---|---|---|
2^{q} | ^\1 | |
a \times b | \times\0, | |
\frac{a}{b} | frac\0 | |
\frac{-b ±√({b^{2} -4 a c} )}{2 a} | \frac\0,-\1,\pm\1,\sqrt\1,^\3,-\2, | |
\frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x-\mu)^{2}} {2 \sigma^{2}}} | \frac\0,\sqrt\1,^\1,-\1,\frac\1,(\2,-\2,)\2,^\3,^\3, |
针对不同的表达式进行大量实验,其中正态分布表达式
表2 表达式的部分检索结果
Table 2
EXPID | EXP | FileName(html) |
---|---|---|
57113 | Computer stereo vision | |
127297 | Gaussian noise | |
206443 | Maximum entropy probability distribution | |
232616 | Normal distribution | |
79135 | Differential entropy |
其中EXPID为表达式在数据库中对应的编号,EXP是和正态分布表达式相似的公式,FileName为表达式所在文档的名称。由于实验检索出的表达式数量太多,因此只选择5个检索结果进行展示。通过表2可以看到表达式检索得到与查询表达式相似的公式和这些公式所对应的文档信息。
(2) 基于词嵌入的科技文档排序
表3 关键词组提取结果
Table 3
Keyword | WordScore |
---|---|
folded normal distribution | 7.37 |
folded distribution | 5.03 |
normal distribution | 4.78 |
random variable | 4.33 |
differential equations | 4.02 |
由于本文所使用的NTCIR数据集是从维基百科获取的英文文档,所以本系统使用开源框架fastText ( https://github.com/facebookresearch/fastText.)训练的Word Embedding模型作为基模型,并在此基础上根据实验需求进行微调(Fine-Tune),最终得到本实验所对应的Word Embedding模型。
利用Python中的Gensim模块,导入训练好的Word Embedding模型,将公式检索得到的符合条件的文档集合和用户输入的查询关键字集合,通过Word Embedding得到文档关键字集合和查询关键字集合的词向量,并计算两组词向量集合的余弦相似度值。根据相似度值的大小,对文档进行排序并输出。
当用户输入的关键词组和查询公式分别为“normal distribution”和“
表4 文档排序Top-10结果
Table 4
序号 | 文档(html) | 相似度 |
---|---|---|
1 | Folded normal distribution | 0.93 |
2 | Normal gamma distribution | 0.86 |
3 | Gaussian distribution | 0.80 |
4 | Exponential family | 0.75 |
5 | Stochastic simulation | 0.74 |
6 | Logit normal distribution | 0.73 |
7 | Normal distribution | 0.72 |
8 | Kernel (statistics) | 0.68 |
9 | Distributed random | 0.67 |
10 | Slice sampling | 0.66 |
4.2 对比实验
SearchOnMath是Oliveira等[20]提出的一种基于数学信息的检索系统,可以根据公式或者关键字检索科技论文以及维基百科的英文文档等内容。
以泊松分布(Poisson Distribution)公式为例,如公式(7)所示。
本文系统和SearchOnMath系统检索的前5个结果如表5所示。
表5 两系统Top-5检索结果
Table 5
系统 | 公式 | 文档(html) |
---|---|---|
Search OnMath | Variance | |
Poisson distribution | ||
Long tail traffic | ||
Constellation model | ||
Quantum harmonic oscillator | ||
本文系统 | Variance | |
Poisson distribution | ||
Poisson games | ||
Poisson wavelet | ||
Poisson limit theorem |
关于公式(7)的检索,本系统检索消耗的时间为0.48秒,SearchOnMath系统的检索时间为0.56秒,在检索时间上,两系统都能快速给出检索结果,本系统检索所用时间略少于SearchOnMath系统,因为本系统采用的FDS方法在公式检索中忽略了运算数对检索的影响,从而提高了检索速度;公式检索结果方面,两系统的Top-2基本相同,但是从整体的Top-5结果来看,本系统的公式检索性能更为合理,从表5所列出的文档信息可以看出,本系统检索出的文档与关键词“Poisson distribution”相关性更强。
选取经过专家排序后的10组文档数据作为本次对比实验的测试集,评价时分别计算本系统和SearchOnMath系统与专家排序结果的余弦相似度,相似度越高说明系统性能越好,反之亦然。文档列表如表6所示。
表6 文档列表
Table 6
序号 | 公式 | 关键字 | 序号 | 公式 | 关键字 |
---|---|---|---|---|---|
1 | fractional | 6 | limit theorem | ||
2 | exponential | 7 | pythagorean theorem | ||
3 | sine function | 8 | poisson | ||
4 | cosine function | 9 | quadratic formula | ||
5 | radical expression | 10 | normal distribution |
根据10组专家排序后的文档得到两个系统的余弦相似度,结果如图2所示。
图2
图2
本文方法和SearchOnMath的相似度对比
Fig.2
Comparison of Similarity Between Our Method and SearchOnMath
从图2可以看出,本方法比SearchOnMath系统基于表达式和关键字检索出的文档的相似度更接近于专家排序,更能满足用户的查询需求。需要说明的是,专家排序属于人工评价方式,因此评价标准并不唯一。
4.3 实验分析
对于一组文档的检索,查全率(Recall)指检索出的相关文档数与检索系统中含有的全部相关文档数的比值,查准率(Precision)指检索到的相关文档数和检索出的文档总数的比值。
图3
图3为本系统对10组不同文档进行检索得到的结果,其中平均查全率为0.77,平均查准率为0.63。对比使用词嵌入前后的检索结果,在不使用词嵌入模型进行科技文档检索的情况下,系统只能检索到包含关键字的文档,这会导致检索的范围较小,从而使系统检索性能较低,尤其是查全率。将词嵌入模型融入科技文档检索系统后,检索范围有限这一问题得到解决,检索性能得到提高。因此,词嵌入模型对在一定程度上保证查准率条件下扩大文档检索范围是有效的。
5 结 语
本文立足于公式和关键字相结合的检索模式,提出一种基于公式描述结构和词嵌入的科技文档检索排序方法。该方法通过公式描述结构获得表达式的运算符信息,降低表达式中运算数对检索的影响,提高表达式检索的效率;再根据词嵌入模型,得到和查询关键字语义相似的词语,解决了基于关键字检索单一性问题,提高文档和查询关键字的相似度。本方法主要针对LaTeX格式的查询表达式,导致检索系统具有一定的局限性。未来将尝试对不同形式的表达式进行解析,使科技文档检索系统更加广泛地满足用户的检索需求。
作者贡献声明
田学东:提出研究思路,设计研究方案;
宰新宇:进行实验,分析数据,撰写论文;
田学东,宰新宇:论文最终版本修订。
利益冲突声明
所有作者声明不存在利益冲突关系。
支撑数据
支撑数据由作者自存储,E-mail: xinyu_zai@163.com。
[1] 宰新宇. Dataset.rar. 实验数据集.
[2] 宰新宇. SmartStoplist.txt. 停用词表.
[3] 宰新宇. Model.rar. 词向量模型和公式解析算法.
[4] 宰新宇. Index.rar. 公式解析与关键字提取索引集.
[5] 宰新宇. Result.rar. 实验结果集.
参考文献
Section-Wise Indexing and Retrieval of Research Articles
[J]. ,
A Mathematical Information Retrieval System Based on RankBoost
[C]// ,
基于维基百科的多种类型文献自动分类研究
[J]. ,
Automatic Classification of Documents from Wikipedia
[J].
An Indexing Method of Mathematical Expression Retrieval
[C]// ,
A Maintenance Algorithm of FDS Based Mathematical Expression Index
[C]// ,
Advances in Pre-Training Distributed Word Representations
[OL]. .
Wikimirs: A Mathematical Information Retrieval System for Wikipedia
[C]// ,
WikiMirs 3.0: A Hybrid MIR System Based on the Context, Structure and Importance of Formulae in a Document
[C]// ,
A Critical Survey of Mathematical Search Engines
[C]// ,
LaTeX数学表达式解析与索引方法
[J]. ,
Analyzing and Indexing Method on LaTeX Formulae
[J].
Indexing and Searching Mathematics in Digital Libraries
[C]// ,
Mathirs: Retrieval System for Scientific Documents
[J]. ,
NTCIR-12 MathIR Task Overview
[C]//
MCAT Math Retrieval System for NTCIR-12 MathIR Task
[C]//
Efficient Estimation of Word Representations in Vector Space
[OL]. .
Distributed Representations of Words and Phrases and Their Compositionality
[C]//
Learning Word Embeddings Efficiently with Noise-Contrastive Estimation
[C]//
Automatic Keyword Extraction from Individual Documents[A]// Text Mining: Applications and Theory
[M]. ,
A Distributed System for SearchOnMath Based on the Microsoft BizSpark Program
[OL]. .
/
〈 | 〉 |