我的问题从概念上讲与解决字谜类似,除了我不能仅仅使用字典查找。我试图找到合理的单词而不是真实的单词。
我基于一堆文本中的字母创建了一个N元语法模型(目前为N = 2)。现在,给定一个随机的字母序列,我想根据转换概率将它们替换为最可能的序列。我以为开始时会需要维特比算法,但从更深入的角度来看,维特比算法会根据观察到的输出优化一系列隐藏的随机变量。我正在尝试优化输出顺序。
有没有一种我可以阅读的知名算法?还是我在维特比(Viterbi)上走上正轨,只是不知道如何应用它?
更新资料
我增加了赏金,要求对这个问题有更多的了解。(分析说明了为何无法采用有效方法,模拟退火以外的其他启发式/近似方法等)
如果我正确理解了您的问题,那么您正在搜索单词中所有字母的排列,以寻找2克概率乘积最低的那个。
如果您说的话太长,无法简单地对所有组合进行暴力破解,我发现随机优化算法会在短时间内产生良好的效果。我(具有数学背景)已经对“ 模拟退火 ” 算法做了一些工作,我认为它非常适合您的问题。而且很容易实现。