自然语言处理之词性标注20200811
codecs模块为我们解决的字符编码的处理提供了lookup方法,它接受一个字符编码名称的参数,并返回指定字符编码对应的 encoder、decoder、StreamReader和StreamWriter的函数对象和类对象的引用。为了简化对lookup方法的调用, codecs还提供了getencoder(encoding)、getdecoder(encoding)、getreader(encoding)和 getwriter(encoding)方法;进一步,简化对特定字符编码的StreamReader、StreamWriter和 StreamReaderWriter的访问,codecs更直接地提供了open方法,通过encoding参数传递字符编码名称,即可获得对 encoder和decoder的双向服务。
基于字注法的分词
中文分词字标注通常有2-tag,4-tag和6-tag这几种方法,其中4-tag方法最为常用。标注集是依据汉字(其中也有少量的非汉字字符)在汉语词中的位置设计的。
- 2-tag法
2-tag是一种最简单的标注方法,标注集合为{B,I},其将词首标记设计为B,而将词的其他位置标记设计为I。例如词语“重庆”的标注结果是“重/B 庆/I”,而“大学生”的标注结果为“大/B 学/I 生/I”
对于以下句子
迈向 充满 希望 的 新 世纪 —— 一九九八年 新年 讲话
使用2-tag(B,I)的标注结果为
迈/B向/I 充/B满/I 希/B望/I 的/B 新/B 世/B纪/I —/B—/I 一/B九/I九/I八/I年/I 新/B年/I 讲/B话/I
2.4-tag法
4-tag标注集合为{S,B,M,E},S表示单字为词,B表示词的首字,M表示词的中间字,E表示词的结尾字。对于以下句子
迈向 充满 希望 的 新 世纪 —— 一九九八年 新年 讲话
使用4-tag(S,B,M,E)的标注结果为
迈/B向/E 充/B满/E 希/B望/E 的/S 新/S 世/B纪/E —/B—/E 一/B九/M九/M八/M年/E 新/B年/E 讲/B话/E
参考我爱自然语言处理博客, python实现方法为
本文使用 pku语料库,其原始格式为
标注后的结果为
3.6-tag法
6-tag标注集合为{S,B,M1,M2,M,E},S表示单字为词,B表示词的首字,M1/M2/M表示词的中间字,E表示词的结尾字。例如“小孩子”可以标注为“小/B 孩/M 子/E” 。