levenshtein-distance相关内容

优化Levenshtein距离的速度

我有一个单元格字典,其中包含很多单词(大约15000个). 我想为所有单词对计算函数strdist(以计算Levenshtein距离).我尝试了两种方法,但是它们都非常慢.什么是更有效的解决方案? 这是我的代码(dict_keys是我的长度为m的单元格数组): 1) matrix = sparse(m,m); for i = 1:m-1; matrix(i,:) = ..
发布时间:2020-08-10 22:23:18 其他开发

Levenshtein和Trigram的替代品

说我的数据库中有以下两个字符串: (1) 'Levi Watkins Learning Center - Alabama State University' (2) 'ETH Library' 我的软件从数据源接收自由文本输入,并且应该将这些自由文本与数据库中的预定义字符串(上面的字符串)进行匹配. 例如,如果软件获取字符串 'Alabama University' ,则它应该认识 ..
发布时间:2020-08-06 03:35:23 其他开发

比较相似度算法

我想使用字符串相似性函数在数据库中查找损坏的数据. 我遇到了其中几个: Jaro, Jaro-Winkler, Levenshtein, 欧几里得和 Q-gram 我想知道它们之间有什么区别,以及它们在什么情况下最有效? 解决方案 在勘误表和从Wikipedia, Jaro-Winkler : 在计算机科学和统计学中,Jaro–Winkler距离 (Wink ..

如何在SQLite中使用editdist3

根据回答另一个问题,在sqlite中,Levenshtein距离是通过称为editdist3的SQL函数实现的. (还要比较文档) 现在,当我尝试使用它时,我得到的只是一个不存在的错误: ╰┄┄> sqlite3 SQLite version 3.11.1 2016-03-03 16:17:53 Enter ".help" for usage hints. Connected to a ..
发布时间:2020-06-16 18:41:53 数据库

如何更正此Damerau-Levenshtein实现中的错误?

我又提出了另一个冗长的问题.实验过许多基于Python的Damerau-Levenshtein 编辑距离实现,我终于找到了下面列出的那个作为editdistance_reference().它 似乎可以提供正确的结果,并且似乎可以有效实施. 因此,我决定将代码转换为Cython.在我的测试数据上,参考方法设法提供了结果 进行11,000个比较(对于长约12个字母的单词对),而Cythoniz ..
发布时间:2020-06-13 18:59:54 Python

T-SQL中的Levenshtein距离

我对T-SQL中计算Levenshtein距离的算法感兴趣. 解决方案 Arnold Fribble在 sqlteam.com上有两个建议/forums 来自 2005年6月和 的一个 另一个从 2006年5月 更新的版本 这是2006年的更年轻版本: SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO CREATE ..
发布时间:2020-06-13 18:59:49 其他开发

Python中的高性能模糊字符串比较,使用Levenshtein或difflib

我正在进行临床消息归一化(拼写检查),其中,我对照900,000个单词的医学词典检查了每个给定的单词.我更担心时间的复杂性/性能. 我想进行模糊字符串比较,但是我不确定要使用哪个库. 选项1: import Levenshtein Levenshtein.ratio('hello world', 'hello') Result: 0.625 选项2: import d ..
发布时间:2020-06-11 19:27:26 Python

如何修改Levenshtein算法,以了解它是插入,删除还是替换字符?

因此,我试图设计一种Levenshtein算法的衍生产品,在该算法中,我跟踪在字符串中进行了哪些转换(插入a或用a代替b)。 示例: 基本上,说我正在计算“ bbd”和“ bcd”的编辑距离 编辑距离将为1,并且转换将为“对于c而言,为subbtitude b”。 问题: 我会解决这个问题,因为我见过的实现并不关心自己知道哪种操作,而只知道总成本? 解决方案 您可 ..
发布时间:2020-06-03 21:21:11 Python

莱文斯坦距离极限

如果我有一些我不想超过的距离。例子=2。 我可以在算法完全完成之前就知道最小的允许距离吗? 也许有类似的算法可以完成它 我有必要减少工作程序的时间。 解决方案 如果您执行自上而下的动态编程/递归+记忆,则可以将当前大小作为附加参数传递,如果超过2,则尽早返回。但是我认为这样做会很无效率,因为您将重新访问状态。 如果您执行自下而上的dp,则将逐行填充(只需保留最后一行和当 ..
发布时间:2020-06-03 21:01:57 其他开发

使用levenshtein距离的两个全文相似度

我有两个文本文件要比较。我所做的是: 我将它们分成句子。 我ve测量了一个文件中每个句子与第二个文件中每个句子之间的levenshtein距离。 我想计算这两个文本文件之间的平均相似度,但是我很难传递任何有意义的值-显然算术平均值(所有距离的总和除以比较数)是一个坏主意。 如何解释此类结果? 编辑: 距离值已标准化。 解决方案 levenshtein距离具有最大 ..
发布时间:2020-06-03 20:49:37 其他开发

如何确定人物相似度?

我正在使用Levenshtein距离在OCR之后查找相似的字符串。但是,对于某些字符串,编辑距离是相同的,尽管视觉外观明显不同。 例如字符串 Co 将返回以下匹配项: CY(1) CZ(1) Ca(1) 考虑到, Co 是OCR引擎 Ca 的结果比那些更可能匹配。因此,在计算了Levenshtein距离之后,我想通过按视觉相似度排序来优化查询结果。为了计算相似度, ..

修改Levenshtein距离算法以不计算所有距离

我正在研究模糊搜索实现,作为实现的一部分,我们正在使用Apache的StringUtils.getLevenshteinDistance。目前,我们要为模糊搜索指定一个特定的最大平均响应时间。经过各种改进并进行了一些分析后,花费最多时间的地方是计算Levenshtein距离。在三个或三个以上字母的搜索字符串上,它大约占总时间的80-90%。 现在,我知道这里可以做些限制,但是我已经阅读了之前 ..
发布时间:2020-06-03 20:07:04 Java开发

模糊搜索算法(近似字符串匹配算法)

我希望创建一个模糊搜索算法。 但是,经过数小时的研究,我真的很努力。 我想创建一种算法,对学校名称列表进行模糊搜索。 / p> 这是我到目前为止所看到的: 我的大部分研究继续指向Google和Stackoverflow上的“ 字符串指标”,例如: Levenshtein距离 Damerau-Levenshtein距离 Needleman–Wunsch算法 但是, ..

Jaro-Winkler和Levenshtein距离之间的区别?

我有一个用例,需要对多个文件中的数百万条记录进行模糊匹配。我为此确定了两种算法: Jaro-Winkler 和 Levenshtein 编辑距离。 当我开始探索两者时,我无法理解两者之间的确切区别。看起来Levenshtein给出了两个字符串之间的编辑次数,而Jaro-Winkler给出了0.0到1.0之间的匹配分数。我不了解该算法。由于我需要使用任何一种算法,因此我需要知道在算法性能方面的 ..