CN110750977A - 一种文本相似度计算方法及*** - Google Patents
一种文本相似度计算方法及*** Download PDFInfo
- Publication number
- CN110750977A CN110750977A CN201911009970.7A CN201911009970A CN110750977A CN 110750977 A CN110750977 A CN 110750977A CN 201911009970 A CN201911009970 A CN 201911009970A CN 110750977 A CN110750977 A CN 110750977A
- Authority
- CN
- China
- Prior art keywords
- text
- difference
- feature vector
- similarity
- feature
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3347—Query execution using vector based model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例公开了一种文本相似度计算方法及***。所述方法包括:获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值;根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本;至少根据所述第一文本和所述第二文本提取对应的第一特征向量;至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量;基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。
Description
技术领域
本说明书一个或多个实施例涉及自然语言处理领域,特别涉及一种文本相似度计算方法和***。
背景技术
现有的模型进行句子相似度匹配时,更多的是从统计学的角度出发,使用深度模型对语料库进行学习,再将模型用于测试。但是,两句话的匹配中,普遍存在着一个问题,就是两句话只有少数的字、词不同时,大多数模型都会将两句话判断为相似,但是有的情况下,少数的字、词不同也会改变两句话的意思。
因此,需要提供一种文本相似度计算方法和***,在两个句子的编辑距离较小的情况下,可以正确识别两者的相似度。
发明内容
本说明书实施例的一个方面提供一种文本相似度计算方法。所述文本相似度计算方法可以包括:获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值;根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本;至少根据所述第一文本和所述第二文本提取对应的第一特征向量;至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量;基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。
本说明书实施例的另一方面提供一种文本相似度计算***,所述***可以包括:获取模块,用于获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值;差异提取模块,用于根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本;第一特征提取模块,用于至少根据所述第一文本和所述第二文本提取对应的第一特征向量;第二特征提取模块,用于至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量;相似度确定模块,用于基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。
本说明书实施例的一个方面提供一种文本相似度计算装置,所述装置可以包括至少一个处理器以及至少一个存储器;所述至少一个存储器用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令中的至少部分指令以实现如本说明书所述的文本相似度计算方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的文本相似度计算***的模块图;
图2是根据本说明书一些实施例所示的文本相似度计算方法的示例性流程图;
图3是根据本说明书一些实施例所示的文本相似度模型的示例性结构图;以及
图4是根据本说明书一些实施例所示的提取差异文本的示例性示意图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“***”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的***所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本说明书一些实施例所示的文本相似度计算***的模块图。
如图1所示,该文本相似度计算***可以包括获取模块110、差异提取模块120、第一特征提取模块130、第二特征提取模块140以及相似度确定模块150。
获取模块110可以用于获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值。关于获取第一文本和第二文本的详细描述可以参见图2,在此不再赘述。
差异提取模块120可以用于根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本。关于提取第一差异文本和第二差异文本的详细描述可以参见图2,在此不再赘述。
第一特征提取模块130可以用于至少根据所述第一文本和所述第二文本提取对应的第一特征向量。关于提取对应的第一特征向量的详细描述可以参见图2,在此不再赘述。
第二特征提取模块140可以用于至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量。关于提取对应的第二特征向量的详细描述可以参见图2,在此不再赘述。
相似度确定模块150可以用于基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。关于确定所述第一文本和所述第二文本之间的相似度的详细描述可以参见图2,在此不再赘述。
应当理解,图1所示的***及其模块可以利用各种方式来实现。例如,在一些实施例中,***及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和***可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书一个或多个实施例的***及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于候选项显示、确定***及其模块的描述,仅为描述方便,并不能把本说明书一个或多个实施例限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该***的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子***与其他模块连接。上述模块中的两个或以上模块可以合并为单个模块,所述单个模块可执行所合并的模块相应的各种功能;上述某一模块也可拆分为不同模块,拆分后的模块可分别执行不同功能。例如,在一些实施例中,图1中披露的获取模块110、差异提取模块120、第一特征提取模块130、第二特征提取模块140以及相似度确定模块150可以是***中的不同模块,也可以是一个模块实现上述两个或以上模板的功能。例如,获取模块110和差异提取模块120可以是两个模块,也可以是一个模块同时具有获取和差异提取功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书一个或多个实施例的保护范围之内。
图2是根据本说明书一些实施例所示的文本相似度计算方法的示例性流程图。
如图2所示,该文本相似度计算方法可以包括步骤210、步骤220、步骤230、步骤240以及步骤250。
步骤210,获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值。具体的,可以由获取模块110实现。
在一些实施例中,文本指由字符有顺序组成的串。在一些实施例中,字符可以包括汉字、字母、符号、数字以及其他文字。在一些实施例中,符号还可以包括标点符号、换行符号或其他标识符号。第一文本指的是本说明书定义的一个文本,“第一”用以区分本说明书后文中描述的其他文本,例如,第二文本。
在一些实施例中,编辑距离可以是:只能用‘***’、‘删除’、‘替换’三种操作的前提下,将一个文本处理为另一个文本所使用的最少操作数。编辑距离越小,说明两个文本越接近。
第一编辑距离可以指第一文本与第二文本之间存在的编辑距离。例如,将第一文本“北京公积金中心”处理为第二文本“上海公积金中心”,需要用“上海”来替换“北京”,则第一编辑距离为1。
第一编距离阈值可以是一个提前设定好的数值。在使用深度学习模型进行句子相似度匹配时,当两个文本之间的编辑距离较大,模型可以比较准确的判断两者之间的相似度。但是当两个文本之间的编辑距离较小时,模型容易将两句话判断为相似,但实际上这样得到的结果有可能不准确。在一些实施例中,可以将存在编辑距离并且所述编辑距离小于预设值的两个文本作为第一文本和第二文本。例如,第一编辑距离阈值设置为3,则可以将编辑距离小于3的两个文本作为第一文本和第二文本。
步骤220,根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本。具体的,可以由差异提取模块220实现。
在一些实施例中,如图4所示,第一差异文本可以为第一文本与第二文本比较,存在差异的字和/或词。具体的,第一差异文本可以为在第一文本中出现并且没有在第二文本中出现的字和/或词。例如,第一文本“北京公积金中心”与第二文本“上海公积金中心”比较,存在差异的词为“北京”,则第一差异文本为“北京”。
在一些实施例中,如图4所示,第二差异文本可以为第二文本与第一文本比较,存在差异的字和/或词。第二差异文本可以为在第二文本中出现并且没有在第一文本中出现的字和/或词。例如,第二文本“上海公积金中心”与第一文本“北京公积金中心”比较,存在差异的词为“上海”,则第二差异文本为“上海”。
在一些实施例中,第一差异文本还包括向前或者向后扩大差异文本。例如,第一文本“My cat is yellow”与第二文本“My dog is yellow”比较,存在差异的词为“cat”,分别向前、向后扩大一个词,则第一差异文本为“My cat is”。
在一些实施例中,第二差异文本还包括向前或者向后扩大差异文本。例如,第二文本“My dog is yellow”与第一文本“My cat is yellow”比较,存在差异的词为“dog”,分别向前、向后向扩大一个词,则第二差异文本为“My dog is”。
在一些实施例中,如果两个句子之间的差异字和/或词只存在于一个句子中,按照上述方式提取出来的差异文本只有一个,因此需要使用设定字符来表示另一个差异文本。
在一些实施例中,如果第一文本与第二文本比较,不存在差异的字和/或词,则第一差异文本可以包括至少一个设定字符。在一些实施例中,如果第二文本与第一文本比较,不存在差异的字和/或词,则第二差异文本可以包括至少一个设定字符。设定字符可以包括但不限于以下:‘#’、‘$’、‘*’、‘’等。
例如,第一文本为“我喜欢喝咖啡”,第二文本为“我不喜欢喝咖啡”,则第一差异文本可以为“#”,第二差异文本可以为“不”。
步骤230,至少根据所述第一文本和所述第二文本提取对应的第一特征向量。具体的,可以由第一特征提取模块130实现。
在一些实施例中,第一特征向量可以是指第一文本和第二文本对应的向量表示的语义特征。语义特征可以用来表示某个语句和/或词语的意义。在一些实施例中,可以使用字、词、短语、句子作为文本的语义特征。在一些实施例中,语义特征可以表示为向量的形式。例如,第一文本为“我喜欢喝红茶”,第二文本为“我喜欢喝绿茶”,则第一特征可以为:使用深度学习模型从第一文本和第二文本中提取出来的特征向量。在一些实施例中,第一特征向量也可以是其他特征。例如:字词特征、统计特征、组合特征等,不受本说明书的表述所限。
在一些实施例中,可以使用文本相似度模型,例如BERT模型提取与第一文本和第二文本对应的第一特征向量。关于文本相似度模型更多详细描述可以参见图4,在此不再赘述。
步骤240,至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量。具体的,可以由第二特征提取模块140实现。
在一些实施例中,第二特征向量可以是第一差异文本和第二差异文本对应的向量表示的语义特征。例如,第一差异文本为“红茶”,第二差异文本为“绿茶”,则第二特征向量可以为:使用深度学习模型从第一差异文本和第二差异文本中提取出来的特征向量。
在一些实施例中,可以使用文本相似度模型,例如BERT模型提取与第一差异文本和第二差异文本对应的第二特征向量。关于文本相似度模型的更多详细描述可以参见图4,在此不再赘述。
步骤250,基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。具体的,可以由相似度确定模块150实现。
在一些实施例中,可以对第一特征向量和第二特征向量做线性变换,获得第三特征向量。线性变换是指线性空间到其自身的线性映射。线性映射是指一个向量空间到另一个向量空间的映射。线性变换可以包括但不限于以下:求和与首尾拼接。
例如,对100维的第一特征向量和100维的第二特征向量做求和操作,获得100维的第三特征向量。又例如,将100维的第一特征向量和100维的第二特征向量首尾拼接,获得200维的第三特征向量。
通过以上示例的线性变换,在第三特征向量中增加了少量差异字和/或词的权重,使得模型可以关注到少量的差异字和/或词对文本语义的影响。
例如:第一文本“My cat is yellow”与第二文本“My dog is yellow”对应第一特征向量,第一差异文本“cat”与第二差异文本“dog”对应第二特征向量。通过上述线性变换,第三特征向量既包含了第一特征向量,也包含了第二特征向量。相比第一特征向量,第三特征向量中词“cat”和“dog”对应的语义特征在整个特征向量中的权重增加了。
在一些实施例中,可以基于所述第三特征向量,使用文本相似度模型确定所述第一文本和所述第二文本之间的相似度。关于文本相似度模型的更多详细描述可以参见图3,在此不再赘述。
应当注意的是,上述有关流程200的描述仅仅是为了示例和说明,而不限定本说明书一个或多个实施例的适用范围。对于本领域技术人员来说,在本说明书一个或多个实施例的指导下可以对流程200进行各种修正和改变。然而,这些修正和改变仍在本说明书一个或多个实施例的范围之内。例如,步骤220和步骤230可以交换执行顺序。
图3是根据本说明书一些实施例所示的文本相似度模型的示例性结构图。
在一些实施例中,可以利用深度学习模型来判断两个文本的相似度。深度学习模型可以包括但不限于以下:BERT模型(Bidirectional Encoder Representation fromTransformers)循环神经网络模型(Recurrent Neural Network,RNN)和卷积神经网络模型(Convolutional NeuralNetworks,CNN)等。
在一些实施例中,可以使用文本相似度模型来确定所述第一文本和所述第二文本之间的相似度。
下面以BERT模型做为文本相似度模型,同时BERT模型的核心层(隐藏层)作为特征提取层为例进行说明。
BERT模型由很多个transformer Encoder一层一层的堆叠起来,每个TransformerEncoder可以理解为将输入文本中各个字的语义向量转化为相同长度的增强语义(包含了整个上下文语义)向量的一个黑盒。例如,BERT模型将输入的文本转换为100维的语义向量,该语义向量被输入到Transformer Encoder后,Transformer Encoder输出同样100维的增加了上下文语境的语义向量。
在BERT的核心层(多个transformer Encoder)之后,按照需求再添加一个输出层对已经提取的特征向量做处理,就可以用于各类自然语言处理任务。例如,核心层之后,再添加一个全连接层,就可以做文本相似度判断。
如图3所示,使用特征提取模型提取文本特征的过程包括:
步骤310,将第一文本和第二文本输入BERT模型,使用BERT模型提取所述第一特征。
BERT模型具有分词、自转向量等功能,所以输入可以为经过预处理的文本。例如:第一文本为“北京公积金中心”,第二文本为“上海公积金中心”。可以在两个文本中间加分隔符【SEP】,得到拼接文本“北京的公积金中心【SEP】上海公积金中心”,将该拼接文本作为BERT模型的输入。
在一些实施例中,将特征提取层输出的特征向量作为第一特征向量。
步骤320,将步骤220中提取的第一差异文本和第二差异文本输入BERT模型,使用BERT模型提取第二特征。
在一些实施例中,对于步骤310中所述的第一文本和第二文本,相应的第一差异文本为“北京”,第二差异文本为“上海”。将第一差异文本和第二差异文本经过预处理得到拼接文本“北京【SEP】上海”,将该拼接文本作为BERT模型的输入。
在一些实施例中,将特征提取层输出的特征向量作为第二特征向量。
步骤330,对第一特征向量和第二特征向量做线性变换,获得第三特征向量。
关于对第一特征向量和第二特征向量做线性变换,获得第三特征向量详见图2中的相关描述,在此不再赘述。
步骤340,将第三特征向量输入BERT模型的输出层,获取BERT模型输出层输出的相似度。
在一些实施例中,可以将步骤330中获取的第三特征向量输入BERT模型的由全连接层构成的输出层,将该输出层输出的分数表示的相似度作为第一文本和第二文本的相似度。
本说明书一个或多个实施例可能带来的有益效果包括但不限于:有效提高深度学习模型对于两个存在较小编辑距离文本的相似度识别的准确率。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书一个或多个实施例的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书一个或多个实施例进行各种修改、改进和修正。该类修改、改进和修正在本说明书一个或多个实施例中被建议,所以该类修改、改进、修正仍属于本说明书一个或多个示范实施例的精神和范围。
同时,本说明书一个或多个实施例使用了特定词语来描述本说明书一个或多个实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书一个或多个实施例的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书一个或多个实施例的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“***”。此外,本说明书一个或多个实施例的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行***、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书一个或多个实施例各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书一个或多个实施例所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书一个或多个实施例流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书一个或多个实施例实质和范围的修正和等价组合。例如,虽然以上所描述的***组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的***。
同理,应当注意的是,为了简化本说明书一个或多个实施例披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书一个或多个实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (21)
1.一种文本相似度计算方法,所述方法包括:
获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值;
根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本;
至少根据所述第一文本和所述第二文本提取对应的第一特征向量;
至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量;
基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。
2.根据权利要求1所述的方法,其中,所述第一差异文本为所述第一文本与所述第二文本比较,存在差异的字和/或词;所述第二差异文本为所述第二文本与所述第一文本比较,存在差异的字和/或词。
3.根据权利要求2所述的方法,其中,所述第一差异文本和/或所述第二差异文本还包括向前或者向后扩大差异文本。
4.根据权利要求3所述的方法,其中,如果所述第一文本与所述第二文本比较,不存在所述差异的字和/或词,则所述第一差异文本包括至少一个设定字符;如果所述第二文本与所述第一文本比较,不存在所述差异的字和/或词,则所述第二差异文本包括至少一个设定字符。
5.根据权利要求1所述的方法,其中,所述至少根据所述第一文本和所述第二文本提取对应的第一特征向量包括:
将所述第一文本和所述第二文本输入文本相似度模型中;
获取所述文本相似度模型特征提取层输出的至少一个向量,做为第一特征向量。
6.根据权利要求5所述的方法,其中,所述至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量包括:
将所述第一差异文本和所述第二差异文本输入所述文本相似度模型中;
获取所述文本相似度模型特征提取层输出的至少一个向量,做为第二特征向量。
7.根据权利要求6所述的方法,其中,所述基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度包括:
将所述第三特征向量输入所述文本相似度模型的输出层,获取所述输出层输出的所述相似度。
8.根据权利要求7所述的方法,其中,所述文本相似度模型为BERT模型。
9.根据权利要求7所述的方法,其中,所述基于所述第一特征向量和所述第二特征向量,获得第三特征向量包括:
对所述第一特征向量和所述第二特征向量做线性变换,获得所述第三特征向量。
10.根据权利要求9所述的方法,其中,所述线性变换包括以下至少一种:
求和与首尾拼接。
11.一种文本相似度计算***,所述***包括:
获取模块,用于获取第一文本和第二文本;所述第一文本和所述第二文本存在第一编辑距离,所述第一编辑距离小于预设第一编辑距离阈值;
差异提取模块,用于根据所述第一文本和所述第二文本之间的差异,提取第一差异文本和第二差异文本;
第一特征提取模块,用于至少根据所述第一文本和所述第二文本提取对应的第一特征向量;
第二特征提取模块,用于至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量;
相似度确定模块,用于基于所述第一特征向量和所述第二特征向量,获得第三特征向量;并基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度。
12.根据权利要求11所述的***,其中,所述第一差异文本为所述第一文本与所述第二文本比较,存在差异的字和/或词;所述第二差异文本为所述第二文本与所述第一文本比较,存在差异的字和/或词。
13.根据权利要求12所述的***,其中,所述第一差异文本和/或所述第二差异文本还包括向前或者向后扩大差异文本。
14.根据权利要求13所述的***,其中,如果所述第一文本与所述第二文本比较,不存在所述差异的字和/或词,则所述第一差异文本包括至少一个设定字符;如果所述第二文本与所述第一文本比较,不存在所述差异的字和/或词,则所述第二差异文本包括至少一个设定字符。
15.根据权利要求11所述的***,其中,所述至少根据所述第一文本和所述第二文本提取对应的第一特征向量包括:
将所述第一文本和所述第二文本输入文本相似度模型中;
获取所述文本相似度模型特征提取层输出的至少一个向量,做为第一特征向量。
16.根据权利要求15所述的***,其中,所述至少根据所述第一差异文本和所述第二差异文本提取对应的第二特征向量包括:
将所述第一差异文本和所述第二差异文本输入所述文本相似度模型中;
获取所述文本相似度模型特征提取层输出的至少一个向量,做为第二特征向量。
17.根据权利要求16所述的***,其中,所述基于所述第三特征向量,确定所述第一文本和所述第二文本之间的相似度包括:
将所述第三特征向量输入所述文本相似度模型的输出层,获取所述输出层输出的所述相似度。
18.根据权利要求17所述的***,其中,所述文本相似度模型为BERT模型。
19.根据权利要求17所述的***,其中,所述基于所述第一特征向量和所述第二特征向量,获得第三特征向量包括:
对所述第一特征向量和所述第二特征向量做线性变换,获得所述第三特征向量。
20.根据权利要求19所述的***,其中,所述线性变换包括以下至少一种:
求和与首尾拼接。
21.一种文本相似度计算装置,其中,所述装置包括至少一个处理器以及至少一个存储器;
所述至少一个存储器用于存储计算机指令;
所述至少一个处理器用于执行所述计算机指令中的至少部分指令以实现如权利要求1~10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911009970.7A CN110750977B (zh) | 2019-10-23 | 2019-10-23 | 一种文本相似度计算方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911009970.7A CN110750977B (zh) | 2019-10-23 | 2019-10-23 | 一种文本相似度计算方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110750977A true CN110750977A (zh) | 2020-02-04 |
CN110750977B CN110750977B (zh) | 2023-06-02 |
Family
ID=69279478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911009970.7A Active CN110750977B (zh) | 2019-10-23 | 2019-10-23 | 一种文本相似度计算方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750977B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159415A (zh) * | 2020-04-02 | 2020-05-15 | 成都数联铭品科技有限公司 | 序列标注方法及***、事件要素抽取方法及*** |
CN111368081A (zh) * | 2020-03-03 | 2020-07-03 | 支付宝(杭州)信息技术有限公司 | 一种精选文本内容确定方法和*** |
CN111401076A (zh) * | 2020-04-09 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 一种文本的相似度确定方法、装置和电子设备 |
CN111666755A (zh) * | 2020-06-24 | 2020-09-15 | 深圳前海微众银行股份有限公司 | 一种复述句识别的方法及装置 |
CN111858925A (zh) * | 2020-06-04 | 2020-10-30 | 国家计算机网络与信息安全管理中心 | 电信网络诈骗事件的剧本提取方法以及装置 |
CN112528894A (zh) * | 2020-12-17 | 2021-03-19 | 科大讯飞股份有限公司 | 一种差异项判别方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006139708A (ja) * | 2004-11-15 | 2006-06-01 | Ricoh Co Ltd | テキストデータ類似度算出方法、テキストデータ類似度算出装置及びテキストデータ類似度算出プログラム |
CN103034627A (zh) * | 2011-10-09 | 2013-04-10 | 北京百度网讯科技有限公司 | 计算句子相似度的方法和装置以及机器翻译的方法和装置 |
US20140101087A1 (en) * | 2012-10-08 | 2014-04-10 | Korea Institute Of Science And Technology Information | Method of evaluating value for referenced information and apparatus thereof |
CN104850537A (zh) * | 2014-02-17 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 对文本内容进行筛选的方法及装置 |
US20170061207A1 (en) * | 2015-09-02 | 2017-03-02 | Fujitsu Limited | Apparatus and method for document image orientation detection |
US20170206435A1 (en) * | 2016-01-15 | 2017-07-20 | Adobe Systems Incorporated | Embedding Space for Images with Multiple Text Labels |
CN108170684A (zh) * | 2018-01-22 | 2018-06-15 | 京东方科技集团股份有限公司 | 文本相似度计算方法及***、数据查询***和计算机产品 |
WO2018153217A1 (zh) * | 2017-02-27 | 2018-08-30 | 芋头科技(杭州)有限公司 | 一种句子相似度判断方法 |
-
2019
- 2019-10-23 CN CN201911009970.7A patent/CN110750977B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006139708A (ja) * | 2004-11-15 | 2006-06-01 | Ricoh Co Ltd | テキストデータ類似度算出方法、テキストデータ類似度算出装置及びテキストデータ類似度算出プログラム |
CN103034627A (zh) * | 2011-10-09 | 2013-04-10 | 北京百度网讯科技有限公司 | 计算句子相似度的方法和装置以及机器翻译的方法和装置 |
US20140101087A1 (en) * | 2012-10-08 | 2014-04-10 | Korea Institute Of Science And Technology Information | Method of evaluating value for referenced information and apparatus thereof |
CN104850537A (zh) * | 2014-02-17 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 对文本内容进行筛选的方法及装置 |
US20170061207A1 (en) * | 2015-09-02 | 2017-03-02 | Fujitsu Limited | Apparatus and method for document image orientation detection |
US20170206435A1 (en) * | 2016-01-15 | 2017-07-20 | Adobe Systems Incorporated | Embedding Space for Images with Multiple Text Labels |
WO2018153217A1 (zh) * | 2017-02-27 | 2018-08-30 | 芋头科技(杭州)有限公司 | 一种句子相似度判断方法 |
CN108170684A (zh) * | 2018-01-22 | 2018-06-15 | 京东方科技集团股份有限公司 | 文本相似度计算方法及***、数据查询***和计算机产品 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111368081A (zh) * | 2020-03-03 | 2020-07-03 | 支付宝(杭州)信息技术有限公司 | 一种精选文本内容确定方法和*** |
CN111159415A (zh) * | 2020-04-02 | 2020-05-15 | 成都数联铭品科技有限公司 | 序列标注方法及***、事件要素抽取方法及*** |
CN111159415B (zh) * | 2020-04-02 | 2020-07-14 | 成都数联铭品科技有限公司 | 序列标注方法及***、事件要素抽取方法及*** |
CN111401076A (zh) * | 2020-04-09 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 一种文本的相似度确定方法、装置和电子设备 |
CN111401076B (zh) * | 2020-04-09 | 2023-04-25 | 支付宝(杭州)信息技术有限公司 | 一种文本的相似度确定方法、装置和电子设备 |
CN111858925A (zh) * | 2020-06-04 | 2020-10-30 | 国家计算机网络与信息安全管理中心 | 电信网络诈骗事件的剧本提取方法以及装置 |
CN111858925B (zh) * | 2020-06-04 | 2023-08-18 | 国家计算机网络与信息安全管理中心 | 电信网络诈骗事件的剧本提取方法以及装置 |
CN111666755A (zh) * | 2020-06-24 | 2020-09-15 | 深圳前海微众银行股份有限公司 | 一种复述句识别的方法及装置 |
CN112528894A (zh) * | 2020-12-17 | 2021-03-19 | 科大讯飞股份有限公司 | 一种差异项判别方法及装置 |
CN112528894B (zh) * | 2020-12-17 | 2024-05-31 | 科大讯飞股份有限公司 | 一种差异项判别方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110750977B (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110750977A (zh) | 一种文本相似度计算方法及*** | |
Katti et al. | Chargrid: Towards understanding 2d documents | |
CN109190110B (zh) | 一种命名实体识别模型的训练方法、***及电子设备 | |
US11163956B1 (en) | System and method for recognizing domain specific named entities using domain specific word embeddings | |
CN109408824B (zh) | 用于生成信息的方法和装置 | |
US11327971B2 (en) | Assertion-based question answering | |
CN111046660B (zh) | 一种识别文本专业术语的方法及装置 | |
CN111324739B (zh) | 一种文本情感分析方法及*** | |
US11763588B2 (en) | Computing system for extraction of textual elements from a document | |
CN111651994B (zh) | 一种信息抽取方法、装置、电子设备和存储介质 | |
CN113657098B (zh) | 文本纠错方法、装置、设备及存储介质 | |
CN110991185A (zh) | 一种文章中实体的属性抽取方法及装置 | |
US20230260310A1 (en) | Systems and methods for processing documents | |
Lysak et al. | Optimized Table Tokenization for Table Structure Recognition | |
CN110956043A (zh) | 基于别名标准化的领域专业词汇词嵌入向量训练方法、***及介质 | |
CN115130437B (zh) | 一种文档智能填写方法、装置及存储介质 | |
CN111597302A (zh) | 文本事件的获取方法、装置、电子设备及存储介质 | |
CN111597826B (zh) | 一种辅助翻译中处理术语的方法 | |
CN115563278A (zh) | 一种句子文本的问题分类处理方法及装置 | |
CN110866390B (zh) | 中文语法错误的识别方法、装置、计算机设备和存储介质 | |
EP3757824A1 (en) | Methods and systems for automatic text extraction | |
CN110909544A (zh) | 一种数据处理方法和装置 | |
CN117076596B (zh) | 应用人工智能的数据存储方法、装置及服务器 | |
CN117633214B (zh) | 一种文章大纲生成方法、装置和存储介质 | |
US20220138461A1 (en) | Storage medium, vectorization method, and information processing apparatus |
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 |