gpt4 book ai didi

java - 姓名错误更正

转载 作者:可可西里 更新时间:2023-11-01 18:28:33 26 4
gpt4 key购买 nike

我正在尝试设计一种算法来执行名称纠错。我的方法是拥有一个包含正确名称的数据库,计算每个名称与输入的名称之间的编辑距离,然后建议 5 个或 10 个最接近的名称。

此任务与标准的单词纠错有很大不同,因为某些名称可能会被首字母替换。例如“Jonathan Smith”和“J. Smith”实际上非常接近并且很容易被认为是同一个名字,所以编辑距离如果不是 0 也应该非常小。另一个挑战是一些名字在发音时可能会写得不同相同的。例如 ShnaiderSchneider 是由不同语言环境的人编写的同名版本(我想有更好的例子)。还有另一种情况 - 想象一下在编写 Jawaharlal Nehru 时可能出现的所有错误,其中大部分与真名无关。同样,它们中的大多数可能在语音上相似。

显然,Lucene 的纠错算法在这里对我没有帮助,因为它不处理上述情况。

所以我的问题是:您是否知道有任何库能够对名称进行纠错?你能提出一些算法来处理上述情况吗?

我对 C++ 或 Java 中的库感兴趣。至于算法提案,任何语言或伪代码都可以。

最佳答案

有关拼音匹配,请参阅 Soundex .

我认为修改 Levenshtein 距离算法以将“缩写为首字母”和“从首字母扩展”视为单距离编辑应该很简单,但目前我无法了解细节。

关于java - 姓名错误更正,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13246800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com