什么是HMM隐马尔可夫模型

大家好,今天我们要讨论的主题是,隐马尔可夫模型。
案例,掷骰子

假设,有三种不同的骰子。第一个是立方体,有1到6、六个面,记作D6。第二个是正4面体,1到4四个面,记作D4。第三个是正8面体,1到8,8个面,记作D8。它们每个面出现的概率分别是1/6、1/4和1/8。
我们蒙着眼睛,从这三个骰子中,随机的选择一个,进行抛掷。投掷后,可以得到1到8中的某个数字。

在抛掷的过程中,被我们随机选出来的骰子的编号,也可以组成一串序列,序列中包括了D4、D6和D8。因为我们是蒙着眼睛选骰子,所以并不知道具体选的是哪个骰子。

我们不必纠结,为什么抛掷时,就一定不知道选的是哪个骰子,我们就假设,3个骰子摸起来的感觉是一样的就好了。

在实验过程中,产生了两个数据链,可见状态链与隐含状态链,将它们组合在一起,就是隐马尔可夫模型。
隐马尔可夫模型的概念
隐马尔可夫模型,Hidden Markov Model,简称HMM。它是关于时序的概率模型,该模型包含了随机生成的不可观测序列,该序列被称为状态序列,使用S表示。例如,刚刚的骰子序列,就是状态序列。

每个不可观测状态,都会产生一个可观测的结果,这样会得到一个观测序列,使用O表示。也就是掷骰子时,产生的数字序列。
每个状态和观测都会与一个时刻进行对应,如果有t个时刻,就产生了s1到st,o1到ot。就像我们掷骰子,需要一次一次的掷,那么t就可以代表是第几次掷骰子。
在HMM中,状态序列是隐藏的,无法被观测到,因此状态变量是一个隐变量,这也是HMM中H的来源。而MM是马尔可夫模型,它代表了隐藏的状态序列是由一个马尔科夫链,随机生成的。
隐马尔可夫模型的关键因素
在隐马尔可夫模型中,包含了四个关键因素,分别是隐含状态、可见状态、隐含状态的转换、和可见状态的输出。

各个隐含状态之间会进行转换,并有对应的转换概率。例如,在掷骰子的过程中,如果每次都是随机挑选骰子,那么三种不同骰子的转换概就是1/3。
隐含状态会输出可见状态,它们之间有一个输出概率,不同隐含状态到可见状态的输出概率可能不同。
例如,隐含状态D6输出可见状态1到6,概率是1/6。D4输出1到4,概率是四分之一。
隐马尔可夫模型的数学表示
为了进一步讨论隐马尔可夫模型,需要使用数学符号来表示HMM。其中包括了,隐含状态Q和观测结果V两个集合,状态转移概率矩阵A、观测概率矩阵B、初始状态概率向量π,三个概率矩阵。
具体来说,隐含状态集合Q,包括q1到qn,N种状态。观测结果集合V,包括v1到vm,M种可能的结果。

例如,在掷骰子的案例中,n=3,q1、q2、q3对应D6、D4、D8,m=8,v1到v8对应数字1到8。

状态转移的概率矩阵A是一个N*N的矩阵。其中aij代表了状态qi转移到状态qj的概率。具体的,aij等于,在st等于qi的条件下,s(t+1)等于qj的概率。

例如,3个骰子,选择任意骰子的概率都是1/3,那么就得到了3乘3的状态转移概率矩阵,其中的每个元素都是0.33。

观测概率矩阵为B。由于每一个状态q都可以输出一个观测结果v,因此B是一个N乘M的矩阵,其中bij代表了在时刻t,状态qi输出观测结果vj的概率。

例如,在掷骰子时,根据三种骰子的输出,可以得到一个3乘8的概率矩阵。第一行对应了六面骰子,掷出1到6的概率是六分之一,掷出7和8的概率是0。而第二行和第三行,分别代表投掷四面、八面骰子的输出1到8的概率。

初始状态的概率向量是π,它是一个N*1的列向量。πi代表了在时刻t=1时,状态为qi的概率。例如,掷骰子时,三种骰子的初始概率都是0.33。

总结来说,π和A确定了隐藏的马尔科夫链,也就是如何生成不可观测的状态序列s。B确定了如何从隐藏状态产生观测序列o。隐马尔可夫模型由A、B、π共同决定,使用三元符号λ等于A、B、π表示。
那么到这里,隐马尔可夫模型就讲完了,感谢大家的观看,我们下节课再会。