快速语音归约/哈希算法eudex的Python实现
eudex的Python项目详细描述
这是ticki/eudex的Python端口,可以通过
pip install eudex
Eudex([juːˈdɛks])是一种语音简化/哈希算法, 根据拼写和 发音。在
它来源于pulmonic consonants的分类。在
Eudex比Soundex快两个数量级,还有几个数量级 比Levenshtein距离快得多,这使得它可以继续运行 在很短的时间内形成一组大串。在
示例
^{pr2}$特点
- 基于发音的高质量局部敏感哈希。在
- 与英语、加泰罗尼亚语、德语、西班牙语、意大利语合作, 还有瑞典语。在
- 复杂的语音映射。在
- 质量比Soundex好。在
- 考虑非英语字母。在
- 极快。在
- 元音敏感。在
常见问题解答
为什么Rupert和Robert没有像Soundex那样映射到相同的值?
Eudex不是一个语音分类器,它是一个语音哈希器。它将单词映射到 暴露差异的方式。在
结果似乎完全随机。怎么了?
这很可能是因为你假设发音相似的单词的散列映射到每个单词附近 另一个,虽然他们没有。相反,他们的汉明距离(即异或值 和他们的位总和)将是低。在
是否支持非英语字母?
是的,它支持所有的C1字母(例如,ü,ö,æ,ß,等等),并且它将它们各自的声音带入 帐户。在
只有英语吗?
不,它也适用于大多数欧洲语言。然而,它仅限于拉丁字母。在
是否考虑了有向图?
该表也被设计成封装有向图,尽管没有单独的表用于这些有向图(如 变音)。在
它能代替Levenshtein吗?
它是notLevenshtein距离的替代品,在某些用例中它是Levenshtein距离的替代品, e、 寻找拼写检查建议。在
它测试什么语言?
它在英语、加泰罗尼亚语、德语、西班牙语、瑞典语和意大利语词典上进行了测试,并已确认所有这些词典的质量都不错。在
实施
- Python:这个存储库
- 铁锈:ticki/eudex
- Java:jprante/elasticsearch-analysis-phonetic-eudex
- JavaScript:Yomguithereal/talisman
- 项目
标签: