如何使用aspell或其他工具查找给定单词的常见拼写错误

3

针对给定的单词,我希望能够找到n个最相似的拼写错误。我想知道在这种情况下是否可以使用开源的拼写检查器,例如aspell,除非你有其他建议。

例如:'health'

将会给出:ealth, halth, heallth, healf, ...

1个回答

2
拼写纠正工具可以将拼错的单词转换成可能的正确拼写。您似乎想要反向操作。
从正确拼写的单词到一组可能的拼写错误的转换可以通过对常见单词应用一组变异启发式算法来实现。这些启发式算法可能会执行以下操作:
  • 随机添加或删除单个字符
  • 随机应用成对字符的置换
  • 根据键盘布局将字符更改为其他字符
  • 应用常见的“点”拼写错误;例如,将“ie”转换为“ei”,加倍或减少“l”。
从正确拼写的单词到一组常见的拼写错误的转换非常困难。可能唯一可靠的方法是记录使用拼写检查器软件的大型用户群体所做的实际拼写更正,并汇总结果。这可能(!)超出了您项目的范围。
重新审视我的答案,我认为我漏掉了一些内容。
上面的启发式算法大多数是针对打字错误而不是拼写错误。打字错误是指用户知道正确的拼写但输入错误。拼写错误是指人们不知道一个单词的正确拼写,使用错误的知识或直觉(即猜测)。典型的猜测是基于听单词发音后选择一个(如果正确)最有可能被发音的拼写。
因此,预测拼写错误的良好启发式算法需要基于单词在口语中实际发音的方式。这需要一个音标字典(将实际单词转换为其发音)和一组规则来生成音标单词的可信拼写。这比简单的打字错误启发式算法更加复杂。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接