随着白话文的兴起,构成中文的最小独立单位由字转入词。因此分词是中文处理的第一步,没有这一步中文处理也就无法再进行下去。
中文分词有三大流派:
1.机械式分词法:将文档中的字符串与词典中的词条逐一匹配,如果命中,则匹配成功。
2.基于语法和规则:主要是为了解决分词中的第一大难题:歧义切分。因此在分词的基础上同时进行句法,语义分析,利用句法和语义信息进行词性标注,已解决分词歧义现象。
3.统计学分词:根据字符串在语料库中出现的统计频率来确定是否构成词。字与字的相邻共现频率能够较好的反应词的可信度。
目前,比较成功的应用是统计分词法。语法和规则分词法尚在试验阶段。。。
两大分词标准:
粗粒度:基于词切分。
细粒度:基于构成词的最小单位语素进行切分。
目前主流的分词技术和步骤如下:
字符切分 ----> 查询核心词典,将字符切分的结果进行最大匹配(可在一定程度上解决歧义切分的问题),构成一元词网 ---> 用一元词网查询二元词典,与二元词典进行最大匹配 -----> 计算二元词典的词频得到每个节点之间的权重,组成词图 Graph ------> 采用 NShort 算法计算最小权重路径为初分结果 ---> 使用隐马尔科夫链语言模型进行未登录词识别(词的元模式词典和元模式组合频率词典)
一元词典结构如下:
词语 词性1 频率1 词性2 频率2 ...
二元词典结构如下:
词1@词2 共现频率
元模式词典如下
词语 元模式1 频率1 元模式2 频率2 ...
元模式组合词典是一个二元词典,第一行和第一列就是元模式标签,方阵的每个元素表示以第一个原子词的标签为序号和以第二个原子词的标签为序号的组合构成未登录词的词频。
人名的元模式部分标签如下
元模式 | 含义 | 示例 |
B | 姓氏 | [张]三 |
C | 名1 | 张[三] |
D | 名2 | 李二[狗] |
... | ... | ... |