人工智能之隐马尔可夫模型

隐马尔可夫模型 (HMM)是一个统计模型中文分词 人工智能,也是马尔科夫链的一种,它通过观测系列来求解隐藏在背后的状态系列概率问题 。广泛应用在语音识别,词性自动标注,音字转换,概率文法等各个自然语言处理等应用领域 。
【人工智能之隐马尔可夫模型】隐马尔可夫模型的五个元素:
举一个例子:假设有三个不同的骰子 。第一个骰子是六个面的骰子(D6),每个面(1 , 2,3,4,5,6)出现的概率是1/6;第二个骰子是个四面体(D4) , 每个面(1,2,3,4)出现的概率是1/4;第三个骰子有八个面(D8),每个面(1,2,3,4,5,6 , 7,8)出现的概率是1/8 。现在,我们掷骰子10次,但是我们不知道是哪个骰子掷 。
可观测状态:在模型中与隐含状态相关联,可通过直接观测而得到 。例如掷骰子10次得到一串数字:{1 6 3 5 2 7 3 5 2 4}
隐含状态:这些状态之间满足马尔可夫性质,是马尔可夫模型中实际所隐含的状态 。例如得出上面一串数字所用的骰子系列:{D6 D8 D8 D6 D4 D8 D6 D6 D4 D8}
隐含状态转移概率矩阵:各个隐含状态之间的转移概率所构成的矩阵 。例如D6的下一个状态是D4,D6,D8的概率为1/3;D4 , D8的下一个状态是D4,D6 , D8的转换概率为1/3
观测状态转移概率矩阵:在某时刻,某隐含状态条件下可观测状态概率所构成的矩阵 。例如D6产生(1,2,3,4 , 5 , 6)的输出概率为1/6
初始状态概率矩阵:表示隐含状态在初始时刻t=1的概率矩阵 。例如第一次掷骰子为D6为0.5,D4为0.3 , D8为0.2
HMM解决三种问题:
评估问题:计算某一观测序列的概率 。例如知道骰子有几种(隐含状态数量),每种骰子是什么(转换概率),根据掷骰子掷出的结果(可见状态链),求得出一串数字{1 6 3 5 2 7 3 5 2 4}概率 。
解码问题:寻找给定条件下概率最大的隐状态序列 。例如知道骰子有几种(隐含状态数量),每种骰子是什么(转换概率),根据掷骰子掷出的结果(可见状态链),求出现概率最大的隐含状态链(例如{D6 D8 D8 D6 D4 D8 D6 D6 D4 D8}概率最大)
学习问题:求满足条件的HMM模型参数 。例如知道骰子有几种(隐含状态数量),不知道每种骰子是什么(转换概率) , 观测到很多次掷骰子的结果(可见状态链),反推出每种骰子是什么(转换概率) 。
HMM模型主要应用于语音识别、文字识别等领域 , 我在上一篇文章《人工智能之中文分词》中提到的jieba分词工具中文分词 人工智能,其算法主要来源于HMM模型中的算法以求得最优路径 。
本文到此结束,希望对大家有所帮助 。