条件随机场 (CRF) 分词序列谈之一(转)
http://langiner.blog.51cto.com/1989264/379166
条件随机场 (CRF) 分词序列谈之一
Langiner
判别式机器学习技术来解决分词问题,其中判别式机器学习技术主要代表有条件随机场,最大熵/隐马尔科夫最大熵、感知机,支撑向量机等,有关它们的相同点与不同点以后有机会在谈,今天主要谈利用随机场解决分词问题
条件随机场(Conditional Random Fields)由John Lafferty提出并应用于自然语言处理领域,主要用于序列标注问题,如分词、实体识别、词性标注(当然词性数目相对比较小的情况下)、浅层句法分析等问题。
判别式机器学习技术解决分词问题基于由字构词理念,将分词问题转化为分类问题,通过定义每个字的词位信息(每个字在词中的位置)来确定字类别的序列预测,而词位信息可以定义为下面其中任何一种
两类(词首和词中)、三类(词首、词中和词尾)、四类(词首、词中、词尾,单字词)等等,一般而言,类别越多,字的区别能力越强,分类越精确,但是分类空间越大,模型也越大,解码空间越大,导致解码速度也越慢,实际系统中,三类别(词首、词尾和词中)是一个很好的平衡。
互联网上开源的随机场项目很多,最典型和使用最多的是CRF++,里面有完整的源代码和应用实例,通过该软件,我们可以方便学习和使用。CRF++开源代码最大问题是只有Linux版,考虑到Linux环境下,跟踪调试不方便,如果在Windows下通过建立Visual C++或者Visual Studio工程,通过跟踪调试,更加有效地学习该算法,本人将自己的学习实践中,将Linux版本移植到Windows平台上,并将其开源在SourceForge平台上(CRF中文分词开源版)。
利用哪些特征业绩如何利用这些特征是机器学习算法性能关键,中文分词主要使用字的上下文知识,上下文范围可以是3字、5字和7字,同时考虑到由字构词处理长词比较弱,可以考虑引入仿词模式、成语/习语等特征,有研究表示,加入核心词典会提高词典词的分类效果,这需要权衡,如果训练语料覆盖核心词典比较全面,核心词典的构词知识往往在语料中已经包含,但是如果训练语料对于核心词覆盖不够,可以考虑加入核心词的构词知识,但是这对核心词典有比较高的要求,我们认为北大计算语言研究所发布的GKB词典可以作为核心词典使用,如果没有比较好的核心词典,这个核心词的构词知识还是不要加入为好。
本文出自 “专注自然语言技术” 博客,请务必保留此出处http://langiner.blog.51cto.com/1989264/379166
条件随机场 (CRF) 分词序列谈之一(转)的更多相关文章
- 条件随机场CRF(二) 前向后向算法评估标记序列概率
条件随机场CRF(一)从随机场到线性链条件随机场 条件随机场CRF(二) 前向后向算法评估标记序列概率 条件随机场CRF(三) 模型学习与维特比算法解码 在条件随机场CRF(一)中我们总结了CRF的模 ...
- 条件随机场CRF(三) 模型学习与维特比算法解码
条件随机场CRF(一)从随机场到线性链条件随机场 条件随机场CRF(二) 前向后向算法评估标记序列概率 条件随机场CRF(三) 模型学习与维特比算法解码 在CRF系列的前两篇,我们总结了CRF的模型基 ...
- 条件随机场(CRF) - 2 - 定义和形式(转载)
转载自:http://www.68idc.cn/help/jiabenmake/qita/20160530618218.html 参考书本: <2012.李航.统计学习方法.pdf> 书上 ...
- 条件随机场(CRF) - 1 - 简介(转载)
转载自:http://www.68idc.cn/help/jiabenmake/qita/20160530618222.html 首先我们先弄懂什么是"条件随机场",然后再探索其详 ...
- 条件随机场CRF(一)从随机场到线性链条件随机场
条件随机场CRF(一)从随机场到线性链条件随机场 条件随机场CRF(二) 前向后向算法评估观察序列概率(TODO) 条件随机场CRF(三) 模型学习与维特比算法解码(TODO) 条件随机场(Condi ...
- 条件随机场CRF
条件随机场(CRF)是给定一组输入随机变量X的条件下另一组输出随机变量Y的条件概率分布模型,其特点是假设输出随机变量构成马尔科夫随机场.实际上是定义在时序数据上的对数线性模型.条件随机场属于判别模型. ...
- 条件随机场(CRF) - 1 - 简介
声明: 1,本篇为个人对<2012.李航.统计学习方法.pdf>的学习总结,不得用作商用,欢迎转载,但请注明出处(即:本帖地址). 2,由于本人在学习初始时有很多数学知识都已忘记,所以为了 ...
- 条件随机场(CRF) - 2 - 定义和形式
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xueyingxue001/article/details/51498968声明: 1,本篇为个人对& ...
- 用条件随机场CRF进行字标注中文分词(Python实现)
http://www.tuicool.com/articles/zq2yyi http://blog.csdn.net/u010189459/article/details/38546115 主题 ...
随机推荐
- 使用 Python 登录网站(转)
对于大部分论坛,我们想要抓取其中的帖子分析,首先需要登录,否则无法查看. 这是因为 HTTP 协议是一个无状态(Stateless)的协议,服务器如何知道当前请求连接的用户是否已经登录了呢?有两种方式 ...
- select,poll,epoll之间的区别
(1)select,poll实现需要自己不断轮询所有fd集合,直到设备就绪,期间可能要睡眠和唤醒多次交替.而epoll其实也需要调用epoll_wait不断轮询就绪链表,期间也可能多次睡眠和唤醒交替, ...
- Unity3D实践系列07,组件的启用或禁用开关,物体的的可见或不可见开关,以及相应事件
创建一个Unity项目. 在"Project"窗口中,在"Asserts"中,添加"_MyScene"文件夹. 点击"File&q ...
- C#各种泛型集合体验
本篇体验除Queue<T>和Stack<T>之外的其它泛型集合. SortedList<TKey, TValue> SortedList<TKey, TVal ...
- ASP.NET MVC中实现属性和属性值的组合,即笛卡尔乘积01, 在控制台实现
在电商产品模块中必经的一个环节是:当选择某一个产品类别,动态生成该类别下的所有属性和属性项,这些属性项有些是以DropDownList的形式存在,有些是以CheckBoxList的形式存在.接着,把C ...
- View Programming Guide for iOS_读书笔记
关于Window的定义的要点 Windows do not have any visible content themselves but provide a basic container for ...
- WordPress基础:设置后台语言
菜单-设置-站点语言
- 【转】IntelliJ IDEA关联SVN
http://blog.csdn.net/xdd19910505/article/details/52756417 问题描述: IntelliJ IDEA安装之后,使用SVN进行提交或更新以及检出代码 ...
- websocket消息推送实现
一.服务层 package com.demo.websocket; import java.io.IOException; import java.util.Iterator; import java ...
- SSD阵列卡方案优化:考虑使用RAID 50替代RAID 10
最近一直在研究RAID 50,因为牺牲一半的容量的RAID 10代价实在太大了,而且它提供的可用性也并不是百分百的,我们首先来看下RAID 10的可用性分析: 以同等容量的不同RAID方式作为案例分析 ...