我必须写一个正确的拼写检查符。
我写了第一部分,语言模型检查器,但现在有最艰难的部分, 误差模型P(W | C),即当作者指的是C时,W将在文本中输入的概率。
为了解决这个问题,我提出了最简单的解决方案,算法选择具有最小Damerau-Levenshtein距离的单词,如果有一个名称,算法必须选择最常见的名称。
应用程序正常运行,但我想改进它。我想介绍一种从最常见的错误中学习的电子学习机算法。 我必须实现机器学习算法。
所以我开始思考如何做到这一点。
进入错误模型语言可以找到一些模式:
我想将所有这些都视为事实。
此外,该算法可能用于文本识别或语音识别,因此我必须考虑:
更好地解释问题:我们可以想象这2个场景。
在第一种情况下,诸如具有相似声音的字母之类的错误更可能,而在第二种情况下,印刷错误更可能是错误的。 由于我不知道我的算法将要工作的场景,我应该实现一个动态适应场景的算法,我的意思是如果有一个错误,如 g!useppe的可能性是giuseppe(o.4)geuseppe(o.6) 算法必须先挑选因为形状!类似于我,我发现了很多类似的错误。
我认为解决方案是一种从错误中学习的机器学习算法。
第一个问题,我是否清楚地解释了我的问题? 如果是这样,哪种算法符合我的要求?
我在人工智能和机器学习方面的经验有限。
答案 0 :(得分:0)
选择单一最可能正确的拼写很难,这就是大多数拼写检查器提供多种选择的原因。如果可能的话,我建议你也这样做。有人甚至可能在没有任何统计学习的情况下离开 - 只需向用户提供每个可能的有效名称,使其与输入之间的编辑距离低于某个给定值N.