字符串编辑距离之JaroWinklerDistance
概述
Jaro-Winkler Distance是一个度量两个字符序列之间的编辑距离的字符串度量标准,是由William E. Winkler在1990年提出的Jaro Distance度量标准的一种变体。Jaro Distance是两个单词之间由一个转换为另一个所需的单字符转换的最小数量。Jaro-Winkler Distance通过前缀因子使Jaro Distance相同时共同前缀长度越大的相似度越高。Jaro–Winkler Distance越小,两个字符串越相似。如果分数是0,则表示完全不同,分数为1则表示完全匹配。Jaro–Winkler相似度是1 - Jaro–Winkler Distance。
Jaro相似度
对于给定的两个字符串 和,相似度,计算公式如下:
其中:
- 是字符串 的长度。
- 是匹配的字符数量。
- 是字符转换的次数。
只有当 和的字符相同,且距离不超过 时才认为两个字符是匹配的。将与匹配的字符进行比较,相同位置但字符不同的字符数除以2就是要转换的次数。
Jaro-Winkler相似度
对于给定的两个字符串 和,相似度,计算公式如下:
其中:
- 是 和的Jaro相似度。
- 是字符串公共的前缀长度,最大值为4。
- 是一个常量因子,对于有公共前缀的分数会向上调整,不能超过0.25,否则相似度会超过1,常量的默认值为0.1。
示例
三个单词、、分别为aboard、abroad、aborad,分为两组进行比较、和、。
根据Jaro Distance算法、匹配的字符数为为6,需要转换的字符为o、a、r,所以转换次数为3/2=1。
它们的Jrao相似度为。
而、匹配的字符数为为6,需要转换的字符为a、r,所以转换次数为2/2=1。
它们Jrao相似度为。
此时与和的Jaro相似度相同,无法判断与哪个更相似,此时可以通过Jaro-Winkler Distance算法对Jaro相似度进行调整,假设常量因子为0.25。
、匹配字符的共同前缀ab的长度为2小于4,
所以它们的Jaro-Winkler相似度为。
而、匹配字符的共同前缀abo的长度为3小于4,
所以它们的Jaro-Winkler相似度为。
Jaro相似度相同的通过Jaro-Winkler Distance调整后可以比较出与哪个更相似。如上与更相似。
字符串编辑距离之JaroWinklerDistance相关推荐
- 字符串编辑距离(Edit Distance)
一.问题描述 定义 字符串编辑距离(Edit Distance),是俄罗斯科学家 Vladimir Levenshtein 在 1965 年提出的概念,又称 Levenshtein 距离,是指两个字符 ...
- 最大子序列、最长递增子序列、最长公共子串、最长公共子序列、字符串编辑距离
最大子序列 最大子序列是要找出由数组成的一维数组中和最大的连续子序列.比如{5,-3,4,2}的最大子序列就是 {5,-3,4,2},它的和是8,达到最大:而 {5,-6,4,2}的最大子序列是{4, ...
- 字符串编辑距离的计算方法
字符串编辑距离,又称 Levenshtein距离, 指由一个字符串变成另一个字符串所需的最少的编辑次数,这些编辑操作包括将一个字符替换为另一个字符,删除一个字符和添加一个字. 详细内容可以参考 ...
- Algorithm:C++/python语言实现之求旋转数组最小值、求零子数组、求最长公共子序列和最长公共子串、求LCS与字符串编辑距离
Algorithm:C++/python语言实现之求旋转数组最小值.求零子数组.求最长公共子序列和最长公共子串.求LCS与字符串编辑距离 目录 一.求旋转数组最小值 1.分析问题 2.解决思路 二.求 ...
- JavaScript实现levenshteinDistance字符串编辑距离算法(附完整源码)
JavaScript实现levenshteinDistance字符串编辑距离算法(附完整源码) levenshteinDistance.js完整源代码 # levenshteinDistance.te ...
- 动态规划 —— 线性 DP —— 字符串编辑距离
[概述] 字符串编辑距离,即 Levenshtein 距离,是俄国科学家 Vladimir Levenshtein 提出的概念,是指从一个字符串修改到另一个字符串时,编辑单个字符所需的最少次数,编辑单 ...
- 数组字符串那些经典算法:最大子序列和,最长递增子序列,最长公共子串,最长公共子序列,字符串编辑距离,最长不重复子串,最长回文子串 (转)...
作者:寒小阳 时间:2013年9月. 出处:http://blog.csdn.net/han_xiaoyang/article/details/11969497. 声明:版权所有,转载请注明出处,谢谢 ...
- 字符串编辑距离(转载)
Levenshtein Distance (LD, 来文史特距离)也叫edit distance(编辑距离),它用来表示2个字符串的相似度,LD定义为需要最少多少步基本操作才能让2个字符串相等,基本操 ...
- 字符串编辑距离之Damerau–Levenshtein Distance
概述 Damerau–Levenshtein Distance用来测量两个字符序列之间的编辑距离的字符串度量标准.两个词的Damerau–Levenshtein Distance是从一个词转换为另一个 ...
最新文章
- 谷歌新深度学习系统可以促进放射科医生的发展
- javase-线程生命周期
- mysql老是下载了用不了_mysql - 下载与安装
- How to run CAB file
- VC++ 开发pop3收邮件程序的相关问题
- 详细bugfree使用教程网址
- CF1047E Region Separation
- 搭建Struts框架
- 7月30日PMP考试注意事项
- 码怪之程序员的日常语录
- 形象思维图谱应用--树形图
- python list 对时间排序小结。
- mysql navicat怎么打开文件_navicat怎么打开sql
- ICP算法概述以及使用SVD进行算法推导
- openwrt mwan3配置
- java 下载样板Excel文件
- 计算机应用EXCEL之数据看板制作
- 小程序搜索框简单的实现
- [JAVA]计算底面为正方形的长方体体积以及JAVA的math方法 2021-09-06
- 1、《穷爸爸富爸爸》有感
热门文章
- 淘宝排名查询接口,关键词排名api,淘宝商品排名查询api,淘宝关键词搜索查询接口
- 2006-07-16蜡肉的吃法(不完全)
- 「Medical Image Analysis」 Note on 朱文涛博士学位论文
- Remix本地化,加载本地合约文件,本地链接Remix
- 46.深度解密四十六:微信KOl、微博大V等“移动营销资源”全揭秘
- linux wenj 立即生效_OpenIdConnect 认证启用 HTTPS 回调 RedirectUri 不生效问题解决
- 局域网助手_WiFi换机助手下载-WiFi换机助手v1.0.3下载
- 世人爱情短命的原因分析
- IE浏览器消失了?这个软件即可恢复IE浏览器
- 鸿蒙宴历史背景,鸿门宴的历史背景介绍