维特比算法是一个特殊但应用最广的动态规划算法。利用动态规划,可以解决任何一个图中的最短路径问题。而维特比算法是针对一个特殊的图——篱笆网络(Lattice)的有向图最短路径的问题而提出的。它之所以重要,是因为凡是使用隐含马尔可夫模型描述的问题都可以使用它来解码,包括今天的数字通信、语音识别、机器翻译、拼音转汉字、分词等。下面用输入法拼音转汉字来说明。
假定用户盲打时输入的拼音是,对应的汉字是
(为简单起见,以字为单位来解释维特比算法),那么隐含的状态序列即为在输出序列发生的条件下概率最大的那条序列:
输入为可见序列,产生他们的隐含序列