【机器学习】条件随机场

2020 年 2 月 4 日 AINLP



本文介绍了条件随机场模型,首先对比了隐马尔科夫模型、最大熵马尔科夫模型、条件随机场模型。基于前二者存在的1)独立性假设问题,2)标注偏置问题,条件随机场采用最大熵模型的特征模板定义克服独立性问题,参数学习过程建立在最大化整条序列的概率,而不是在时刻上进行归一化。


作者 | 文杰

编辑 | yuquanle




条件随机场



条件随机场是一个概率图模型,深入图模型的话实在有太多东西。这里,我们接着隐马尔科夫模型和最大熵马尔科夫模型基础理解条件随机场。在序列标注问题上,条件随机场与两者之间的差异:


1)隐马尔科夫模型是一个生成模型,其假设当前时刻状态只与上一状态有关,而当前的观测值只与当前的状态有关,所以独立性假设非常强。

2)最大熵马尔科夫模型则通过特征模板的定义克服了独立性假设问题。基于熵原理,在满足所有条件经验期望的条件下,熵最大的为最好的模型,也就导出了对数线性模型,是一个标准的判别模型。

3)条件随机场同最大熵马尔科夫模型非常一致,也是一个基于特征模板的判别模型。然而在序列标注问题上,最大熵马尔科夫模型将每个时刻看作是一个分类问题,每时刻独立归一化,这就导致标注偏置问题,条件随机场则归一化作用于整个序列。

结合最大熵模型,模型输出条件概率 ,假设所有的特征模板为 ,(其中一些书中分为转移特征和发射特征)。最大化条件概率为:



考虑整个序列的条件概率 ,条件随机场的目标函数是最大化



对于参数的学习,同样可以采用最大熵模型使用的优化算法,比如梯度下降的方法。

状态预测问题就是一个最大化序列概率获得状态序列:



其中归一化因子忽略,分子的指数形式单调递增也忽略。所以整个序列的状态等价于在最优的状态序列下特征模板与特征模板权重乘积和最大。就此,条件随机场就变成了一个特征模板定义的问题了,特征模板直接决定条件随机场的性能。



代码实战


int CRF_CWS(){    cout<<"-----------training-----------"<<endl;    DataStr traindata;    LoadDataStr(traindata,"data\\pku_training.utf8");    createVocabList_C(traindata);

cout<<"------------test-------------"<<endl; DataStr testdata;;//加载测试数据 LoadDataStr(testdata,"data\\pku_test.utf8");
cout<<"------------FenCi--------------"<<endl;
FenCi(testdata);
cout<<"-----------PingCe---------------"<<endl;
DataStr resultdata; LoadDataStr(resultdata,"data\\result.utf8");
DataStr golddata; LoadDataStr(golddata,"data\\pku_test_gold.utf8");
PingCe(resultdata,golddata); return 0;}
完整代码见 阅读原文



本文转载自公众号:AI小白入门,作者文杰


推荐阅读


AINLP年度阅读收藏清单


【机器学习】最大熵马尔科夫模型


中文文本纠错算法--错别字纠正的二三事


值得留给子孙后代的计算机课程


Siamese network 孪生神经网络--一个简单神奇的结构


征稿启示| 让更多的NLPer看到你的文章


我们建了一个免费的知识星球:AINLP芝麻街,欢迎来玩,期待一个高质量的NLP问答社区


关于AINLP


AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLP君微信(id:AINLP2),备注工作/研究方向+加群目的。


登录查看更多
3

相关内容

专知会员服务
137+阅读 · 2020年5月19日
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
209+阅读 · 2020年4月26日
机器学习速查手册,135页pdf
专知会员服务
336+阅读 · 2020年3月15日
【经典书】精通机器学习特征工程,中文版,178页pdf
专知会员服务
347+阅读 · 2020年2月15日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
99+阅读 · 2019年10月9日
基础 | 一文轻松搞懂-条件随机场CRF
黑龙江大学自然语言处理实验室
16+阅读 · 2018年3月24日
动手写机器学习算法:SVM支持向量机(附代码)
七月在线实验室
12+阅读 · 2017年12月5日
基于机器学习方法的POI品类推荐算法
全球人工智能
3+阅读 · 2017年11月22日
BAT机器学习面试1000题系列(第51~55题)
七月在线实验室
10+阅读 · 2017年10月8日
BAT机器学习面试1000题系列(第46~50题)
七月在线实验室
7+阅读 · 2017年10月7日
机器学习(13)之最大熵模型详解
机器学习算法与Python学习
7+阅读 · 2017年8月24日
从点到线:逻辑回归到条件随机场
夕小瑶的卖萌屋
15+阅读 · 2017年7月22日
机器学习(6)之朴素贝叶斯NB及实例
机器学习算法与Python学习
4+阅读 · 2017年7月20日
Conditional BERT Contextual Augmentation
Arxiv
8+阅读 · 2018年12月17日
Logically-Constrained Reinforcement Learning
Arxiv
3+阅读 · 2018年12月6日
Arxiv
8+阅读 · 2018年5月15日
Arxiv
5+阅读 · 2018年5月10日
VIP会员
相关VIP内容
专知会员服务
137+阅读 · 2020年5月19日
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
209+阅读 · 2020年4月26日
机器学习速查手册,135页pdf
专知会员服务
336+阅读 · 2020年3月15日
【经典书】精通机器学习特征工程,中文版,178页pdf
专知会员服务
347+阅读 · 2020年2月15日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
99+阅读 · 2019年10月9日
相关资讯
基础 | 一文轻松搞懂-条件随机场CRF
黑龙江大学自然语言处理实验室
16+阅读 · 2018年3月24日
动手写机器学习算法:SVM支持向量机(附代码)
七月在线实验室
12+阅读 · 2017年12月5日
基于机器学习方法的POI品类推荐算法
全球人工智能
3+阅读 · 2017年11月22日
BAT机器学习面试1000题系列(第51~55题)
七月在线实验室
10+阅读 · 2017年10月8日
BAT机器学习面试1000题系列(第46~50题)
七月在线实验室
7+阅读 · 2017年10月7日
机器学习(13)之最大熵模型详解
机器学习算法与Python学习
7+阅读 · 2017年8月24日
从点到线:逻辑回归到条件随机场
夕小瑶的卖萌屋
15+阅读 · 2017年7月22日
机器学习(6)之朴素贝叶斯NB及实例
机器学习算法与Python学习
4+阅读 · 2017年7月20日
Top
微信扫码咨询专知VIP会员