词位标注汉语分词技术详解
- 格式:pdf
- 大小:229.24 KB
- 文档页数:5
中文分词与词性标注技术研究与应用中文分词和词性标注是自然语言处理中常用的技术方法,它们对于理解和处理中文文本具有重要的作用。
本文将对中文分词和词性标注的技术原理、研究进展以及在实际应用中的应用场景进行综述。
一、中文分词技术研究与应用中文分词是将连续的中文文本切割成具有一定语义的词语序列的过程。
中文具有词汇没有明确的边界,因此分词是中文自然语言处理的基础工作。
中文分词技术主要有基于规则的方法、基于词典的方法和基于机器学习的方法。
1.基于规则的方法基于规则的中文分词方法是根据语法规则和语言学知识设计规则,进行分词操作。
例如,按照《现代汉语词典》等标准词典进行分词,但这种方法无法处理新词、歧义和未登录词的问题,因此应用受到一定的限制。
2.基于词典的方法基于词典的中文分词方法是利用已有的大规模词典进行切分,通过查找词典中的词语来确定分词的边界。
这种方法可以处理新词的问题,但对未登录词的处理能力有所限制。
3.基于机器学习的方法基于机器学习的中文分词方法是利用机器学习算法来自动学习分词模型,将分词任务转化为一个分类问题。
常用的机器学习算法有最大熵模型、条件随机场和神经网络等。
这种方法具有较好的泛化能力,能够处理未登录词和歧义问题。
中文分词技术在很多自然语言处理任务中都起到了重要的作用。
例如,在机器翻译中,分词可以提高对齐和翻译的质量;在文本挖掘中,分词可以提取关键词和构建文本特征;在信息检索中,分词可以改善检索效果。
二、词性标注技术研究与应用词性标注是给分好词的文本中的每个词语确定一个词性的过程。
中文的词性标注涉及到名词、动词、形容词、副词等多个词性类别。
词性标注的目标是为后续的自然语言处理任务提供更精确的上下文信息。
1.基于规则的方法基于规则的词性标注方法是根据语法规则和语境信息,确定每个词语的词性。
例如,根据词语周围的上下文信息和词语的词义来判断词性。
这种方法需要大量的人工制定规则,并且对于新词的处理能力较差。
中文分词相关技术简介目前对汉语分词方法的研究主要有三个方面:基于规则的分词方法、基于统计的分词方法和基于理解的分词方法。
基于规则的分词方法基于规则的分词方法,这种方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个"充分大的"机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。
常用的方法:最小匹配算法(Minimum Matching),正向(逆向)最大匹配法(Maximum Matching),逐字匹配算法,神经网络法、联想一回溯法,基于N-最短路径分词算法,以及可以相互组合,例如,可以将正向最大匹配方法和逆向最大匹配方法结合起来构成双向匹配法等。
目前机械式分词占主流地位的是正向最大匹配法和逆向最大匹配法。
◆最小匹配算法在所有的分词算法中,最早研究的是最小匹配算法(Minimum Matching),该算法从待比较字符串左边开始比较,先取前两个字符组成的字段与词典中的词进行比较,如果词典中有该词,则分出此词,继续从第三个字符开始取两个字符组成的字段进行比较,如果没有匹配到,则取前3个字符串组成的字段进行比较,依次类推,直到取的字符串的长度等于预先设定的阈值,如果还没有匹配成功,则从待处理字串的第二个字符开始比较,如此循环。
例如,"如果还没有匹配成功",取出左边两个字组成的字段与词典进行比较,分出"如果";再从"还"开始,取"还没",字典中没有此词,继续取"还没有",依次取到字段"还没有匹配"(假设阈值为5),然后从"没"开始,取"没有",如此循环直到字符串末尾为止。
这种方法的优点是速度快,但是准确率却不是很高,比如待处理字符串为"中华人民共和国",此匹配算法分出的结果为:中华、人民、共和国,因此该方法基本上已经不被采用。
现代汉语语料库加工——词语切分与词性标注规范与手册俞士汶主编北京大学计算语言学研究所1999年4月目录●现代汉语语料库加工规范——词语切分与词性标注⒈前言 (1)⒉切分规范 (3)⒊切分和标注相结合的规范 (10)⒋标注规范 (14)⒌后记 (19)●现代汉语语料库加工手册——词语切分与词性标注⒈语料库加工的标记集及其说明 (20)⒉加工好的样例 (20)⒊若干个常用多类词的处理 (24)⒋词语切分和词性标注中的典型错例及分析 (28)⒌准谓宾动词示例 (41)⒍机器自动加工的样例及后校正注意事项 (42)⒎后记 (46)●附录:⒈按代码的字母顺序排列的标记集 (47)⒉按名称的汉语拼音顺序排列的标记集 (48)⒊参考文献 (49)现代汉语语料库加工规范——词语切分与词性标注1999年3月版北京大学计算语言学研究所1999年3月14日⒈前言北大计算语言学研究所从1992年开始进行汉语语料库的多级加工研究。
第一步是对原始语料进行切分和词性标注。
1994年制订了《现代汉语文本切分与词性标注规范V1.0》。
几年来已完成了约60万字语料的切分与标注,并在短语自动识别、树库构建等方向上进行了探索。
在积累了长期的实践经验之后,最近又进行了《人民日报》语料加工的实验。
为了保证大规模语料加工这一项重要的语言工程的顺利进行,北大计算语言学研究所于1998年10月制订了《现代汉语文本切分与词性标注规范V2.0》(征求意见稿)。
因这次加工的任务超出词语切分与词性标注的范围,故将新版的规范改名为《现代汉语语料库加工规范》。
制订《现代汉语语料库加工规范》的基本思路如下:⑴词语的切分规范尽可能同中国国家标准GB13715“信息处理用现代汉语分词规范”(以下简称为“分词规范”)保持一致。
由于现在词语切分与词性标注是结合起来进行的,而且又有了一部《现代汉语语法信息词典》(以下有时简称“语法信息词典”或“语法词典”)可作为词语切分与词性标注的基本参照,这就有必要对“分词规范”作必要的调整和补充。
一、为什么要进行中文分词?词是最小的能够独立活动的有意义的语言成分,英文单词之间是以空格作为自然分界符的,而汉语是以字为基本的书写单位,词语之间没有明显的区分标记,因此,中文词语分析是中文信息处理的基础与关键。
Lucene中对中文的处理是基于自动切分的单字切分,或者二元切分。
除此之外,还有最大切分(包括向前、向后、以及前后相结合)、最少切分、全切分等等。
二、中文分词技术的分类我们讨论的分词算法可分为三大类:基于字典、词库匹配的分词方法;基于词频度统计的分词方法和基于知识理解的分词方法。
第一类方法应用词典匹配、汉语词法或其它汉语语言知识进行分词,如:最大匹配法、最小分词方法等。
这类方法简单、分词效率较高,但汉语语言现象复杂丰富,词典的完备性、规则的一致性等问题使其难以适应开放的大规模文本的分词处理。
第二类基于统计的分词方法则基于字和词的统计信息,如把相邻字间的信息、词频及相应的共现信息等应用于分词,由于这些信息是通过调查真实语料而取得的,因而基于统计的分词方法具有较好的实用性。
下面简要介绍几种常用方法:1).逐词遍历法。
逐词遍历法将词典中的所有词按由长到短的顺序在文章中逐字搜索,直至文章结束。
也就是说,不管文章有多短,词典有多大,都要将词典遍历一遍。
这种方法效率比较低,大一点的系统一般都不使用。
2).基于字典、词库匹配的分词方法(机械分词法)这种方法按照一定策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功。
识别出一个词,根据扫描方向的不同分为正向匹配和逆向匹配。
根据不同长度优先匹配的情况,分为最大(最长)匹配和最小(最短)匹配。
根据与词性标注过程是否相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。
常用的方法如下:(一)最大正向匹配法 (MaximumMatchingMethod)通常简称为MM法。
其基本思想为:假定分词词典中的最长词有i个汉字字符,则用被处理文档的当前字串中的前i个字作为匹配字段,查找字典。
[收稿日期]2010-06-26[基金项目]河南省教育厅高等学校青年骨干教师项目(2009G GJS -108)。
[作者简介]于江德(1971-),男,博士,副教授,主要从事自然语言处理、信息抽取、文本数据挖掘等。
①可以从以下地址下载:http ://cr fpp .so ur cefo rg e .net[汉语词法·甲骨文]汉语词法分析是中文信息处理的首要任务,主要包括分词、词性标注、命名实体识别三项子任务,它是句法分析与语义分析的基础,其性能将直接影响到中文信息处理的后续应用。
安阳师范学院计算机与信息工程学院依托河南省高等学校“甲骨文信息处理”重点实验室培育基地,“中文信息处理”校级重点实验室“计算语言学”校级研究所等平台。
对汉语词法分析中的这三项子任务、甲骨文进行了较深入的研究,取得了部分研究成果,现借学报这个平台展示给各位同仁,敬请各位专家学者指正。
词位标注汉语分词技术详解于江德,王希杰(安阳师范学院计算机与信息工程学院,河南安阳455002)[摘 要]近年来基于字的词位标注的方法极大地提高了汉语分词的性能,该方法将汉语分词转化为字的词位标注问题,借助于优秀的序列标注模型,基于字的词位标注汉语分词方法逐渐成为分词的主要技术路线。
本文简要介绍了词位标注汉语分词的基本思想,探析了基于条件随机场实现词位标注汉语分词的机理,并对采用四词位标注集,使用CRF ++0.53工具包实现字串序列词位标注进行了详解。
最后在Bakeo ff2006的评测语料上进行了封闭测试。
[关键词]汉语分词;条件随机场;词位标注;特征模板[中图分类号]T P391 [文献标识码]A [文章编号]1671-5330(2010)05-0001-05 在中文信息处理领域,词是最小的能够独立运用的有意义的语言单位。
但汉语书写时却以字为基本的书写单位,词语之间不存在明显的分隔标记,因此,中文信息处理领域的一项基础性研究课题是如何将汉语的字串切分为合理的词语序列,即汉语分词。
[收稿日期]2010-06-26[基金项目]河南省教育厅高等学校青年骨干教师项目(2009G GJS -108)。
[作者简介]于江德(1971-),男,博士,副教授,主要从事自然语言处理、信息抽取、文本数据挖掘等。
①可以从以下地址下载:http ://cr fpp .so ur cefo rg e .net[汉语词法·甲骨文]汉语词法分析是中文信息处理的首要任务,主要包括分词、词性标注、命名实体识别三项子任务,它是句法分析与语义分析的基础,其性能将直接影响到中文信息处理的后续应用。
安阳师范学院计算机与信息工程学院依托河南省高等学校“甲骨文信息处理”重点实验室培育基地,“中文信息处理”校级重点实验室“计算语言学”校级研究所等平台。
对汉语词法分析中的这三项子任务、甲骨文进行了较深入的研究,取得了部分研究成果,现借学报这个平台展示给各位同仁,敬请各位专家学者指正。
词位标注汉语分词技术详解于江德,王希杰(安阳师范学院计算机与信息工程学院,河南安阳455002)[摘 要]近年来基于字的词位标注的方法极大地提高了汉语分词的性能,该方法将汉语分词转化为字的词位标注问题,借助于优秀的序列标注模型,基于字的词位标注汉语分词方法逐渐成为分词的主要技术路线。
本文简要介绍了词位标注汉语分词的基本思想,探析了基于条件随机场实现词位标注汉语分词的机理,并对采用四词位标注集,使用CRF ++0.53工具包实现字串序列词位标注进行了详解。
最后在Bakeo ff2006的评测语料上进行了封闭测试。
[关键词]汉语分词;条件随机场;词位标注;特征模板[中图分类号]T P391 [文献标识码]A [文章编号]1671-5330(2010)05-0001-05 在中文信息处理领域,词是最小的能够独立运用的有意义的语言单位。
但汉语书写时却以字为基本的书写单位,词语之间不存在明显的分隔标记,因此,中文信息处理领域的一项基础性研究课题是如何将汉语的字串切分为合理的词语序列,即汉语分词。
它不仅是句法分析、语义分析、篇章理解等深层中文信息处理的基础,也是机器翻译、自动问答系统、信息检索和信息抽取等应用的关键环节[1,2]。
近年来,尤其是2003年7月首届国际中文分词评测活动Bakeo ff 开展以来,汉语分词技术取得了可喜的进步,该领域的研究取得了令人振奋的成果[3,4]。
其中,基于字的词位标注汉语分词技术(也称为基于字标注的汉语分词或由字构词)得到了广泛关注,在可比的评测中性能领先的系统几乎无一例外都应用了类似的标注思想[3,5]。
基于字的词位标注汉语分词将分词看作序列数据的标注问题,使用序列数据标注模型实现,例如,可采用条件随机场(Co nditional Random Fields ,简称CRFs )实现。
CRFs 是Lafferty 等[6]于2001年提出的一种用于序列数据标注的条件概率模型。
本文简要介绍了词位标注汉语分词的基本思想,探析了基于条件随机场实现词位标注汉语分词的机理,并对采用B 、M 、E 、S 四词位标注集,使12010年 安阳师范学院学报用CRF ++0.53工具包①实现字串序列词位标注的相关技术细节进行了讲解。
最后给出了在Bakeo ff2006的两种评测语料上的实验结果。
1 词位标注汉语分词的基本思想汉语中的每个词语是由一个字或多个字组成的,例如,“天空”、“今天”是两个字组成的词语,“异想天开”是四字词,“天”是单字词。
而构成词语的每个汉字在一个特定的词语中都占据着一个确定的构词位置,即词位。
本文中我们规定字只有四种词位:B (词首)、M (词中)、E (词尾)和S (单字成词)。
由此,四字词“异想天开”标注每个字的词位后就是:“异/B 想/M 天/M 开/E ”。
并且同一个汉字在不同的词语中可以占据不同的词位,例如,汉字“天”在上面的四个词语中的词位依次是:词首B 、词尾E 、词中M 、单字词S 。
词位标注汉语分词技术就是把分词过程看做每个字的词位标注问题。
如果一个汉语字串中每个字的词位都确定了,那么该字串的词语切分也就完成了。
例如:要对字串“当希望工程救助的百万儿童成长起来。
”进行分词,只需求出该字串的词位标注结果(1),根据词位标注汉语分词的基本思想,由词位标注结果就很容易得到相应的分词结果(2)了。
(1)词位标注结果:当/S 希/B 望/M 工/M 程/E 救/B 助/E 的/S 百/B 万/E 儿/B 童/E 成/B 长/E 起/B 来/E 。
/S(2)分词结果:当 希望工程 救助 的 百万 儿童 成长 起来 。
需要注意的是,由于汉语真实文本中还包含少量的非汉字字符,所以基于字的词位标注中所说的字不仅仅指汉字,而且还包括标点符号、西文字母、数字等其他非汉字字符。
2 基于条件随机场的词位标注汉语分词词位标注汉语分词技术的实质是将汉语分词转化为字序列的词位标注问题,该问题可使用序列数据标注模型之一的条件随机场来实现。
本小节重点解析条件随机场如何对字序列到词位序列进行建模,以及建模过程中需要注意的关键问题。
2.1条件随机场简介条件随机场是一种以给定的输入结点值为条件来预测输出结点值概率的条件概率模型。
用于模拟序列数据标注的C RFs 是一个简单的链图或线图(如图1所示),它是一种最简单也最重要的CRFs ,称为线链C RFs (linear -chain C RFs )。
图1 线链CRFs 的图形结构设O ={o 1,o 2,……,o T }表示被观察的输入数据序列,例如有待标注词位的字序列。
S ={s 1,s 2,……,s T }表示被预测的词位标记序列。
这样,在一个输入字串序列给定的情况下,参数为Λ={λ1,λ2,…,λK }的线链C RFs ,其词位序列的条件概率为:P Λ(S O )=1Z Oex p (∑T t =1∑Kk =1λk f k (s t -1,s t ,o ,t ))(1)其中,Z O 是归一化因子,它确保所有可能的词位序列的条件概率之和为1,即它是所有可能的词位序列的“得分”的和:Z O =∑S exp (∑Tt =1∑Kk =1λk f k (s t -1,s t ,o ,t ))(2)f k (s t -1,s t ,o ,t )是一个任意的特征函数,用于表达上下文可能的语言特征。
条件随机场模型通过特征函数能够整合任何特征,包括可观察字序列O 在时刻t 的所有特征,即当前字及其上下文所组成字串序列的特征,以及隐变量词位的转移特征s t -1→s t 。
一般来说,特征函数定义在一个加氏集O ×S 上,其中,O 是可能的上下文或者任意的预定义条件的集合,S 是一组可选的标注集。
特征函数通常是一个二值表征函数,表示如下:f k (s t -1,s t ,o ,t )=1,如果满足条件0,否则(3)λk 是一个需要从训练语料中学习的参数,是相应的特征函数f k (s t -1,s t ,o ,t )的权重,取值范围可以是-∞到+∞。
给定一个由公式(1)定义的条件随机场模型,在已知输入的字串序列O 的情况下,最可能的词位标记序列可以由下式求出:S*=arg max SP Λ(S O )(4)最可能的词位标记序列可以由上式通过类似于H MM 中的韦特比算法动态规划求出。
建立从字序列到词位标记序列的CRFs 模型还有两个关键问题:参数估计和特征选择。
参数估计是从训练数据集学习每一个特征的权重参2安阳师范学院学报 2010年数,即求解向量Λ={λ1,λ2,…,λK}的过程。
而特征选择是筛选出对C RFs模型有表征意义的特征,结合本文所采用的CRF++0.53工具包,其关键在于根据具体的任务设定一组合适的特征模板。
C RFs模型进行序列数据标注时需要使用大量的上下文特征,习惯上,我们把这些上下文特征按照共同的属性分为若干组,称之为特征模板。
2.2 CRF++中特征模板的设定在具体使用C RF++0.53工具包进行词位标注汉语分词的时候,设定的特征模板有两大类: (1)Unig ram(一元)特征模板,这类特征模板在模板文件中以大写字母“U”开头;(2)Big ram(二元)特征模板,这类特征模板以大写字母“B”开头。
特别需要注意的是,这里的“一元”、“二元”是对特征中出现的词位标记个数而言的,而不是对特征中的字的个数而言。
从这个意义上讲,这里的“一元”、“二元”不同于大多数已有文献中的含义。
对于基于字的词位标注汉语分词这一任务而言,可供选择的特征非常少,主要需要考虑的是字特征[3]。
字特征是指当前字本身及其上下文构成的特征,根据文献[3]中“使用前后各两个字是比较理想的”结论,则这一具体任务的字特征是指当前字本身、以及当前字前后各两个字所组成的特征。
结合采用的CRF++这一工具包,参考文献[3],根据和当前字的字距不同将所有字特征抽象为10类,对应10个特征模板,这些特征模板属于Unigram(一元)特征模板。
表1给出了这些特征模板的所属类型、一般表示形式、C RF++工具包模板文件中的形式、模板表征的意义等。
在CRFs模型进行训练的时候,这些特征模板将会扩展出数以千万计的特征,并且每个特征都对应一组特征函数,这些特征函数对CRFs模型的学习至关重要。
从表1可以看到,第二类:Big ram (二元)特征模板仅仅包含一个特征模板:B,该模板用于表征上下文中相邻两个字的词位转移特征。
训练中该模板扩展出的特征是有限的,对四词位标注汉语分词而言,可以扩展出16个(词位转移)特征。
表1 特征模板列表模板类型特征模板CRF++中模板的形式模板表征的意义U nig ram(一元)C-2U00:%x[-2,0]当前字的前面第二个字C-1U01:%x[-1,0]当前字的前一个字C0U02:%x[0,0]当前字C1U03:%x[1,0]当前字的后一个字C2U04:%x[2,0]当前字的后面第二个字C-2C-1U05:%x[-2,0]/%x[-1,0]当前字的前面两个字组成的字串C-1C0U06:%x[-1,0]/%x[0,0]当前字前一个字和当前字组成的字串C0C1U07:%x[0,0]/%x[1,0]当前字及其后一个字组成的字串C1C2U08:%x[1,0]/%x[2,0]当前字的后面两个字组成的字串C-1C1U09:%x[-1,0]/%x[1,0]当前字的前一个字和后一个字Big ram(二元)T-1T0B相邻两个字的词位转移特征3 实验结果为验证本文采用B、M、E、S四词位,使用条件随机场作为词位标注建模工具,并使用表1中的11个特征模板进行汉语分词的方法,我们在Bakeo ff2006的两种简体中文评测语料上分别进行了训练和评测。