CN113268567A - 多属性文本匹配方法、装置、设备和存储介质 - Google Patents
多属性文本匹配方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113268567A CN113268567A CN202110605479.1A CN202110605479A CN113268567A CN 113268567 A CN113268567 A CN 113268567A CN 202110605479 A CN202110605479 A CN 202110605479A CN 113268567 A CN113268567 A CN 113268567A
- Authority
- CN
- China
- Prior art keywords
- text
- sub
- similarity
- same attribute
- group
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000012216 screening Methods 0.000 claims abstract description 35
- 238000004364 calculation method Methods 0.000 claims description 19
- 238000001914 filtration Methods 0.000 claims description 16
- 238000012935 Averaging Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000000052 comparative effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 244000000188 Vaccinium ovalifolium Species 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出一种多属性文本匹配方法、装置、设备和存储介质,该方法包括:分别获取待匹配的第一文本和第二文本中相同属性字段对应的子文本的候选公共连续子序列及其字符长度、在不同子文本中位置差;基于预设筛选规则、候选公共连续子序列的字符长度及位置差,筛选出每组相同属性字段对应的目标公共连续子序列;根据两个子文本的字符长度和对应的目标公共连续子序列的字符长度,获取每组两个子文本的相似度;根据相似度,得到第一文本和第二文本的匹配度。本申请综合考虑位置差和字符长度得到最优目标公共连续子序列,使匹配更加精确。
Description
技术领域
本申请涉及数据分析技术领域,尤其涉及一种多属性文本匹配方法、装置、设备和存储介质。
背景技术
在自然语言处理中,经常涉及对两个文本进行比较以判断二者的相似性或统计二者的差异。但是现有技术中都是对单一属性的文本进行文本差异性判断,因此,其适用范围比较窄。特别对于具有多个属性的文本,现有技术只能从单一属性来判断,导致相似性判断维度不全面,判断结果不准确。另外,现有技术通常是通过计算出二者的最长连续子序列来计算相似度的,由于考虑的因素太单一,导致最终的相似度判断比较片面、武断,准确性欠缺。
发明内容
为了解决现有技术对文本的相似性或差异进行判断准确性不高的技术问题。本申请提供了一种多属性文本匹配方法、装置、设备和存储介质,其主要目的在于提高了文本匹配的准确度,降低出错率。
为实现上述目的,本申请提供了一种多属性文本匹配方法,该方法包括:
获取待匹配的第一文本和第二文本,第一文本和第二文本均包含至少一个属性字段,每个属性字段对应一个子文本;
分别计算出第一文本和第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个候选公共连续子序列的字符长度;
获取每个候选公共连续子序列在对应的两个不同子文本中的位置差;
基于预设筛选规则、每个候选公共连续子序列的字符长度及对应的位置差,筛选出每组相同属性字段对应的目标公共连续子序列;
根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;
根据相似度,得到第一文本和第二文本的匹配度。
此外,为实现上述目的,本申请还提供了一种多属性文本匹配装置,该装置包括:
文本获取模块,用于获取待匹配的第一文本和第二文本,第一文本和第二文本均包含至少一个属性字段,每个属性字段对应一个子文本;
第一计算模块,用于分别计算出第一文本和第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个候选公共连续子序列的字符长度;
位置差获取模块,用于获取每个候选公共连续子序列在对应的两个不同子文本中的位置差;
筛选模块,用于基于预设筛选规则、每个候选公共连续子序列的字符长度及对应的位置差,筛选出每组相同属性字段对应的目标公共连续子序列;
第二计算模块,用于根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;
第三计算模块,用于根据相似度,得到第一文本和第二文本的匹配度。
为实现上述目的,本申请还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时执行如前面任一项的多属性文本匹配方法的步骤。
为实现上述目的,本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行如前面任一项的多属性文本匹配方法的步骤。
本申请提出的多属性文本匹配方法、装置、设备和存储介质,综合考虑位置差和字符长度得到每个属性字段对应的最优的目标公共连续子序列,结合自然语言处理技术使文本匹配更加精确,提高了识别的准确度,降低了出错率,另外对多属性字段综合考虑,可以满足数据属性多的情况,快速匹配结果,比起单一字段匹配的结果更加精确,通过自动化匹配文本,降低了人工成本,提升工作效率。
附图说明
图1为本申请一实施例中多属性文本匹配方法的应用场景图;
图2为本申请一实施例中多属性文本匹配方法的流程示意图;
图3为本申请一实施例中多属性文本匹配装置的结构框图;
图4为本申请一实施例中计算机设备的内部结构框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的多属性文本匹配方法,可应用在如图1的应用环境中,其中,终端设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。终端设备获取待匹配的第一文本和第二文本,第一文本和第二文本均包含至少一个属性字段,每个属性字段对应一个子文本;终端设备分别计算出第一文本和第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个候选公共连续子序列的字符长度;获取每个候选公共连续子序列在对应的两个不同子文本中的位置差;基于预设筛选规则、每个候选公共连续子序列的字符长度及对应的位置差,筛选出每组相同属性字段对应的目标公共连续子序列;根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;根据相似度,得到第一文本和第二文本的匹配度。
当然,本申请提供的多属性文本匹配方法可以由终端设备和服务器共同实现。终端设备和服务器通过网络连接。
图2为本申请一实施例中多属性文本匹配方法的流程示意图。参考图2,以该方法应用在图1中的终端设备为例进行说明。该多属性文本匹配方法包括以下步骤S100-S600。
S100:获取待匹配的第一文本和第二文本。
具体地,第一文本和第二文本均包含至少一个属性字段,第一文本和第二文本包含的属性字段的数量可以相同也可以不同;第一文本和第二文本可以包含相同的属性字段,也可以包含不同的属性字段。每个属性字段对应一个子文本。例如第一文本和第二文本可以为第一污染源企业信息和第二污染源企业信息,第一文本的多个属性字段包括第一污染源企业的公司名称、公司地址、信用代码、创始人、官网网址等其中的至少一种。第二文本的多个属性字段包括第二污染源企业的公司名称、公司地址、信用代码、创始人、官网网址等其中的至少一种。每个属性字段对应有一个子文本,例如,公司名称这个属性字段对应有第一污染源企业的名称或第二污染源企业的名称。此具体实施例中,需要根据多个属性字段综合匹配判断第一污染源企业和第二污染源企业是否为同一个企业。当然,本申请的多属性文本匹配方法不仅仅应用于污染源企业的匹配,还应用于其他多种领域。例如场景1:电商后台企业的信息判重,场景2:各种监测设备和点位的信息判重,场景3:传统行业一些手工录入数据的判重等,不局限于此。
S200:分别计算出第一文本和第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个候选公共连续子序列的字符长度。
具体地,第一文本和第二文本均包含至少一个属性字段,只有相同的属性字段对应的子文本才具有比较匹配意义。例如,第一污染源企业的公司名称与第二污染源企业的公司名称具有比较的意义,公司名称与公司地址不具备比较意义。第一文本和第二文本可能包含多组相同属性字段。例如:第一文本中的公司名称和第二文本中的公司名称属于一组相同属性字段,第一文本中的公司地址和第二文本中的公司地址属于另外一组相同属性字段。
本实施例中采用SequenceMatcher算法计算得到相同属性字段对应的两个子文本之间的候选公共连续子序列。候选公共连续子序列为同时存在于两个子文本中连续且公共的子串。每一组相同属性字段得到的候选公共连续子序列可能包含0个、1个或多个,且,这些候选公共连续子序列的长度可能相同可能不完全相同。
S300:获取每个候选公共连续子序列在对应的两个不同子文本中的位置差。
具体地,获取每个候选公共连续子序列在对应的两个不同子文本中的第一位置和第二位置,根据第一位置和第二位置得到每个候选公共连续子序列对应的位置差。因为候选公共连续子序列在两个相同属性字段对应的不同子文本中,因此,每个候选公共连续子序列在两个不同的子文本中的位置可能相同可能不相同。第一位置和第二位置相同,则根据二者计算得到的位置差为0,第一位置和第二位置不同,则位置差大于0。位置差具体为同一个候选公共连续子序列第一位置和第二位置的差值的绝对值。理论上,位置差为0则越能体现两个子文本相近,位置差越大,越不能体现两个子文本相近。即,根据位置差可以进一步判断两个子文本中的相似度。
S400:基于预设筛选规则、每个候选公共连续子序列的字符长度及对应的位置差,筛选出每组相同属性字段对应的目标公共连续子序列。
具体地,每一对相同属性字段可能包含多个候选公共连续子序列,我们需要根据一定的筛选规则,从多个候选公共连续子序列中筛选出最优的一个目标公共连续子序列。目标公共连续子序列是综合考虑字符长度和位置差筛选出来的。理论情况下,字符长度越长,位置差越小,则该公共连续子序列越优。目标公共连续子序列可能是最长公共连续子序列,也可能是位置差最小的公共连续子序列,还可能是介于最长公共连续子序列和位置差最小的公共连续子序列之间的其他公共连续子序列。
S500:根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度。
具体地,每组相同属性字段对应的两个子文本的相似度为目标公共连续子序列的字符长度的两倍除以该属性字段对应的两个子文本的字符长度之和。具体公式为:s=2m/t;其中,s为相似度,m为目标公共连续子序列的字符长度,t为对应的两个子文本的字符长度之和。s介于0-1之间。S越大代表两个子文本越相似。
S600:根据相似度,得到第一文本和第二文本的匹配度。
具体地,可以根据所有组相同属性字段对应相似度求均值,得到匹配度。也可以根据所有组相同属性字段对应相似度进行加权求平均,得到匹配度。
现有技术忽略了字符在文本中的位置,因此,得到的最长连续子序列并不能真实的反应两个不同文本之间的相同部分,进而得到的相似度也不够真实准确。本申请综合考虑位置差和字符长度得到每个属性字段对应的最优的目标公共连续子序列,结合自然语言处理技术使文本匹配更加精确,提高了识别的准确度,降低了出错率,另外对多属性字段综合考虑,可以满足数据属性多的情况,快速匹配结果,比起单一字段匹配的结果更加精确,通过自动化匹配文本,降低了人工成本,提升工作效率。
在一个实施例中,步骤S400具体包括:
将位置差大于距离阈值的候选公共连续子序列剔除;
分别从每组相同属性字段余下的其他候选公共连续子序列中筛选出字符长度最长或位置差最短的候选公共连续子序列;
将字符长度最长或位置差最短的候选公共连续子序列作为对应相同属性字段的目标公共连续子序列。
具体地,位置差大于距离阈值的候选公共连续子序列其本身在某种程度上已经不能认为是两个子文本真正意义上的公共连续子序列。距离阈值根据实际应用场景设置,一般在子文本较长的情况下,距离阈值可以设置大一些,在子文本较短的情况下,距离阈值应当设置小一些。
从每组相同属性字段对应的候选公共连续子序列中筛选出位置差小于等于距离阈值的候选公共连续子序列,从筛选出来的候选公共连续子序列中再筛选字符长度最长的候选公共连续子序列作为目标公共连续子序列。
当然,根据位置差进行第一次筛选后,可能某些组相同属性字段不存在其他候选公共连续子序列了,此时,该相同属性字段对应的目标公共连续子序列为空。
本实施例在第一次筛选后将字符长度作为第二次筛选的条件,相当于更加侧重字符长度对相似度的影响。
或者,从每组相同属性字段对应的公共连续子序列中筛选出位置差小于等于距离阈值的候选公共连续子序列,将位置差最短的候选公共连续子序列作为目标公共连续子序列。
本实施例在第一次筛选后将位置差作为第二次筛选的条件,相当于更加侧重位置差对相似度的影响。
或者,找到的目标公共连续子序列在第一次筛选后余下的其他候选公共连续子序列中字符长度最长,且,位置差最短。此实施例,兼具字符长度和位置差的考虑,得到的两个子文本的相似度更加具有参考性和准确性。
当然上述中,如果找出的字符长度最长的候选公共连续子序列和位置差最短的候选公共连续子序列不是同一个候选公共连续子序列,则将字符长度最长的候选公共连续子序列的字符长度与字符长度均值的差的绝对值除以字符长度均值得到第一结果;将位置差最短的候选公共连续子序列的位置差与位置差均值的差的绝对值除以位置差均值得到第二结果。比较第一结果和第二结果,从字符长度最长的候选公共连续子序列和位置差最短的候选公共连续子序列中选出第一结果和第二结果中值最大的作为目标公共连续子序列。
其中,字符长度均值和位置差均值为根据该相同属性字段经过第一次筛选后余下的候选公共连续子序列计算得到的。
本申请的距离阈值限制了候选公共连续子序列前后出现的允许范围,只有候选公共连续子序列出现在相同或者在一定范围相邻才认为是共同发现的公共连续子序列,这样的方式可以使得匹配的结果更准确。
在上述实施例的基础上,步骤S500具体包括:
根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算存在目标公共连续子序列的相同属性字段对应的两个子文本的相似度。
具体地,在将位置差大于距离阈值的候选公共连续子序列剔除后,有余下的其他候选公共连续子序列,则说明该组相同属性字段存在目标公共连续子序列。则存在目标公共连续子序列的相同属性字段对应的两个子文本的相似度为目标公共连续子序列的字符长度的两倍除以该属性字段对应的两个子文本的字符长度之和。具体公式为:s=2m/t;其中,s为相似度,m为目标公共连续子序列的字符长度,t为对应的两个子文本的字符长度之和。s介于0-1之间。S越大代表两个子文本越相似。
在上述实施例的基础上,在步骤S400之后,该方法还包括:
将不存在目标公共连续子序列的相同属性字段的两个子文本的相似度确定为一预设值。
具体地,若存在将位置差大于距离阈值的候选公共连续子序列剔除后不存在其他候选公共连续子序列的相同属性字段,则将不存在其他候选公共连续子序列的相同属性字段的两个子文本的相似度确定为一预设值。
不存在其他候选公共连续子序列的相同属性字段其目标公共连续子序列相当于为空。因此可以将不存在目标公共连续子序列的相同属性字段所对应的两个子文本的相似度确定为一个预设值。预设值可以为0或0.01、0.001等极小值。
在一个实施例中,在步骤S200之前,该方法还包括:
对每个子文本进行过滤处理,以过滤掉每个子文本中的无关字符。
具体地,对每个子文本进行第一过滤处理,以过滤掉每个子文本中的第一无关字符;和/或,对每个子文本进行第二过滤处理,以过滤掉每个子文本中的第二无关字符。
更具体地,第一过滤处理具体为过滤掉每个子文本中的无用数据,例如空白行、空白格、跳格符、特殊标点符号或字符等。更具体地,可以采用SequenceMatcher对象中的isjunk函数对每个子文本进行第一过滤处理。
第一过滤处理可以减少无用数据对计算公共连续子序列的干扰,减少计算量,提高公共连续子序列计算的准确度。
第二无关字符具体为频繁出现的字符,或,相同属性字段对应的子文本中共有的常规字符。例如,在企业名称中,“公司”、“企业”、“北京”、“有限公司”等等,这些字符都属于常规字符。再例如,在企业地址中,“中国”、“北京”等。第二无关字符可以是工程人员根据当前应用场景根据经验设置并预存的,本方法在执行过程中,根据预存的第二无关字符可以对每个子文本进行第二过滤处理。
可选地,上述中,不论是第一过滤处理还是第二过滤处理,过滤掉字符的位置用后面没有过滤掉的字符顺序填充。
在一个实施例中,步骤S600具体包括:对所有相似度求均值作为第一文本和第二文本的匹配度。
在一个实施例中,步骤S600具体包括:获取相似度对应的相同属性字段中每一种属性字段的目标权重,根据目标权重和相似度,得到第一文本和第二文本的匹配度。
具体地,根据目标权重和所有相似度求出加权平均值作为第一文本和第二文本的匹配度,匹配度的计算公式为:
s代表某组相同属性字段对应的相似度,f代表相同属性字段中某一种属性字段的权重,i代表第几组相同属性字段,n代表相同属性字段的个数即有多少组相同属性字段,n还可以代表具有相似度的相同属性字段的个数,i大于等于1,小于等于n,n大于等于1,i和n均为正整数。
本实施例中,第一文本和第二文本均包含至少一个属性字段,但是实际上不同属性字段在反应第一文本或第二文本的属性特征上面不同,对于每个属性字段设置权重,使得越重要越能够体现第一文本和第二文本属性的字段权重越高,这样得到的相似度越接近第一文本和第二文本最真实的相似度。
基于上述实施例,在一个具体实施例中,获取相似度对应的相同属性字段中每一种属性字段的目标权重,具体包括:
根据预先设置的相似度对应的相同属性字段中每一种属性字段的权重的取值范围生成多组权重取值集合,其中,每组权重取值集合中的所有待选权重之和为1,且,每组权重取值集合包含相似度对应的相同属性字段中每一种属性字段对应的一个待选权重;
根据相似度和每组权重取值集合中的待选权重,计算每组权重取值集合对应的加权均值方差;
将最小加权均值方差对应的权重取值集合中的待选权重作为相似度对应的相同属性字段中对应属性字段的目标权重。
具体地,相似度对应的相同属性字段中每一种属性字段的权重都对应一个取值范围,从取值范围内,为每一种属性字段选取一个待选权重值,得到一组权重取值集合。每组权重取值集合包含多个待选权重,一个待选权重为相似度对应的相同属性字段中一种属性字段对应的候选权重。且,每组权重取值集合中所有待选权重之和为1。因此,通过此方法可以得到多组不同的权重取值集合。具体需要得到多少组权重取值集合可以根据实际计算开销和需要达到的精确度设置,本申请不做任何限制。
将每一组权重取值集合中的属性字段的权重和所有相似度代入加权平均值公式中,可以得到每组权重取值集合对应的加权平均值,根据加权平均值和所有相似度可以计算得到每组对应的加权均值方差。
加权均值方差的计算公式为:
其中,s代表某组相同属性字段对应的相似度,f代表相同属性字段中每一种属性字段的权重,n代表相同属性字段的个数即有多少组相同属性字段,n还可以代表具有相似度的相同属性字段的个数,i代表第几组相同属性字段,i大于等于1,小于等于n,n大于等于1,i和n均为正整数。由于有多组权重取值集合,因此,可以得到每组权重取值集合对应的加权均值方差DX。对得到的多个加权均值方差DX进行比较,将最小加权均值方差对应的一组权重取值集合作为目标权重取值集合。该目标权重取值集合中包括了相似度对应的相同属性字段中每一种属性字段对应的一个目标权重。根据方差的大小可以判断权重设计的合理性,如果过大说明权重设置的不合理,进而可以筛选出比较优质的一组权重。
目标权重获取到了,目标权重计算过程中也计算出了对应的匹配度M,因此,本实施例也可以无需重复再计算一遍,即可得到目标权重对应的匹配度M。
当然,目标权重也可以是研发人员提前根据具体应用场景,通过大量数据提前计算得到,并预设到本申请中的。
本申请的多属性文本匹配方法可以应用于多种领域。例如,污染源企业的信息一直是数据治理重要的一环,直接影响对相关企业的监管和决策,因其存在大量手工上传数据,导致内容填写不规范,比如企业名称、单位、地址等,不同数据源、不同批次、不同人上报的名称存在很多差别,如果名称无法统一,会导致企业信息和历史记录信息匹配不上,数据无法关联和正常展示,亦或导致存在重复数据,影响统计和上报等业务功能,所以对于不同数据源和不同批次的数据以及每当有新增的企业信息的时候,都需要重新核对和校验。以往的做法大多数是通过人工匹配的方式,耗费大量的人力和时间成本,且容易遗漏和出错。通过本申请可以准确地匹配出包含多个属性的污染源企业的信息。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图3为本申请一实施例中多属性文本匹配装置的结构框图。参考图3,该装置包括:
文本获取模块100,用于获取待匹配的第一文本和第二文本,所述第一文本和第二文本均包含至少一个属性字段,每个属性字段对应一个子文本;
第一计算模块200,用于分别计算出第一文本和第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个候选公共连续子序列的字符长度;
位置差获取模块300,用于获取每个候选公共连续子序列在对应的两个不同子文本中的位置差;
筛选模块400,用于基于预设筛选规则、每个候选公共连续子序列的字符长度及对应的位置差,筛选出每组相同属性字段对应的目标公共连续子序列;
第二计算模块500,用于根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;
第三计算模块600,用于根据相似度,得到第一文本和第二文本的匹配度。
该多属性文本匹配装置一般设置于终端设备中。
在一个实施例中,筛选模块400具体包括:
剔除单元,用于将位置差大于距离阈值的候选公共连续子序列剔除;
筛选单元,用于分别从每组相同属性字段余下的其他候选公共连续子序列中筛选出字符长度最长或位置差最短的候选公共连续子序列;
确定单元,用于将字符长度最长或位置差最短的候选公共连续子序列作为对应相同属性字段的目标公共连续子序列。
在上述实施例的基础上,第二计算模块500具体用于:根据相同属性字段对应的两个子文本的字符长度和对应的目标公共连续子序列的字符长度,计算存在目标公共连续子序列的相同属性字段对应的两个子文本的相似度。
在上述实施例的基础上,该装置还包括:
赋值模块,用于将不存在目标公共连续子序列的相同属性字段的两个子文本的相似度确定为一预设值。
在一个实施例中,该装置还包括:
过滤模块,用于对每个子文本进行过滤处理,以过滤掉每个子文本中的无关字符。
在一个实施例中,第三计算模块600具体包括:
权重获取模块,用于获取相似度对应的相同属性字段中每一种属性字段的目标权重;
子计算模块,用于根据目标权重和相似度,得到第一文本和第二文本的匹配度。
在一个实施例中,第三计算模块600具体用于:
对所有相似度求均值,得到第一文本和第二文本的匹配度。
在一个实施例中,权重获取模块具体包括:
组合单元,用于根据预先设置的相似度对应的相同属性字段中每一种属性字段的权重的取值范围生成多组权重取值集合,其中,每组权重取值集合中的所有待选权重之和为1,且,每组权重取值集合包含相似度对应的相同属性字段中每一种属性字段对应的一个待选权重;
子计算单元,用于根据相似度和每组权重取值集合中的待选权重,计算每组权重取值集合对应的加权均值方差;
选取单元,用于将最小加权均值方差对应的权重取值集合中的待选权重作为相似度对应的相同属性字段中对应属性字段的目标权重。
其中上述模块/单元中的“第一”和“第二”的意义仅在于将不同的模块/单元加以区分,并不用于限定哪个模块/单元的优先级更高或者其它的限定意义。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本申请中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式。
关于多属性文本匹配装置的具体限定可以参见上文中对于多属性文本匹配方法的限定,在此不再赘述。上述多属性文本匹配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图4为本申请一实施例中计算机设备的内部结构框图。该计算机设备具体可以是图1中的终端设备。如图4所示,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,该计算机设备的处理器用于提供计算和控制能力。存储器包括存储介质和内存储器。存储介质可以是非易失性存储介质,也可以是易失性存储介质。存储介质存储有操作系统,还可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器实现多属性文本匹配方法。该内存储器为存储介质中的操作系统和计算机可读指令的运行提供环境。该内存储器中也可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行多属性文本匹配方法。该计算机设备的网络接口用于与外部服务器通过网络连接通信。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令(例如计算机程序),处理器执行计算机可读指令时实现上述实施例中多属性文本匹配方法的步骤,例如图2所示的步骤S100至步骤S600及该方法的其它扩展和相关步骤的延伸。或者,处理器执行计算机可读指令时实现上述实施例中多属性文本匹配装置的各模块/单元的功能,例如图3所示文本获取模块100、第一计算模块200、位置差获取模块300、筛选模块400、第二计算模块500和第三计算模块600的功能。为避免重复,这里不再赘述。
处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
存储器可用于存储计算机可读指令和/或模块,处理器通过运行或执行存储在存储器内的计算机可读指令和/或模块,以及调用存储在存储器内的数据,实现计算机装置的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、视频数据等)等。
存储器可以集成在处理器中,也可以与处理器分开设置。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机可读指令,计算机可读指令被处理器执行时实现上述实施例中多属性文本匹配方法的步骤,例如图2所示的步骤S100至步骤S600及该方法的其它扩展和相关步骤的延伸。或者,计算机可读指令被处理器执行时实现上述实施例中多属性文本匹配装置的各模块/单元的功能,例如图3所示文本获取模块100、第一计算模块200、位置差获取模块300、筛选模块400、第二计算模块500和第三计算模块600的功能。为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指示相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍速率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种多属性文本匹配方法,其特征在于,所述方法包括:
获取待匹配的第一文本和第二文本,所述第一文本和所述第二文本均包含至少一个属性字段,每个所述属性字段对应一个子文本;
分别计算出所述第一文本和所述第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个所述候选公共连续子序列的字符长度;
获取每个所述候选公共连续子序列在对应的两个不同子文本中的位置差;
基于预设筛选规则、每个所述候选公共连续子序列的字符长度及对应的所述位置差,筛选出所述每组相同属性字段对应的目标公共连续子序列;
根据所述相同属性字段对应的两个子文本的字符长度和对应的所述目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;
根据所述相似度,得到所述第一文本和所述第二文本的匹配度。
2.根据权利要求1所述的方法,其特征在于,所述基于预设筛选规则、每个所述候选公共连续子序列的字符长度及对应的所述位置差,筛选出所述每组相同属性字段对应的目标公共连续子序列,包括:
将位置差大于距离阈值的候选公共连续子序列剔除,
分别从所述每组相同属性字段余下的其他候选公共连续子序列中筛选出字符长度最长或位置差最短的候选公共连续子序列,
将所述字符长度最长或位置差最短的候选公共连续子序列作为对应相同属性字段的目标公共连续子序列;
所述根据所述相同属性字段对应的两个子文本的字符长度和对应的所述目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度,包括:
根据所述相同属性字段对应的两个子文本的字符长度和对应的所述目标公共连续子序列的字符长度,计算存在目标公共连续子序列的相同属性字段对应的两个子文本的相似度。
3.根据权利要求2所述的方法,其特征在于,在所述筛选出所述每组相同属性字段对应的目标公共连续子序列之后,所述方法还包括:
将不存在目标公共连续子序列的相同属性字段的两个子文本的相似度确定为一预设值。
4.根据权利要求1所述的方法,其特征在于,在所述分别计算出所述第一文本和所述第二文本中每组相同属性字段对应的子文本的候选公共连续子序列之前,所述方法还包括:
对每个所述子文本进行过滤处理,以过滤掉每个所述子文本中的无关字符。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述相似度,得到所述第一文本和所述第二文本的匹配度,包括:
获取所述相似度对应的相同属性字段中每一种属性字段的目标权重,根据所述目标权重和所述相似度,得到所述第一文本和所述第二文本的匹配度。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述相似度,得到所述第一文本和所述第二文本的匹配度,包括:
对所有所述相似度求均值,得到所述第一文本和所述第二文本的匹配度。
7.根据权利要求5所述的方法,其特征在于,所述获取所述相似度对应的相同属性字段中每一种属性字段的目标权重,包括:
根据预先设置的所述相似度对应的相同属性字段中每一种属性字段的权重的取值范围生成多组权重取值集合,其中,每组所述权重取值集合中的所有待选权重之和为1,且,每组所述权重取值集合包含所述相似度对应的相同属性字段中每一种属性字段对应的一个待选权重;
根据所述相似度和每组所述权重取值集合中的所述待选权重,计算每组所述权重取值集合对应的加权均值方差;
将最小加权均值方差对应的权重取值集合中的待选权重作为所述相似度对应的相同属性字段中对应属性字段的目标权重。
8.一种多属性文本匹配装置,其特征在于,所述装置包括:
文本获取模块,用于获取待匹配的第一文本和第二文本,所述第一文本和所述第二文本均包含至少一个属性字段,每个所述属性字段对应一个子文本;
第一计算模块,用于分别计算出所述第一文本和所述第二文本中每组相同属性字段对应的子文本的候选公共连续子序列,以及获取每个所述候选公共连续子序列的字符长度;
位置差获取模块,用于获取每个所述候选公共连续子序列在对应的两个不同子文本中的位置差;
筛选模块,用于基于预设筛选规则、每个所述候选公共连续子序列的字符长度及对应的所述位置差,筛选出每组相同属性字段对应的目标公共连续子序列;
第二计算模块,用于根据所述相同属性字段对应的两个子文本的字符长度和对应的所述目标公共连续子序列的字符长度,计算每组相同属性字段对应的两个子文本的相似度;
第三计算模块,用于根据所述相似度,得到所述第一文本和所述第二文本的匹配度。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时执行如权利要求1-7任一项所述的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110605479.1A CN113268567A (zh) | 2021-05-31 | 2021-05-31 | 多属性文本匹配方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110605479.1A CN113268567A (zh) | 2021-05-31 | 2021-05-31 | 多属性文本匹配方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113268567A true CN113268567A (zh) | 2021-08-17 |
Family
ID=77233740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110605479.1A Pending CN113268567A (zh) | 2021-05-31 | 2021-05-31 | 多属性文本匹配方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113268567A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780449A (zh) * | 2021-09-16 | 2021-12-10 | 平安科技(深圳)有限公司 | 文本相似度的计算方法、装置、存储介质及计算机设备 |
CN114385683A (zh) * | 2021-12-30 | 2022-04-22 | 浙江太美医疗科技股份有限公司 | 基于数据库的数据匹配方法、装置和计算机可读介质 |
CN114880459A (zh) * | 2022-04-21 | 2022-08-09 | 达而观信息科技(上海)有限公司 | 一种搜索结果的重排序方法、装置、设备及存储介质 |
CN115470198A (zh) * | 2022-08-11 | 2022-12-13 | 北京百度网讯科技有限公司 | 数据库的信息处理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200184978A1 (en) * | 2018-12-07 | 2020-06-11 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method, and device for matching speech with text, and computer-readable storage medium |
CN112084773A (zh) * | 2020-08-21 | 2020-12-15 | 国网湖北省电力有限公司电力科学研究院 | 一种基于词库双向最大匹配法的电网停电地址匹配方法 |
CN112149414A (zh) * | 2020-09-23 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 文本相似度确定方法、装置、设备及存储介质 |
-
2021
- 2021-05-31 CN CN202110605479.1A patent/CN113268567A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200184978A1 (en) * | 2018-12-07 | 2020-06-11 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method, and device for matching speech with text, and computer-readable storage medium |
CN112084773A (zh) * | 2020-08-21 | 2020-12-15 | 国网湖北省电力有限公司电力科学研究院 | 一种基于词库双向最大匹配法的电网停电地址匹配方法 |
CN112149414A (zh) * | 2020-09-23 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 文本相似度确定方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
MINOSISTERRY: "文本相似度-python之difflib库SequenceMatcher类", Retrieved from the Internet <URL:https://blog.csdn.net/minosisterry/article/details/117028761> * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780449A (zh) * | 2021-09-16 | 2021-12-10 | 平安科技(深圳)有限公司 | 文本相似度的计算方法、装置、存储介质及计算机设备 |
CN113780449B (zh) * | 2021-09-16 | 2023-08-25 | 平安科技(深圳)有限公司 | 文本相似度的计算方法、装置、存储介质及计算机设备 |
CN114385683A (zh) * | 2021-12-30 | 2022-04-22 | 浙江太美医疗科技股份有限公司 | 基于数据库的数据匹配方法、装置和计算机可读介质 |
CN114880459A (zh) * | 2022-04-21 | 2022-08-09 | 达而观信息科技(上海)有限公司 | 一种搜索结果的重排序方法、装置、设备及存储介质 |
CN115470198A (zh) * | 2022-08-11 | 2022-12-13 | 北京百度网讯科技有限公司 | 数据库的信息处理方法、装置、电子设备及存储介质 |
CN115470198B (zh) * | 2022-08-11 | 2023-09-22 | 北京百度网讯科技有限公司 | 数据库的信息处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109598095B (zh) | 评分卡模型的建立方法、装置、计算机设备和存储介质 | |
WO2021017679A1 (zh) | 地址信息解析方法、装置、系统及数据获取方法 | |
CN113268567A (zh) | 多属性文本匹配方法、装置、设备和存储介质 | |
CN109992601B (zh) | 待办事项信息的推送方法、装置和计算机设备 | |
CN110264288A (zh) | 基于信息识别技术的数据处理方法及相关装置 | |
CN110362798B (zh) | 裁决信息检索分析方法、装置、计算机设备和存储介质 | |
WO2019179030A1 (zh) | 产品购买预测方法、服务器及存储介质 | |
WO2021120628A1 (zh) | 基于区块链的敏感词检测方法、装置、计算机设备和计算机可读存储介质 | |
CN112286934A (zh) | 数据库表导入方法、装置、设备及介质 | |
CN112417315A (zh) | 基于网站注册的用户画像生成方法、装置、设备和介质 | |
CN113987182A (zh) | 基于安全情报的欺诈实体识别方法、装置及相关设备 | |
CN115936895A (zh) | 基于人工智能的风险评估方法、装置、设备及存储介质 | |
CN112990583A (zh) | 一种数据预测模型的入模特征确定方法及设备 | |
CN112381458A (zh) | 项目评审方法、项目评审装置、设备及存储介质 | |
CN111949550A (zh) | 自动生成测试数据的方法、装置、设备及存储介质 | |
CN112149708A (zh) | 数据模型选择优化方法、装置、计算机装置及存储介质 | |
CN112734307A (zh) | 一种在线实时企业画像生成方法、装置、设备及存储介质 | |
CN109783876B (zh) | 时间序列模型建立方法、装置、计算机设备和存储介质 | |
CN111460268A (zh) | 数据库查询请求的确定方法、装置和计算机设备 | |
CN114020853B (zh) | 数据模型管理方法、装置、计算机设备和存储介质 | |
CN115759742A (zh) | 企业风险评估方法、装置、计算机设备和存储介质 | |
CN115099366A (zh) | 分类预测方法、装置和电子设备 | |
CN109919811B (zh) | 基于大数据的保险代理人培养方案生成方法及相关设备 | |
CN115034189A (zh) | 表格数据处理方法、装置、计算机设备和存储介质 | |
CN110827160A (zh) | 保险信息推送方法、装置、计算机设备和存储介质 |
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 |