基于数字指纹的文本相似性的识别方法、存储介质及装置与流程

文档序号:17950900发布日期:2019-06-19 00:01阅读:216来源:国知局
基于数字指纹的文本相似性的识别方法、存储介质及装置与流程

本发明涉及文本相似度识别的方法,特别涉及基于数字指纹的文本相似性的识别方法、存储介质及装置。



背景技术:

随着互联网的飞速发展,信息技术的发展也突飞猛进,各类信息资源的数量以惊人的速度增长,如何通过精确地计算文本间的相似度快速而又准确地检索出信息是当前亟待解决的问题。

文本相似度的计算方法在计算机技术的各个领域获得应用,例如在文本检索领域(textretrieval),文本相似度可以改善搜索引擎的召回率(recall)和准确度(precision);在文本挖掘领域(textmining),文本相似度作为一个测量方法用来发现文本数据库中潜在的知识;在基于网页的图像检索(imageretrieval)领域,可以利用图像周围的描述性短文本来提高准确率。此外,文本相似度计算方法也可以应用到其他一些研究领域,包括文本概括(textsummarization),文本分类(textcategorization)和机器翻译(machinetranslation)等领域。

其中,专利作为记录人类成果的载体,包含了大量的科技成果和创新技术。科学技术的快速发展使得每年的专利申请量急剧增加。传统的检索方式通过检索词进行匹配返回的结果,一般是以检索词出现的数量作为专利的相关性,并没有考虑到专利本身所包含的语义信息。专利审查的本质是审查专利相似度高的相关专利,这其中,最重要的一点就是计算专利文本相似度。文本相似度,一般计算方法是利用向量空间模型对文本表示,之后直接在向量空间中计算向量相似度作为文本相似度。

文本相似度方法主要可以分为两类:一种是利用向量空间模型将文本转化成向量的形式,再进行计算,一种是利用语义词典法表示不同长短文本之间的联系,通过关键词匹配数量来反映文本间的相似度。现有技术的计算中文专利文本的相似度的方法存在语义信息丢失的问题,且现有技术对中文文本相似度的计算不准确,计算结果的正确率和召回率较低,不能准确反映专利文本的相似度,不能满足实际应用的需要。



技术实现要素:

本发明的第一目的是提供一种基于数字指纹的文本相似性的识别方法,根据数字指纹以及卷积神经网络实现对专利文本相似度的判断,准确率更高。

本发明的上述技术目的是通过以下技术方案得以实现的:

一种基于数字指纹的文本相似性的识别方法,包括:

获取两个文本数据信息,分别定义为基准文本数据信息以及比对文本数据信息;

对文本数据信息进行文本预处理并通过哈希函数以形成输入数据向量信息;从预先设置的数据库中,查找与所述文本数据信息相互对应的文本语意信息并通过哈希函数以形成特征数据向量信息;根据输入数据向量信息与特征数据向量信息相互的对应关系以形成矩阵数据信息;

根据所预先训练好的卷积神经网络模型对矩阵数据信息进行处理分析以形成相似数据信息;

根据基准文本数据信息所对应的相似数据信息以及对文本数据信息所对应的相似数据信息通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度。

采用上述方案,需要对两个文本数据信息进行判定相似性时,先对文本进行处理并进行编码,同时对文本内词汇或句子等对应的多重语音也进行编码,从而将两者关联之后形成一个矩阵数据,即将文字信息转化为类似于图片的矩阵数据,之后通过所训练好的卷积神经网络进行数据运算以判断两者的相似度,根据矩阵数据以及神经网络的计算能够更加精确的获取到两个文本的相似度,使得判断的准确度更高。

作为优选,对文本数据信息进行预处理的方法如下:

对文本数据信息进行归一化处理以获取第一数据信息;

对第一数据信息通过哈希函数进行散列值计算以获取散列值序列信息;

根据所预设的分隔规则以将散列值序列信息作为输入数据向量信息。

采用上述方案,由于不同的文本数据信息具有不同的格式,所以需要先将这些文本数据信息进行碎片化并规整至同一格式,使得该文本能够被程序识别,便于后续数据的读取以及运算。

作为优选,所述哈希函数设置有若干,根据哈希运算公式以形成高维矩阵数据信息,公式如下:

hash(xty)yi·z;yi表示对第i个哈希维进行运算;

其中,输入数据向量信息记为x1,x2,x3,…,xn;特征数据向量信息记为z1,z2,z3,…,zm;根据所预设的若干哈希函数以形成的运算数据向量信息记为y1,y2,y3,…,yp。

采用上述方案,建立哈希维能够进一步形成高维矩阵数据信息,形成三维矩阵,避免只有一个哈希运算函数而造成准确率较低的问题,因为哈希函数对不同的数据可能产生相同的运算结果,所以当某部分数据相同时,可以采用备选的运算方式区分数据来提高准确率,使得整个数据稳定性更高。

作为优选,形成相似数据信息的方法如下:

根据所预先训练好的卷积神经网络模型对高维矩阵数据信息处理以获取所需特征数据信息;

将所获取的所需特征数据信息输入至所预设的激活函数中将线性数据转变为非线性数据以形成修改特征数据信息;

将修改特征数据信息经过池化层的均值池化后输出池化特征数据信息;

将池化特征数据信息经过全连接层进行关联后以形成相似数据信息。

作为优选,所述所预先训练好的卷积神经网络模型包括八个卷积层;八个所述卷积层分别对应八个所预先训练好的卷积神经网络模型。

采用上述方案,根据训练好的卷积神经网络模型将所需特征数据信息进行筛选,并经过一系列的数据处理之后来形成相似数据信息,以便于后续的对于两个文本之间的判断;同时卷积层设置有八层,且每个卷积层均设置有相应的卷积神经网络模型,使得能够逐层筛选所需特征数据信息,提高获取相关特征数据信息的准确性。

作为优选,训练的卷积神经网络模型的方法如下:

构建rpn卷积神经网络;

对rpn卷积神经网络进行初始化,用不同的小随机数初始化网络中待训练参数;

将不同相似度所对应的两个文本数据信息作为输入的训练样本数据,对输入的训练样本数据赋予多个尺度和多个比例的基准框,通过向初始化后的rpn卷积神经网络中输入训练样本数据的基准框来训练rpn,使用反向传播bp算法,调整rpn卷积神经网络参数,使损失函数值最小;

在训练样本数据上运用训练好的rpn卷积神经网络模型,得到训练样本集的相似度粗选框。

采用上述方案,根据多个不同相似度的文本数据信息作为基础的训练样本数据,通过大量的数据训练来获取到最优选的相似度粗选框,以使得后续在通过相似度粗选框来选取所需特征数据信息的时候更加的精确,提高整个精神网络的准确性。

作为优选,通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度的方法如下:

定义基准文本数据信息所输出的数据为g1(x1),对文本数据信息所输出的数据为g2(x2),获取相似度的损失函数公式如下:

l(x1,x2)=||g1(x1)-g2(x2)||

其中,l(x1,x2)即为基准文本数据信息以及比对文本数据信息之间的相似度。

采用上述方案,对两个文本之间的相似度进行判断,该判断的方式基于两个数据之间的接近程度,即若两个数据之间的差值较小,则说明两者比较相似,若两个数据之间的差值较大,则说明两者相似度较低。

本发明的第二目的是提供一种存储介质,能够存储相应的指令集,实现对专利文本相似度的判断,准确率更高。

本发明的上述技术目的是通过以下技术方案得以实现的:

一种存储介质,其存储有指令集,所述指令集适于一处理器加载并执行如下处理,包括:

获取两个文本数据信息,分别定义为基准文本数据信息以及比对文本数据信息;

对文本数据信息进行文本预处理并通过哈希函数以形成输入数据向量信息;从预先设置的数据库中,查找与所述文本数据信息相互对应的文本语意信息并通过哈希函数以形成特征数据向量信息;根据输入数据向量信息与特征数据向量信息相互的对应关系以形成矩阵数据信息;

根据所预先训练好的卷积神经网络模型对矩阵数据信息进行处理分析以形成相似数据信息;

根据基准文本数据信息所对应的相似数据信息以及对文本数据信息所对应的相似数据信息通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度。

采用上述方案,需要对两个文本数据信息进行判定相似性时,先对文本进行处理并进行编码,同时对文本内词汇或句子等对应的多重语音也进行编码,从而将两者关联之后形成一个矩阵数据,即将文字信息转化为类似于图片的矩阵数据,之后通过所训练好的卷积神经网络进行数据运算以判断两者的相似度,根据矩阵数据以及神经网络的计算能够更加精确的获取到两个文本的相似度,使得判断的准确度更高。

本发明的第三目的是提供一种识别装置,实现对专利文本相似度的判断,准确率更高。

本发明的上述技术目的是通过以下技术方案得以实现的:

一种识别装置,包括:

处理器,用于加载并执行指令集;以及

如上述的存储介质。

采用上述方案,需要对两个文本数据信息进行判定相似性时,先对文本进行处理并进行编码,同时对文本内词汇或句子等对应的多重语音也进行编码,从而将两者关联之后形成一个矩阵数据,即将文字信息转化为类似于图片的矩阵数据,之后通过所训练好的卷积神经网络进行数据运算以判断两者的相似度,根据矩阵数据以及神经网络的计算能够更加精确的获取到两个文本的相似度,使得判断的准确度更高。

综上所述,本发明具有以下有益效果:能够更加准确的判定两个文本的相似度。

附图说明

图1为基于数字指纹的文本相似性的识别方法的流程框图;

图2为对文本数据信息进行预处理的方法的流程框图;

图3为对文本数据信息进行归一化处理的方法的流程框图;

图4为高维矩阵数据信息的数据对应图;

图5为形成相似数据信息的方法的流程框图;

图6为激活函数的示意图;

图7为均值池化的示意图;

图8为训练的卷积神经网络模型的方法的流程框图。

具体实施方式

以下结合附图对本发明作进一步详细说明。

本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。

本发明实施例提供一种基于数字指纹的文本相似性的识别方法,包括:获取两个文本数据信息,分别定义为基准文本数据信息以及比对文本数据信息;对文本数据信息进行文本预处理并通过哈希函数以形成输入数据向量信息;从预先设置的数据库中,查找与所述文本数据信息相互对应的文本语意信息并通过哈希函数以形成特征数据向量信息;根据输入数据向量信息与特征数据向量信息相互的对应关系以形成矩阵数据信息;根据所预先训练好的卷积神经网络模型对矩阵数据信息进行处理分析以形成相似数据信息;根据基准文本数据信息所对应的相似数据信息以及对文本数据信息所对应的相似数据信息通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度。

本发明实施例中,需要对两个文本数据信息进行判定相似性时,先对文本进行处理并进行编码,同时对文本内词汇或句子等对应的多重语音也进行编码,从而将两者关联之后形成一个矩阵数据,即将文字信息转化为类似于图片的矩阵数据,之后通过所训练好的卷积神经网络进行数据运算以判断两者的相似度,根据矩阵数据以及神经网络的计算能够更加精确的获取到两个文本的相似度,使得判断的准确度更高。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。

下面结合说明书附图对本发明实施例作进一步详细描述。

请参见图1,本发明实施例提供一种基于数字指纹的文本相似性的识别方法,所述方法的主要流程描述如下。

如图1所示:

步骤1000:获取两个文本数据信息。

其中,分别定义为基准文本数据信息以及比对文本数据信息;两个文本数据信息可以为一个完整的文本文件,也可以是一段文本,也可以是一句话,也可以是一个词语,本实施例中优选为完整的专利文本文件。

步骤2000:对文本数据信息进行文本预处理并通过哈希函数以形成输入数据向量信息。

其中,由于不同的文本数据信息具有不同的格式,所以需要先将这些文本数据信息进行碎片化并规整至同一格式,使得该文本能够被程序识别,便于后续数据的读取以及运算。如图2所示,对文本数据信息进行预处理的方法如下:

步骤2100:对文本数据信息进行归一化处理以获取第一数据信息。

其中,如图3所示,对文本数据信息进行归一化处理的方法如下:

步骤2110:对可疑文本进行格式转换。

其中,将word、pdf等格式的文本通过程序识别,统一格式并保存在数据库内。为数据库统一结构,其中属性f_article_title为每篇文本标题,f_after_content为去除html标签的文本全文,本方法主要使用属性f_after_content的全文信息。

步骤2120:采用正则表达式的方法去除噪声。

其中,正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。

步骤2130:将英语字母归一化。

其中,归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为标量。在多种计算中都经常用到这种方法,本实施例中是为了防止字母大小写的干扰,将大写字母全部转化为小写字母。

步骤2140:通过停用词表,过滤掉文本中的停用词。

其中,停用词是指在信息检索中,为节省存储空间和提高搜索效率,在处理自然语言数据(或文本)之前或之后会自动过滤掉某些字或词,这些字或词即被称为stopwords(停用词)。这些停用词都是人工输入、非自动化生成的,生成后的停用词会形成一个停用词表。但是,并没有一个明确的停用词表能够适用于所有的工具。甚至有一些工具是明确地避免使用停用词来支持短语搜索的。

通过上述步骤是对文本进行格式转换,过滤待检测文本中的数字、停用词、介词和特殊符号等噪声,将单词归一化,去除英语字母大小写的干扰等等处理之后形成第一数据信息。

步骤2200:对第一数据信息通过哈希函数进行散列值计算以获取散列值序列信息。

其中,哈希函数可以采用很多不同的函数,例如,crc32运算方式、tomas.wang运算方式、pjw运算方式;md5运算方式、sha256运算方式。

crc32运算方式是一种多项式编码技术,生成速度比较快,优先选择,具体步骤如下:

选定一个生成多项式,具体如下:

g-32=100000100110000010001110110110111。

数据d左移k位,右侧补零(其中k为生成多项式最高次幂)。

移位补零后的数据g进行模2除法。

得到的余数即为crc码;具体计算公式如下:

tomas.wang运算方式是一种移位哈希,避免的高代价的乘法运算作,具体步骤如下:

数据左移n位。

数据右移m位。

重复第1步和第2步一定次数。

pjw运算方式计算代价最高,步骤如下:

定义一个数据h左移4位加上读入的数据。

判断高4位是否为0,不全为0则利用最高8位与其它位混淆。

将最高4位改写为0,继续第1步循环,直到数据末尾。

其中,md5运算方式、sha256运算方式均为现有的哈希算法方式,故不在此赘述。

步骤2300:根据所预设的分隔规则以将散列值序列信息作为输入数据向量信息。

其中,分隔规则为以每一个句子作为一个基本单位,即根据逗号、句号、封号等标点符合作为一个分隔点,根据这些分隔点以将散列值序列信息进行分隔排列之后作为相应的输入数据向量信息。

步骤3000:从预先设置的数据库中,查找与所述文本数据信息相互对应的文本语意信息并通过哈希函数以形成特征数据向量信息。

其中,针对文本数据信息进行归一化处理后获取的第一数据信息,在所预设的数据库中查收与第一数据信息对应的文本语意信息,该文本语意信息可以为在不同语境下的语意,将每种语意通过哈希函数进行编码,具体的哈希函数进行编码的方式可以是步骤2200中的三种哈希函数,也可以是其他的的哈希函数;经过哈希函数编码之后形成对应的特征数据向量信息。

步骤4000:根据输入数据向量信息与特征数据向量信息相互的对应关系以形成矩阵数据信息。

其中,输入数据向量信息与特征数据向量信息之间存在对应关系,即一个输入数据向量信息可以对应到一个特征数据向量信息或多个特征数据向量信息,故基于这种对应关系以建立相应的矩阵数据信息。

如图4所示,在本实施例中,将哈希函数设置有若干,根据哈希运算公式以形成高维矩阵数据信息,公式如下:

hash(xty)yi·z;yi表示对第i个哈希维进行运算。

其中,输入数据向量信息记为x1,x2,x3,…,xn;特征数据向量信息记为z1,z2,z3,…,zm;根据所预设的若干哈希函数以形成的运算数据向量信息记为y1,y2,y3,…,yp。

假设对一个专利中出现的短语“学前教育”进行数据编码,该短语既可表示一种行业,又可表示一种行为,因此从不同的语境看具有不同的特征,计算示例如下:

假设其输入数据向量信息的编码为x[3022],现有的特征数据向量信息编码为z[11],选用两种哈希运算y[h1h2]

进行矩阵运算后得到以下数据:

进一步与y矩阵运算映射到特征空间得到三维的矩阵:

[[30h130h2][22h122h2],[30h130h2][22h122h2]]

其中hn表示进行对应的哈希运算,生成识别指纹。

通过多个哈希运算的结合以使得整个矩阵数据变成多维矩阵数据,因为哈希函数对不同的数据可能产生相同的运算结果,所以当某部分数据相同时,可以采用备选的运算方式区分数据来提高准确率,使得整个数据稳定性更高。

步骤5000:根据所预先训练好的卷积神经网络模型对矩阵数据信息进行处理分析以形成相似数据信息。

其中,如图5所示,形成相似数据信息的方法如下:

步骤5110:根据所预先训练好的卷积神经网络模型对高维矩阵数据信息处理以获取所需特征数据信息。

其中,所预先训练好的卷积神经网络模型包括八个卷积层;八个所述卷积层分别对应八个所预先训练好的卷积神经网络模型。

步骤5120:将所获取的所需特征数据信息输入至所预设的激活函数中将线性数据转变为非线性数据以形成修改特征数据信息。

其中,如图6所示,激活函数优选为relu(x)=

步骤5130:将修改特征数据信息经过池化层的均值池化后输出池化特征数据信息。

其中,如图7所示,均值池化即把数据矩阵按3x3的格子合并成一个数,合并采用的方式是3x3内数字取平均值。如一个9x9的矩阵,可以分成9个3x3的矩阵,全部池化后就变成了3x3的矩阵。池化的目的就是减少数据量.

步骤5140:将池化特征数据信息经过全连接层进行关联后以形成相似数据信息。

如图8所示,训练的卷积神经网络模型的方法如下:

步骤5210:构建rpn卷积神经网络;

步骤5220:对rpn卷积神经网络进行初始化,用不同的小随机数初始化网络中待训练参数;

步骤5230:将不同相似度所对应的两个文本数据信息作为输入的训练样本数据,对输入的训练样本数据赋予多个尺度和多个比例的基准框,通过向初始化后的rpn卷积神经网络中输入训练样本数据的基准框来训练rpn,使用反向传播bp算法,调整rpn卷积神经网络参数,使损失函数值最小;

步骤5240:在训练样本数据上运用训练好的rpn卷积神经网络模型,得到训练样本集的相似度粗选框。

其中,根据多个不同相似度的文本数据信息作为基础的训练样本数据,通过大量的数据训练来获取到最优选的相似度粗选框,以使得后续在通过相似度粗选框来选取所需特征数据信息的时候更加的精确,提高整个精神网络的准确性。

步骤6000:根据基准文本数据信息所对应的相似数据信息以及对文本数据信息所对应的相似数据信息通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度。

其中,通过相似度函数以判断基准文本数据信息以及比对文本数据信息之间的相似度的方法如下:

定义基准文本数据信息所输出的数据为g1(x1),对文本数据信息所输出的数据为g2(x2),获取相似度的损失函数公式如下:

l(x1,x2)=||g1(x1)-g2(x2)||

其中,l(x1,x2)即为基准文本数据信息以及比对文本数据信息之间的相似度。通过对两个文本之间的相似度进行判断,该判断的方式基于两个数据之间的接近程度,即若两个数据之间的差值较小,则说明两者比较相似,若两个数据之间的差值较大,则说明两者相似度较低。

本发明实施例提供一种存储介质,所述存储介质存储有指令集,该指令集适于一处理器加载并执行包括图1-图8。流程中所述的各个步骤。

所述计算机存储介质例如包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

基于同一发明构思,本发明实施例提供一种识别装置,包括:处理器,用于加载并执行指令集;以及上述的存储介质。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,不应理解为对本发明的限制。本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1