我需要 C# 的局部性保留哈希函数实现(或可能的替代解决方案)。我想找出一种使用相似性阈值将字符串(即有时长度略有不同的相似基因序列标记)映射到相同存储桶中的方法。例如,如果两个基因序列标记的 Levenshtein 编辑距离 < 5、10、25 等的指定阈值......我想将它们分配给相同的桶/类别。但是,我不能使用编辑距离,因为事先不知道标记类别,而且计算开销很大。我需要一个非常有效的局部性保留哈希函数(或替代解决方案),它允许我根据阈值确定最接近哈希值的存储桶,或者在不存在足够接近的存储桶时创建一个新存储桶。至今,我什至无法在 C# 中实现一个局部性保留散列函数,只有出版物。我想我会在尝试自己写之前先问一下。
问问题
530 次
1 回答
0
一些语音算法(例如http://en.wikipedia.org/wiki/Soundex)可以提供帮助。
它基本上将单词转换为描述其发音的字符数组。它可用于搜索相似的单词。同样重要的是要注意,此类算法是特定于语言(人类语言,而不是编程语言)的。
于 2013-10-20T07:58:32.803 回答