CN109117464A - 一种基于编辑距离的数据相似度检测方法 - Google Patents

一种基于编辑距离的数据相似度检测方法 Download PDF

Info

Publication number
CN109117464A
CN109117464A CN201810926125.5A CN201810926125A CN109117464A CN 109117464 A CN109117464 A CN 109117464A CN 201810926125 A CN201810926125 A CN 201810926125A CN 109117464 A CN109117464 A CN 109117464A
Authority
CN
China
Prior art keywords
character string
str2
matrix
str1
lccs
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
Application number
CN201810926125.5A
Other languages
English (en)
Other versions
CN109117464B (zh
Inventor
杨丽花
李蕾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Post and Telecommunication University
Original Assignee
Nanjing Post and Telecommunication University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Publication of CN109117464A publication Critical patent/CN109117464A/zh
Application granted granted Critical
Publication of CN109117464B publication Critical patent/CN109117464B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明揭示了一种基于编辑距离的数据相似度检测方法,该方法包括以下步骤:步骤S1:输入字符串str1,str2;步骤S2:采用动态规划方法获得LD(str1,str2),LCS(str1,str2),LCCS(str1,str2);所述步骤S2包括以下步骤:S21:计算字符串间的编辑距离L d ;S22:计算字符串间的最长公共子序列L cs ;S23:计算字符串间的最长公共子串Lccs;步骤S3:联合L d L cs Lccs获得字符串相似度sim。该方法可用于大数据数据预处理等领域,利用本发明获得的字符串相似性检测结果更加准确,具有更好的精度和通用性。

Description

一种基于编辑距离的数据相似度检测方法
技术领域
本发明涉及一种基于编辑距离的数据相似度检测方法,属于大数据数据预处理领域。
背景技术
随着物联网和“互联网+”时代的迅速发展,全球已进入了大数据时代。毫无疑问,大数据隐含着巨大的社会、经济、科研价值,已引起了各行各业的高度重视。如果能对大数据进行有效地挖掘,将对社会经济和科学研究发展产生巨大的推动作用,同时也孕育着前所未有的机遇。一般情况下,数据挖掘总是假设数据是“干净”和一致的,然而现实中感知数据往往是不完整的、含有噪声的,且存在不一致性,这些数据表现出的质量问题将会严重影响数据分析的结果。因此,对采集到的大数据首先进行预处理,提高数据质量,对大数据分析和研究具有重要的意义。
在大数据预处理中,记录相似重复检测对提高数据质量起着至关重要的作用。在相似重复记录检测过程中,相似度的计算是检测相似重复记录的基础。为此,需要研究高精度的相似度计算方法。在本发明中,将以字符类型数据作为数据为例来对数据相似度计算方法进行说明。目前,根据字符串的字面相似性,可以将数据相似度检测方法分为基于统计相关性和基于语义相似性两类方法。其中,应用最广泛的是基于字面相似度的编辑距离(LD,Levenshtein Distance)方法。在此方法中,编辑距离是指由原字符串变化到另外一个字符串所需的最少编辑次数或最小代价,编辑即是指对字符串指定位置的单个字符进行插入、删除和替换的操作。
近年来,针对不同应用需求对LD的改进方法层出不穷,韩安琪等人(韩安琪等人,中国,“基于改进编辑距离的字符串相似度求解算法”,计算机工程,2014,第40卷第1期)提出一种联合编辑距离和最长公共子序列(LCS,Longest Common Subsequence)的数据相似度检测方法,由于该方法在LD的基础上采用了LCS进行进一步的区分,这使得利用该方法的获得的相似度更加精确。然而,LD与LCS联合的方法在一些情况下仍会有弊端,如字符串T=”abcd”和S1=”abet”、S2=”afc比较相似度时,根据该联合方法得出S1和S2与目标字符串T具有相同的相似度,而明显S1与T的相似度是要大于S2与T的相似度。为此,Shengnan Zhang等人(Shengnan Zhang等,中国,“Research on String Similarity Algorithm based onLevenshtein Distance”,IAEAC,2017)提出一种基于相似字符位置的联合LD与最长公共子串(LCCS,Longest Common Substring)的相似度检测方法,然而该方法认为首先出现相似字符的字串比后出现相似字符的字串具有更高的相似度,这将与实际不符。因此,需要研究一种高精度的相似度检测方法。
发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,提出一种基于编辑距离的数据相似度检测方法。
本发明的目的将通过以下技术方案得以实现:一种基于编辑距离的数据相似度检测方法,该方法包括以下步骤:步骤S1:输入字符串str1,str2;
步骤S2:采用动态规划方法获得LD(str1,str2),LCS(str1,str2),LCCS(str1,str2);
所述步骤S2包括以下步骤:
S21:计算字符串间的编辑距离Ld
字符串str1和str2的长度分别为m和n,构造矩阵[LD]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素LD(n,m)即为字符串str1和str2之间的编辑距离Ld
S22:计算字符串间的最长公共子序列Lcs
Lcs是两个字符串中最长的共同子序列,字符串str1和str2的长度分别为m和n,构造矩阵[L]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素L(n,m)即为字符串str1和str2之间的最长公共子序列长度Lcs
S23:计算字符串间的最长公共子串Lccs;
字符串str1和str2的长度分别为m和n,构造二维矩阵[L]n+1,m+1利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵的斜对角线上找到值为1的单元格及其对应的字符串,最长的字符为Lccs;
步骤S3:联合Ld,Lcs,Lccs获得字符串相似度sim。定义新的相似度公式为
式中,l为平衡因子,取0.1,len为两字符串中较长串的长度。
优选地,在所述步骤S22中字符串str1和str2的相对位置为不连续。
优选地,在所述步骤S23中最长公共子串Lccs中最长的公共子序列为连续的。
优选地,在所述步骤S23中,当矩阵需要填充1时,直接等于左上角的值加1,则矩阵的最大元素为Lccs的长度。
本发明技术方案的优点主要体现在:本发明公开了一种基于编辑距离的数据相似度检测方法,主要用于大数据数据预处理等领域,具体为在编辑距离的数据相似度检测方法的基础上,进一步采用最长公共子串作为区分因素,定义了新的相似度计算公式,改进后方法的字符串相似性结果更加明确,合理,准确,具有更好的通用性。
附图说明
图1为本发明一种基于编辑距离的数据相似度检测方法的流程图。
图2为利用本发明技术与现有方法获得的数据相似度对比曲线。
具体实施方式
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。
本发明揭示了一种基于编辑距离的数据相似度检测方法,对于输入的字符串str1和str2,利用动态规划方法分别计算出编辑距离(LD),最长公共子序列(LCS),最长公共子串(LCCS),然后联合LD,LCS,LCCS获得字符串str1和str2的相似度。
下面结合仿真分析本发明的性能。在仿真中考虑一组数据分析方法的准确性,适用性和区分性。
选择源字符串S=”expect”,目标字符串T={“spectator”,“exercise”,“expceted”,“bespectacled”,“exempt”,“expedite”,“expdctse”,“expecting”,“expecd”,“excect”},分别对LD方法、联合LD与LCS方法,以及本发明方法进行仿真。
如图1所示,该方法包括以下步骤:
步骤S1:输入字符串str1,str2;
步骤S2:采用动态规划方法获得LD(str1,str2),LCS(str1,str2),LCCS(str1,str2);在本技术方案中,LD指字符串间的编辑距离,又称为Levenshtein距离。在此方法中,编辑距离是指由原字符串变化到另外一个字符串所需的最少编辑次数或最小代价,编辑即是指对字符串指定位置的单个字符进行插入、删除和替换的操作。一般来说,两个字符串的编辑距离越小,则它们越相似。如果两个字符串相等,则它们的编辑距离为0(不需要任何操作),两个字符串的编辑距离肯定不超过它们的最大长度。
具体地,进一步地,所述步骤S2包括以下步骤:
步骤S21:计算字符串间的编辑距离Ld;
考虑长度分别为m和n的两个字符串str1和str2,构造矩阵[LD]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素LD(n,m)即为字符串str1和str2之间的编辑距离Ld
步骤S22:计算字符串间的最长公共子序列Lcs
Lcs是两个字符串中最长的共同子序列,在字符的相对位置不需要连续的情况下,其反映了字符串的相似性,经常用于相似性检查。考虑长度分别为m和n的两个字符串str1和str2,构造矩阵[L]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素L(n,m)即为字符串str1和str2之间的最长公共子序列长度Lcs
步骤S23:计算字符串间的最长公共子串Lccs;
最长公共子串的定义与最长公共子序列类似,不同之处在于其需要最长的公共子序列必须是连续的。考虑长度分别为m和n的两个字符串str1和str2,构造二维矩阵[L]n+1,m+1利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵的斜对角线上找到值为1的单元格及其对应的字符串,最长的字符为Lccs。考虑到查找的麻烦,当矩阵需要填充1时,直接等于左上角的值加1,则矩阵的最大元素Lccs的长度。
步骤S3:联合Ld,Lcs,Lccs获得字符串相似度sim。定义新的相似度公式为
式中,l为平衡因子,取0.1,len为两字符串中较长串的长度。
从图2中可以看出,利用本发明方法获得的数据的相似性最高,并且当LD方法和联合LD与LCS方法的性能曲线相同时,即两种方法不能区分相似度,而本发明可以得到一个更好的区分效果。
从表1的组3和5可以看出,在相同的LD情况下,联合方法和本发明更合理,更易于区分数据;从表1的6、7以及9、10这两组数据可以看出,当LD和LCS相同时,本发明可以得到更加合理和有区别的相似性数据。因此,本发明具有较好的通用性,其结果比原公式更具有判别性,准确性和合理性。
本发明公开的该数据相似度检测方法,主要用于大数据数据预处理等领域,在LD与LCS联合方法的基础上,进一步采用LCCS作为区分因素,定义了新的相似度计算公式。本发明与现有技术相比较,在考虑LD和LCS的基础上,进一步采用LCCS作为区分因素,定义了新的相似度计算公式,本发明具有更高的精度和更好的通用性。
本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。

Claims (4)

1.一种基于编辑距离的数据相似度检测方法,其特征在于:该方法包括以下步骤:
步骤S1:输入字符串str1,str2;
步骤S2:采用动态规划方法获得LD(str1,str2),LCS(str1,str2),LCCS(str1,str2);
所述步骤S2包括以下步骤:
S21:计算字符串间的编辑距离Ld
字符串str1和str2的长度分别为m和n,构造矩阵[LD]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素LD(n,m)为字符串str1和str2之间的编辑距离Ld
S22:计算字符串间的最长公共子序列Lcs
Lcs是两个字符串中最长的共同子序列,字符串str1和str2的长度分别为m和n,构造矩阵[L]n+1,m+1,利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵右下角元素L(n,m)为字符串str1和str2之间的最长公共子序列长度Lcs
S23:计算字符串间的最长公共子串Lccs;
字符串str1和str2的长度分别为m和n,构造二维矩阵[L]n+1,m+1利用动态规划方法获得该矩阵元素,即
在该矩阵中,矩阵的斜对角线上找到值为1的单元格及其对应的字符串,最长的字符为Lccs;
步骤S3:联合Ld,Lcs,Lccs获得字符串相似度sim,定义新的相似度公式为
式中,l为平衡因子,取0.1,len为两字符串中较长串的长度。
2.根据权利要求1所述的一种基于编辑距离的数据相似度检测方法,其特征在于:在所述步骤S22中字符串str1和str2的相对位置为不连续。
3.根据权利要求1所述的一种基于编辑距离的数据相似度检测方法,其特征在于:在所述步骤S23中最长公共子串Lccs中最长的公共子序列为连续的。
4.根据权利要求1所述的一种基于编辑距离的数据相似度检测方法,其特征在于:在所述步骤S23中,当矩阵需要填充1时,直接等于左上角的值加1,则矩阵的最大元素为Lccs的长度。
CN201810926125.5A 2018-03-02 2018-08-14 一种基于编辑距离的数据相似度检测方法 Active CN109117464B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810177606 2018-03-02
CN2018101776060 2018-03-02

Publications (2)

Publication Number Publication Date
CN109117464A true CN109117464A (zh) 2019-01-01
CN109117464B CN109117464B (zh) 2023-12-22

Family

ID=64852676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810926125.5A Active CN109117464B (zh) 2018-03-02 2018-08-14 一种基于编辑距离的数据相似度检测方法

Country Status (1)

Country Link
CN (1) CN109117464B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110163498A (zh) * 2019-05-15 2019-08-23 广州视源电子科技股份有限公司 课件原创度评分方法、装置、存储介质及处理器
CN111352549A (zh) * 2020-02-25 2020-06-30 腾讯科技(深圳)有限公司 一种数据对象展示方法、装置、设备及存储介质
CN111382562A (zh) * 2020-03-05 2020-07-07 百度在线网络技术(北京)有限公司 文本相似度的确定方法、装置、电子设备及存储介质
CN112199937A (zh) * 2020-11-12 2021-01-08 深圳供电局有限公司 一种短文本相似度分析方法及其系统、计算机设备、介质
CN112559559A (zh) * 2020-12-24 2021-03-26 中国建设银行股份有限公司 清单相似度的计算方法、装置、计算机设备和存储介质
CN112579646A (zh) * 2020-12-15 2021-03-30 中国建设银行股份有限公司 筛选清单的方法和装置
CN113420234A (zh) * 2021-07-02 2021-09-21 青海师范大学 一种微博数据采集方法与系统
CN113591474A (zh) * 2021-07-21 2021-11-02 西北工业大学 一种基于加权融合的Loc2vec模型的重复数据检测方法
CN113591476A (zh) * 2021-08-10 2021-11-02 闪捷信息科技有限公司 一种基于机器学习的数据标签推荐方法
CN114324216A (zh) * 2022-01-06 2022-04-12 中国科学院南京土壤研究所 一种基于土层组合特征的土壤数值分类方法
CN116564414A (zh) * 2023-07-07 2023-08-08 腾讯科技(深圳)有限公司 分子序列的比对方法、装置、电子设备、存储介质及产品
CN117238467A (zh) * 2023-11-16 2023-12-15 胜利油田中心医院 一种用于急诊的智能化医技检查预约方法
CN117592471A (zh) * 2023-11-10 2024-02-23 易方达基金管理有限公司 一种舆情数据的新闻主体识别方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090049028A1 (en) * 2003-07-30 2009-02-19 Oracle International Corporation Method of determining the similarity of two strings
CN103902527A (zh) * 2014-03-31 2014-07-02 大连大学 结合词性的英语近形词干扰项生成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090049028A1 (en) * 2003-07-30 2009-02-19 Oracle International Corporation Method of determining the similarity of two strings
CN103902527A (zh) * 2014-03-31 2014-07-02 大连大学 结合词性的英语近形词干扰项生成方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110163498B (zh) * 2019-05-15 2021-08-03 广州视源电子科技股份有限公司 课件原创度评分方法、装置、存储介质及处理器
CN110163498A (zh) * 2019-05-15 2019-08-23 广州视源电子科技股份有限公司 课件原创度评分方法、装置、存储介质及处理器
CN111352549A (zh) * 2020-02-25 2020-06-30 腾讯科技(深圳)有限公司 一种数据对象展示方法、装置、设备及存储介质
CN111352549B (zh) * 2020-02-25 2022-01-07 腾讯科技(深圳)有限公司 一种数据对象展示方法、装置、设备及存储介质
CN111382562A (zh) * 2020-03-05 2020-07-07 百度在线网络技术(北京)有限公司 文本相似度的确定方法、装置、电子设备及存储介质
CN111382562B (zh) * 2020-03-05 2024-03-01 百度在线网络技术(北京)有限公司 文本相似度的确定方法、装置、电子设备及存储介质
CN112199937B (zh) * 2020-11-12 2024-01-23 深圳供电局有限公司 一种短文本相似度分析方法及其系统、计算机设备、介质
CN112199937A (zh) * 2020-11-12 2021-01-08 深圳供电局有限公司 一种短文本相似度分析方法及其系统、计算机设备、介质
CN112579646A (zh) * 2020-12-15 2021-03-30 中国建设银行股份有限公司 筛选清单的方法和装置
CN112559559A (zh) * 2020-12-24 2021-03-26 中国建设银行股份有限公司 清单相似度的计算方法、装置、计算机设备和存储介质
CN113420234A (zh) * 2021-07-02 2021-09-21 青海师范大学 一种微博数据采集方法与系统
CN113591474A (zh) * 2021-07-21 2021-11-02 西北工业大学 一种基于加权融合的Loc2vec模型的重复数据检测方法
CN113591474B (zh) * 2021-07-21 2024-04-05 西北工业大学 一种基于加权融合的Loc2vec模型的重复数据检测方法
CN113591476A (zh) * 2021-08-10 2021-11-02 闪捷信息科技有限公司 一种基于机器学习的数据标签推荐方法
CN114324216A (zh) * 2022-01-06 2022-04-12 中国科学院南京土壤研究所 一种基于土层组合特征的土壤数值分类方法
CN116564414A (zh) * 2023-07-07 2023-08-08 腾讯科技(深圳)有限公司 分子序列的比对方法、装置、电子设备、存储介质及产品
CN116564414B (zh) * 2023-07-07 2024-03-26 腾讯科技(深圳)有限公司 分子序列的比对方法、装置、电子设备、存储介质及产品
CN117592471A (zh) * 2023-11-10 2024-02-23 易方达基金管理有限公司 一种舆情数据的新闻主体识别方法及系统
CN117238467A (zh) * 2023-11-16 2023-12-15 胜利油田中心医院 一种用于急诊的智能化医技检查预约方法

Also Published As

Publication number Publication date
CN109117464B (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
CN109117464A (zh) 一种基于编辑距离的数据相似度检测方法
CN104866593B (zh) 一种基于知识图谱的数据库搜索方法
Zhang et al. Bed-tree: an all-purpose index structure for string similarity search based on edit distance
CN103544255B (zh) 基于文本语义相关的网络舆情信息分析方法
Gadepally et al. Big data dimensional analysis
CN103365998B (zh) 一种相似字符串检索方法
US20110302166A1 (en) Search system, search method, and program
CN105224452B (zh) 一种针对科学计算程序静态分析性能的预测代价优化方法
CN109359172A (zh) 一种基于图划分的实体对齐优化方法
CN101894058B (zh) 针对自动测试系统的测试覆盖性自动分析方法及其装置
CN105955984A (zh) 基于爬虫模式的网络数据搜索方法
CN102298681B (zh) 一种基于数据流切片的软件识别方法
CN105095091A (zh) 一种基于倒排索引技术的软件缺陷代码文件定位方法
CN106202450A (zh) 一种基于makefile文件依赖的源码分析方法
US20230315733A1 (en) Pre-checking method and pre-checking system based on the olap pre-calculation model
CN101763403A (zh) 面向多语言信息检索系统的查询翻译方法
US10216792B2 (en) Automated join detection
Cai et al. A vision recognition based method for web data extraction
Lian et al. A novel scale insensitive KCF tracker based on HOG and color features
CN105302547A (zh) 一种面向Verilog HDL设计的故障注入方法
CN102831174A (zh) 结构化信息快速检索方法及系统
CN105279249B (zh) 一种网站中兴趣点数据的置信度的判定方法和装置
CN103995690B (zh) 一种基于gpu的并行时间序列挖掘方法
CN115169578A (zh) 一种基于元宇宙数据标记的ai模型生产方法及系统
Hadiji et al. Computer science on the move: Inferring migration regularities from the web via compressed label propagation

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