一种引文内容智能定位方法及系统与流程

文档序号:29041167发布日期:2022-02-25 20:46阅读:148来源:国知局
一种引文内容智能定位方法及系统与流程

1.本发明属于非结构化数据处理技术、分布式软件技术领域,具体涉及一种引文内容智能定位方法及系统。


背景技术:

2.引文内容定位,是在由论文或文献的内容抽取的字符串中,使用字符匹配或正则匹配,抽取出其中关键的字符,通过关键的字符与数据中的各引文的数据进行关联与匹配的技术方法。引文内容定位的工业应用中,通常会使用预训练的文本向量对字符串信息进行嵌入,进而利用嵌入的向量对字符与数据集进行相似度计算,筛选出最相似的数据集。公开号cn109947915a的专利文献公开了一种基于知识管理系统的人工智能专家系统及其构建方法,尽管可以根据所述问答信息中的问题和匹配的答案得到第一关联信息并将所述第一关联信息更新至所述知识图谱中,然而其将需要匹配的引文内容进行结构化的信息抽取的时间成本与计算复杂度极大,且难以对非结构化的文本数据进行匹配计算。


技术实现要素:

3.本发明的目的在于提出一种引文内容智能定位方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
4.本发明提供了一种引文内容智能定位方法及系统,读取文本文件中的字符串作为待检测字符串,使用分词算法对待检测字符串进行分词将待检测字符串分为若干个字符串数组,再分别对各个字符串数组定位出关键字符,将多个不同的字符串数据作为引文内容集合,并将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据。
5.为了实现上述目的,根据本发明的一方面,提供一种引文内容智能定位方法,所述方法包括以下步骤:s100,输入文本文件,读取文本文件中的字符串作为待检测字符串;s200,使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组;s300,分别对各个字符串数组进行定位,定位出关键字符;s400,将多个不同的字符串数据作为引文内容集合;s500,将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据。
6.所述方法包括的步骤中涉及的计算皆为提取相应的数值而进行的计算,且经过无量纲化处理。
7.进一步地,在s200中,使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组的方法为:将待检测字符串以字符串中的点号为分割点从而分割成若干个句子,使用中文分词算法对每个句子进行分词,并对每个句子去除标点符号,分别将每
个句子分成若干个字符串并把该若干个字符串组成一个字符串数组,由此得到若干个字符串数组。
8.进一步地,在s300中,分别对各个字符串数组进行定位,定位出关键字符的方法为:记各个字符串数组组成的集合为arrset,arrset中元素的数量记为n,arrset中元素的序号记为i,i∈[1, n],arrset中序号为i的元素为arr(i),字符串数组arr(i)中元素的数量记为n(i),字符串数组arr(i)中元素的序号记为i(i),i(i)∈[1,n(i)],字符串数组arr(i)中序号为i(i)的元素为字符串arr[i(i)];将字符串数组arr(i)中各个字符串一并输入到elmo中文预训练模型中,elmo中文预训练模型输出字符串数组arr(i)中各个字符串的嵌入向量(词向量),记字符串数组arr(i)中字符串arr[i(i)]的嵌入向量为emb[i(i)];记嵌入向量中维度的数量为k,嵌入向量中维度的序号为v,v∈[1, k];emb[i(i)]中序号为v的维度的数值记为emb[i(i)]v;分别在各个字符串数组arr(i)中,将字符串数组arr(i)中的首个字符串arr[1]与最后一个字符串arr[n(i)]相连,即令在arr(i)中arr[n(i)]后的下一个元素为arr[1],由此令字符串数组arr(i)中的首个字符串与最后一个字符串首尾相接形成一个闭合的环;分别在各个字符串数组arr(i)中,将arr(i)中各字符串arr[i(i)]的嵌入向量emb[i(i)]组成一个n(i)列k行的矩阵记作mat(i),mat(i)中序号为i(i)的列为emb[i(i)],对mat(i)中列序号为i(i)行序号为v的元素进行赋值使其数值等于emb[i(i)]v,然后记mat(i)中列序号为i(i)行序号为v的元素的数值为mat(i)[v, i(i)];设定位数组为对一个字符串数组中的关键字符进行定位的数组,定位数组中维度的数量与其对应的字符串数组中的元素的数量相同,定位数值实现了对对一个字符串数组中的关键字符的快速的多维度向量化编码,有利于快速定位出关键字符的位置,同时减少计算的时间复杂度;记字符串数组arr(i)的定位数组为pis(i),pis(i)中维度的数量同为n(i),pis(i)中维度的序号同为i(i),pis(i)中序号为i(i)的维度的数值为pis(i)[i(i)],pis(i)[i(i)]的计算公式为:,其中,函数sig为以二分之一圆周率的数值为底数的指数函数,由此得到pis(i)中各维度的数值;选取定位数组pis(i)中数值最小的元素,并记录该数值最小的元素在定位数组中的序号为i(i)`,i(i)`∈[1,n(i)];计算int(n(i)/2),其中函数int为取整的函数,令r= int(n(i)/2);在字符串数组arr(i)中的首个字符串与最后一个字符串首尾相接形成的环中,获取其中序号为i(i)`的元素后的第r个元素作为arr[i(i)`+r],arr[i(i)`+r]即为关键字符,由此定位出关键字符。
[0009]
进一步地,在s400中,将多个不同的字符串数据作为引文内容集合的方法为:
通过网络爬虫技术获取多个不同的论文或网页的文本的字符串数据,使用分词算法和关键词提取算法,分别将每个字符串数据进行分词与关键词提取,在各个字符串数据中通过分词算法得到的多个分词,再在得到的多个分词中提取得到多个关键词,并记录下提取得到的各个关键词在对应的多个分词中的序号;记通过网络爬虫技术获取多个不同的论文或网页的文本的字符串数据组成的集合为refset,集合refset中元素的数量为m,集合refset中元素的序号为j,j∈[1,m],集合refset中序号为j的元素为refset(j),refset(j)通过分词算法得到的多个分词的集合为refcont(j),refcont(j)中分词的数量为n(j),refcont(j)中分词的序号为i(j),i(j)∈[1,n(j)],从各个refcont(j)中通过关键词提取算法得到多个不同的关键词,记refcont(j)中得到的关键词的集合为refabrg(j),refcont(j)中得到的各个关键词在refcont(j)中的序号的集合为idxet(j),集合refset即为引文内容集合。
[0010]
进一步地,在s500中,将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据的方法为:使用预训练语言模型ernie,将ernie进行微调作为预测模型,利用其中的掩码语言建模(maskedlanguagemodel)的机制,将集合refset中各元素中的被定位的关键词的位置进行掩码,预测模型对被掩码的位置进行n-gram预测(详见论文dxiao,liyk,zhangh,etal.ernie-gram:pre-trainingwithexplicitlyn-grammaskedlanguagemodelingfornaturallanguageunderstanding[j].2020.中的章节3.3comprehensiven-gramprediction所述的算法),预测该被掩码的位置为关键字符的概率(likelihood)作为预测概率值;将关键字符与引文内容集合中的各个字符串数据进行比对:关键字符记为keyw,令函数prd()表示利用预测模型对被掩码的位置进行预测得到关键字符的预测概率值的函数,prd(keyw,refset(j))表示预测模型对在refset(j)中被掩码的位置进行预测得到keyw的预测概率值,将keyw分别在refset的各元素refset(j)中的预测概率值prd(keyw,refset(j))组成的集合作为prdset,prdset中元素的数量与refset中元素的数量相同为m,prdset中元素的序号与refset中元素的序号相同为j,prd(keyw,refset(j))为prdset中序号为j的元素;进而,匹配出若干个字符串数据:函数min为取集合中数值最小的元素的函数,函数max为取集合中数值最大的元素的函数,min(prdset)为prdset中数值最小的元素的数值,max(prdset)为prdset中数值最大的元素的数值,将交划值定义为对refset的各元素refset(j)依照其对应的预测概率值prd(keyw,refset(j))进行对比的数值,记refset(j)对应的交划值为p(j),p(j)的计算公式为,p(j)=sin(π*prd(keyw,refset(j))/(max(prdset)-min(prdset))),其中sin为正弦函数,交划值的有益效果为快速而批量式地对引文内容集合中各元素进行交叉对照从而筛选出在预测概率值上存在极大似然概率的引文内容,π为圆周率;对refset的各元素refset(j)进行判断其交划值是否满足约束条件p(j)》1,若存在有元素refset(j)满足其交划值p(j)》1,则将该满足约束条件的字符串refset(j)与关键字符keyw相匹配,由此匹配出若干个refset(j);若不存在有元素refset(j)满足其交划值p(j)》1,则keyw在集合refset无匹配的元素;将对refset的各元素refset(j)进行判断其
交划值是否满足约束条件p(j)》1的结果进行记录并输出。
[0011]
本发明还提供了一种引文内容智能定位系统,所述一种引文内容智能定位系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种引文内容智能定位方法中的步骤,所述一种引文内容智能定位系统可以运行于桌上型计算机、笔记本、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群,所述处理器执行所述计算机程序运行在以下系统的单元中:文本输入单元,用于输入文本文件,读取文本文件中的字符串作为待检测字符串;分词检测单元,用于使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组;关键字符定位单元,用于分别对各个字符串数组进行定位,定位出关键字符;引文内容集合单元,用于将多个不同的字符串数据作为引文内容集合;字符匹配单元,用于将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据。
[0012]
本发明的有益效果为:本发明提供了一种引文内容智能定位方法及系统,读取文本文件中的字符串作为待检测字符串,使用分词算法对待检测字符串进行分词将待检测字符串分为若干个字符串数组,再分别对各个字符串数组定位出关键字符,将多个不同的字符串数据作为引文内容集合,并将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据,减少了匹配的时间成本,实现了快速对字符串中的引文内容进行识别并匹配指向所引述的内容的有益效果。
附图说明
[0013]
通过对结合附图所示出的实施方式进行详细说明,本发明的上述以及其他特征将更加明显,本发明附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:图1所示为一种引文内容智能定位方法的流程图;图2所示为一种引文内容智能定位系统的系统结构图。
具体实施方式
[0014]
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
[0015]
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0016]
如图1所示为根据本发明的一种引文内容智能定位方法的流程图,下面结合图1来阐述根据本发明的实施方式的一种引文内容智能定位方法及系统。
[0017]
本发明提出一种引文内容智能定位方法,所述方法具体包括以下步骤:s100,输入文本文件,读取文本文件中的字符串作为待检测字符串;s200,使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组;s300,分别对各个字符串数组进行定位,定位出关键字符;s400,将多个不同的字符串数据作为引文内容集合;s500,将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据。
[0018]
进一步地,在s200中,使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组的方法为:将待检测字符串以字符串中的点号为分割点从而分割成若干个句子,使用中文分词算法对每个句子进行分词,并对每个句子去除标点符号,分别将每个句子分成若干个字符串并把该若干个字符串组成一个字符串数组,由此得到若干个字符串数组。
[0019]
进一步地,在s300中,分别对各个字符串数组进行定位,定位出关键字符的方法为:记各个字符串数组组成的集合为arrset,arrset中元素的数量记为n,arrset中元素的序号记为i,i∈[1, n],arrset中序号为i的元素为arr(i),字符串数组arr(i)中元素的数量记为n(i),字符串数组arr(i)中元素的序号记为i(i),i(i)∈[1,n(i)],字符串数组arr(i)中序号为i(i)的元素为字符串arr[i(i)];将字符串数组arr(i)中各个字符串一并输入到elmo中文预训练模型中,elmo中文预训练模型输出字符串数组arr(i)中各个字符串的嵌入向量,记字符串数组arr(i)中字符串arr[i(i)]的嵌入向量为emb[i(i)];记嵌入向量中维度的数量为k,嵌入向量中维度的序号为v,v∈[1, k];emb[i(i)]中序号为v的维度的数值记为emb[i(i)]v;分别在各个字符串数组arr(i)中,将字符串数组arr(i)中的首个字符串arr[1]与最后一个字符串arr[n(i)]相连,即令在arr(i)中arr[n(i)]后的下一个元素为arr[1],由此令字符串数组arr(i)中的首个字符串与最后一个字符串首尾相接形成一个闭合的环;分别在各个字符串数组arr(i)中,将arr(i)中各字符串arr[i(i)]的嵌入向量emb[i(i)]组成一个n(i)列k行的矩阵记作mat(i),mat(i)中序号为i(i)的列为emb[i(i)],mat(i)中列序号为i(i)行序号为v的元素的数值等于emb[i(i)]v,mat(i)中列序号为i(i)行序号为v的元素记为mat(i) [v, i(i)];设定位数组为对一个字符串数组中的关键字符进行定位的数组,定位数组中维度的数量与其对应的字符串数组中的元素的数量相同;记字符串数组arr(i)的定位数组为pis(i),pis(i)中维度的数量同为n(i),pis(i)中维度的序号同为i(i),pis(i)中序号为i(i)的维度的数值为pis(i)[i(i)],pis(i)[i(i)]的计算公式为:,
其中,函数sig为以二分之一圆周率的数值为底数的指数函数,由此得到pis(i)中各维度的数值;选取定位数组pis(i)中数值最小的元素,并记录该数值最小的元素在定位数组中的序号为i(i)`,i(i)`∈[1,n(i)];计算int(n(i)/2),其中函数int为取整的函数,令r= int(n(i)/2);在字符串数组arr(i)中的首个字符串与最后一个字符串首尾相接形成的环中,获取其中序号为i(i)`的元素后的第r个元素作为arr[i(i)`+r],arr[i(i)`+r]即为关键字符,由此定位出关键字符。
[0020]
进一步地,在s400中,将多个不同的字符串数据作为引文内容集合的方法为:通过网络爬虫技术获取多个不同的论文的文本的字符串数据,使用分词算法和关键词提取算法,分别将每个字符串数据进行分词与关键词提取,在各个字符串数据中通过分词算法得到的多个分词,再在得到的多个分词中提取得到多个关键词,并记录下提取得到的各个关键词在对应的多个分词中的序号;记通过网络爬虫技术获取多个不同的论文的文本的字符串数据组成的集合为refset,集合refset中元素的数量为m,集合refset中元素的序号为j,j∈[1, m],集合refset中序号为j的元素为refset(j),refset(j)通过分词算法得到的多个分词的集合为refcont(j),refcont(j)中分词的数量为n(j),refcont(j)中分词的序号为i(j),i(j)∈[1, n(j)],从各个refcont(j)中通过关键词提取算法得到多个不同的关键词,记refcont(j)中得到的关键词的集合为refabrg(j),refcont(j)中得到的各个关键词在refcont(j)中的序号的集合为idxet(j)。
[0021]
进一步地,在s500中,将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据的方法为:使用预训练语言模型ernie,(预训练语言模型ernie的详细构造参见:sun y ,wang s ,li y , et al. ernie 2.0: a continual pre-training framework for language understanding[j].2019.),将ernie进行微调作为预测模型(微调预测模型参见论文d xiao,li y k ,zhang h , et al. ernie-gram: pre-training with explicitly n-gram masked language modeling for natural language understanding[j].2020.,以及其开源的实现代码),利用其中的掩码语言建模(masked language model)的机制,将集合refset中各元素中的被定位的关键词的位置进行掩码,预测模型对被掩码的位置进行n-gram预测(详见论文d xiao,li y k ,zhang h , et al. ernie-gram: pre-training with explicitly n-gram masked language modeling for natural language understanding[j]. 2020.中的章节3.3 comprehensive n-gram prediction所述的算法),预测该被掩码的位置为关键字符的概率(likelihood)作为预测概率值;将关键字符与引文内容集合中的各个字符串数据进行比对:关键字符记为keyw,令函数prd()表示利用预测模型对被掩码的位置进行预测得到关键字符的预测概率值的函数,prd(keyw, refset(j))表示预测模型对在refset(j) 中被掩码的位置进行预测得到keyw的预测概率值,将keyw分别在refset的各元素refset(j)中的预测概率值prd(keyw, refset(j))组成的集合作为prdset,prdset中元素的数量与refset中元素的数量相同为m,prdset中元素的序号与refset中元素的序号相同为j,prd(keyw, refset(j))为prdset中
序号为j的元素;进而,匹配出若干个字符串数据:函数min为取集合中数值最小的元素的函数,函数max为取集合中数值最大的元素的函数,min(prdset)为prdset中数值最小的元素的数值,max(prdset) 为prdset中数值最大的元素的数值,定义交划值为对refset的各元素refset(j)依照其对应的预测概率值prd(keyw, refset(j))进行对比的数值,记refset(j)对应的交划值为p(j),p(j)的计算公式为,p(j)=sin(π* prd(keyw, refset(j)) /(max(prdset)
‑ꢀ
min(prdset) ) ) ,其中sin为正弦函数,对refset的各元素refset(j)进行判断其交划值是否满足约束条件p(j)》1,若存在有元素refset(j) 满足其交划值p(j)》1,则将该满足约束条件的字符串refset(j)与关键字符keyw相匹配,由此匹配出若干个refset(j);若不存在有元素refset(j)满足其交划值p(j)》1,则keyw在集合refset无匹配的元素;将对refset的各元素refset(j)进行判断其交划值是否满足约束条件p(j)》1的结果进行记录并输出。
[0022]
所述一种引文内容智能定位系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种引文内容智能定位方法实施例中的步骤,所述一种引文内容智能定位系统可以运行于桌上型计算机、笔记本、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群。
[0023]
本发明的实施例提供的一种引文内容智能定位系统,如图2所示,该实施例的一种引文内容智能定位系统包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种引文内容智能定位方法实施例中的步骤,所述处理器执行所述计算机程序运行在以下系统的单元中:文本输入单元,用于输入文本文件,读取文本文件中的字符串作为待检测字符串;分词检测单元,用于使用分词算法对待检测字符串进行分词,将待检测字符串分为若干个字符串数组;关键字符定位单元,用于分别对各个字符串数组进行定位,定位出关键字符;引文内容集合单元,用于将多个不同的字符串数据作为引文内容集合;字符匹配单元,用于将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据。
[0024]
所述一种引文内容智能定位系统可以运行于桌上型计算机、笔记本、掌上电脑及云端数据中心等计算设备中。所述一种引文内容智能定位系统包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种引文内容智能定位方法及系统的示例,并不构成对一种引文内容智能定位方法及系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种引文内容智能定位系统还可以包括输入输出设备、网络接入设备、总线等。
[0025]
所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器 (digital signal processor,dsp)、专用集成电路 (application specific integrated circuit,asic)、现场可编程门阵列 (field-programmable gate array,fpga) 或者其他可编程逻辑器件、分立元器件门电路或者晶体
管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种引文内容智能定位系统的控制中心,利用各种接口和线路连接整个一种引文内容智能定位系统的各个分区域。
[0026]
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种引文内容智能定位方法及系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card, smc),安全数字(secure digital, sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0027]
本发明提供了一种引文内容智能定位方法及系统,分别对各个字符串数组定位出关键字符,将多个不同的字符串数据作为引文内容集合,并将关键字符与引文内容集合中的各个字符串数据进行比对,匹配出若干个字符串数据,减少了匹配的时间成本,实现了快速对字符串中的引文内容进行识别并匹配指向所引述的内容的有益效果。
[0028]
尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1