• 条件随机场入门(五) 条件随机场的预测算法


    CRF 的预测问题是给定模型参数和输入序列(观测序列)x, 求条件概率最大的输出序列(标记序列)$y^*$,即对观测序列进行标注。条件随机场的预测算法同 HMM 还是维特比算法,根据 CRF模型可得:

    egin{aligned}
    y^* &= arg max_yP_w(y|x) \
    &=  arg max_yfrac{ exp left {w cdot F(y,x) ight}}{Z_w(x)} \
    &=  arg max_y exp left {w cdot F(y,x) ight} \
    &= arg max_y w cdot F(y,x)
    end{aligned}

    于是,条件随机场的预测问题成为求非规范化概率最大的最优路径问题

    [arg max_y w cdot F(y,x)]

    注意,这时只需计算非规范化概率,而不必计算概率,可以大大提高效率。为了求解最优路径,将优化目标写成如下形式:

    [max_y sum_{i=1}^n w cdot F_i(y_{i-1},y_i,x)]

    其中,

    [F_i(y_{i-1},y_i,x) = left {f_1(y_{i-1},y_i,x),f_2(y_{i-1},y_i,x),…,F_K(y_{i-1},y_i,x) ight }^T]

    为局部特征向量。

    下面叙述维特比算法。首先求出位置 1 的各个标记 j=1,2,…,m 的非规范化概率:

    [delta_1(j) = w cdot F_1(y_0 = start,y_1 = j,x)]

    一般地,由递推公式,求出到位置 i 的各个标记 $l =1,2,…m$ 的非规范化概率的最大值,同时记录非规范化概率最大值的路径:

    egin{aligned}
    delta_i(l) &= max_{1 le j le m} left {delta_i(l-1) + w cdot F_i(y_{i-1} = j,y_i = l,x)  ight},  & l= 1,2,...,m\
    Psi_i(l) &=argmax_{1 le j le m} left {delta_{i-1}(l) + w cdot F_i(y_{i-1} = j,y_i = l,x)  ight}, & l= 1,2,...,m
    end{aligned}

    直到i = n 时终止。这时求得非规范化概率的最大值为

    [max_y(w cdot F(y,x)) = max_{1 le j le m} delta_n(j)]

    及最优路径的终点

    [y_n^* = arg max_{1 le j le m} delta _n(j)]

    由此最优路径终点返回,不断的找到各个时刻的最优值:

    [y_i^* = Psi_{i+1}(y^*_{i+1}) , i = n-1,n-2,…,1]

    以上便是一条最优路径了,求得该最优路径:

    [y^* = (y_1^*,y_2^*,…,y_n^*)^T]

    这便为条件随机场预测的维特比算法。

  • 相关阅读:
    图数据库-Neo4j使用
    [原创]networkx 画中文节点
    python networkx:绘制网络图
    Python二维数组,坑苦了
    xgboost
    python 机器学习
    计算机网络知识
    前端优化不完全指南(转)
    FlashFXP 4.3.1 注册码
    你真的会使用Chrome开发者工具吗?
  • 原文地址:https://www.cnblogs.com/ooon/p/5827078.html
Copyright © 2020-2023  润新知