zoukankan      html  css  js  c++  java
  • 条件随机场 (CRF) 分词序列谈之一(转)

    http://langiner.blog.51cto.com/1989264/379166

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。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

  • 相关阅读:
    Servlet(JSP)中动态生成JPG PNG透明 水印图像
    THML IFRAME框架 各个子页面间操作
    JAVA时间处理和格式化
    ACM母函数详解 整数划分详解 java
    java中的Java5.0 的注释 (Annotation)、多线程包2(J2SE入门26)
    java中的String为什么可以使用==比较字符串内容?
    深入biztalk中sql adapter
    biztalk中消息的Property fields和Distinguished fields
    深入biztalk中Delivery Notification和ACK、NACK机制
    深入biztalk中各种端口绑定方式(一) 背景知识订阅机制
  • 原文地址:https://www.cnblogs.com/DjangoBlog/p/4201172.html
Copyright © 2011-2022 走看看