条件随机场专题(3)--说起CRF,不得不提的HMM

        说起CRF(条件随机场),不得不提起HMM(隐马尔可夫模型),因为HMM和CRF很像。只不过HMM是生成模型,运用的是统计概率;而CRF是判别模型,运用的是生成判别函数,进行迭代求参。

      1.基本原理:

        隐马尔可夫的基本原理可以用下图说明:

                                                                    

        我们可以用一个实例来解释,比如说:词性标注问题,上边是各个分词序列(X),下边是各个分词的词性序列(y),假设我们一句话中有8个词,词性有5种。那么,这时候就有可能的词性序列就有8的5次方个。

        一个HMM由以下几个部分组成:

        1.模型的状态的数目N(相当于用例中的8个词)

        2.每个状态可能出现的可能的数目M(相当于用例中的5个词性)

        3.状态转移概率矩阵A={aij}(N*N)(相当于用例中的8*8)

        4.从状态观察到的标签的概率分布B={bjk}(N*M)(相当于用例中的8*5)

        5.初始状态概率分布π(N*1)

      2.HMM算法流程:

        (1)初始化状态的概率分布π

        (2)设t=1

        (3)根据状态的输出概率bjk输出Ot

        (4)根据状态转移概率分布aij,将当前时刻t的状态转移到新的状态

        (5)t=t+1,如果t<T,重复步骤(3)(4),否则,结束算法

      3.HMM中有三个基本问题:

        1.估计问题:主要是在已知模型的条件下,求给定观测序列出现的概率,P(O|u)

           方法:暴力计算法O(NMN)、前向算法O(NM2)、后向算法O(NM2)

        2.序列问题:已知模型参数和观测序列,求观测序列队以很高的最可能的状态序列

           方法:“近似算法-->贪心算法-->局部最优”、“维特比算法-->动态规划”

        3.参数估计:给定一个观察序列,如何最大似然的估计参数值,使得P(O|u)最大

           方法:“监督学习-->给出观测序列+对应的状态序列-->极大似然估计”、“非监督学习-->只有观测序列,无对应状态序列-->前后向算法”

      4.HMM三个基本问题:

        1.估计问题:通过词语序列,计算该词语序列发生的概率

        2.解码问题:通过词语序列,找到与之最匹配的词性序列

        3.参数估计:通过匹配出来的结果,进行优化参数

        注意:在词性标注中,词语序列是观察序列(即X),词性序列是隐藏序列,属于HMM的解码问题

猜你喜欢

转载自blog.csdn.net/sihailongwang/article/details/76908570
今日推荐