多标准中文分词 Multi-Criteria-CWS - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
MoModel
V2EX    Python

多标准中文分词 Multi-Criteria-CWS

  •  
  •   MoModel 2019-11-18 22:16:58 +08:00 2783 次点击
    这是一个创建于 2153 天前的主题,其中的信息可能已经有所发展或是发生改变。

    多标准中文分词 Multi-Criteria-CWS


    作者:宋彤彤

    自然语言处理( NLP )是人工智能中很重要且具有挑战性的方向,而自然语言处理的第一步就是分词,分词的效果直接决定和影响后续工作的效率。我们生活和工作中每天都产生着大量的中文数据,由于中文和英文在词句方面有很大的不同,比如英文单词之间以空格作为自然分界符,而中文只是字、句和段能通过明显的分界符来简单划界,“词”和“词组”边界模糊,中文分词相对复杂和困难。所以我们来讨论一下中文分词( Chinese Word Segmentation,CWS )。

    1. 中文分词现状

    中文分词指的是讲一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。现有的分词方法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

    • 基于字符串匹配的分词方法又叫机械分词方法,它是按照一定的策略将待分析的汉字串与一个“充分大”的机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。常用的字符串匹配方法有如下几种:正向最大匹配法(从左到右);逆向最大匹配法(从右到左);最小切分(每一句中切出的词数最小);双向最大匹配(进行从左到右、从右到左两次扫描)。这类算法的优点是速度快,时间复杂度可以保持在 O(n),实现简单,效果尚可;但对歧义和未登录词处理效果不佳。
    • 基于理解的分词方法是通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括三个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。
    • 基于统计的分词方法是在给定大量已经分词的文本的前提下,利用统计机器学习模型学习词语切分的规律(称为训练),从而实现对未知文本的切分。例如最大概率分词方法和最大熵分词方法等。随着大规模语料库的建立,统计机器学习方法的研究和发展,基于统计的中文分词方法渐渐成为了主流方法。主要的统计模型有:N 元文法模型( N-gram ),隐马尔可夫模型( Hidden Markov Model,HMM ),最大熵模型( ME ),条件随机场模型( Conditional Random Fields,CRF )等。在实际的应用中,基于统计的分词系统都需要使用分词词典来进行字符串匹配分词,同时使用统计方法识别一些新词,即将字符串频率统计和字符串匹配结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义的优点。

    2. Multi-Criteria-CWS

    基于统计的分词方法建立在已有的大量已分词文本,即语料库的基础上。为了做出实用的分词工具,不光需要高效的算法,大规模语料库也必不可少。对于缺乏经费的研究团队和个人,往往只能得到 sighan2005 等屈指可数的几个小型语料库。而且这些语料库的标注规范还互不兼容,无法混合起来训练。
    WX20191111-134703@2x.png
    已经有团队开始研究如何利用多方语料库来联合学习中文分词,比如 Chen 等人 2017 年精心设计的对抗神经网络,针对每个语料库提取分词标准相关或无关的特征,但表现不理想。再就是接下来要介绍的 Han He 等人 2018 年提出的方案:受谷歌多语种翻译系统启发,利用工程思想,用标签标识不同标准的数据集,这样就可以识别出自哪个标准的数据集,通过不同语料库之间的迁移学习提升模型的性能,同时输出多标准的分词结果。
    WX20191111-134737@2x.png

    3. 实验及结果

    训练用到的模型是大家熟悉的 Bi-LSTM + CRF。在具体联合训练中将引入的两个人工标识符视作普通字符,不必人工区分句子的来源。这两个人工标识符会提示 RNN 这个句子属于哪种分词标准,使其为每个字符生成的 contexual representation 都受到该分词标准的影响。
    测试的时候,这两个人工标识符起到指定所需分词标准的作用,但并不计入准确率的计算。
    论文在标准的 sighan2005 和 sighan2008 上做了实验,没有针对性调参的情况下依然取得了更高的成绩(当时设备条件限制,所有数据集上都用了同一套超参数)。所有分值都通过了官方评测脚本的验算。下图的 baseline 是在各个语料库上单独训练的结果,+naive 是合并预料却不加标识符的结果,+multi 是论文中联合训练方案的结果。
    WX20191111-145431@2x.png
    该试验使用的特征是极小的,仅仅是字符和 bigram。如果像最近流行的做法加入 12 个 nagram、词典特征( word embedding ),可能还会有进一步提升。但论文中心是一个简单的多标准分词方案,主打精简高效,并非追求高分胜过效率,所以没有采用这些特征工程的手段。在 sighan2008 上的实验及结果在这里不在赘述。

    4. 总结

    这是一种简单的多标注中文分词解决方案,可以在不增加模型复杂度的情况下联合多个语料库训练单个模型。该方案虽然简单,但的确带来了显著的性能提升(特别是对于小数据集如 WTB )。但特别大的数据集收益很小或无法受益(如 MSR ),留作未来研究。这里我们提供该文章的项目地址和一些参考资料,感兴趣的同学可以进一步探索。

    项目地址:https://momodel.cn/workspace/5dc9114b269cf99a59565610?type=app
    **

    5. 参考资料

    博客:http://www.hankcs.com/nlp/segment/multi-criteria-cws.html#respond
    博客:https://www.cnblogs.com/shona/p/11540353.html
    博客:http://www.360doc.com/content/19/0305/12/99071_819341146.shtml
    博客:https://blog.csdn.net/qq_26598445/article/details/81298456
    论文:Effective Neural Solution for Multi-Criteria Word Segmentation, 2018,https://arxiv.org/abs/1712.02856

    关于我们

    Mo(网址:https://momodel.cn)是一个支持 Python 的人工智能在线建模平台,能帮助你快速开发、训练并部署模型。


    Mo 人工智能俱乐部 是由人工智能在线建模平台(网址: https://momodel.cn )的研发与产品团队发起、致力于降低人工智能开发与使用门槛的俱乐部。团队具备大数据处理分析、可视化与数据建模经验,已承担多领域智能项目,具备从底层到前端的全线设计开发能力。主要研究方向为大数据管理分析与人工智能技术,并以此来促进数据驱动的科学研究。

    目前团队每两周(周六)在杭州举办线下沙龙,进行机器学习相关论文分享与学术交流。希望能汇聚来自各行各业对人工智能感兴趣的朋友,不断交流共同成长,推动人工智能民主化、应用普及化。

    image.png

    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1143 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 17:44 PVG 01:44 LAX 10:44 JFK 13:44
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86