分词算法中,一般都需要一个词典,但这些词典往往很难覆盖所有的词,特别是在一些专业领域,甚至有超过40%的词都不在词典里面,这样首先就需要“学习”大量的新词,否则分词准确性很难提高,进一步的,有研究就干脆不要词典了,由算法自动从大量的语料中学得一个词典,这就是统计分词,或者成为无字典分词。一般就只预设一个小规模的词典,后者没有词典,首先从大量的未标注语料,也就是生语料中学习出一个词典,然后利用这个词典再去分词。对应的研究主题有新词发现,无监督分词,无字典分词,统计分词等。

这里我们还以英文为例,找一些英文文本,首先利用标点分成句子,然后去掉词之间的空格,这样就是构造了英文的分词生语料,其就是一系列没有空格的英文单词

如:


thisisatest
 
 
wheninthecourseofhumaneventsitbecomesnecessary
 
 
itisatruthuniversallyacknowledged
 
 
inaholeinthegroundtherelivedahobbitnotanastydirtywethole
 
 
itwasthebestoftimesitwastheworstoftimesitwastheageofwisdomitwastheageoffoolishness



            我们的任务就是从这些语料中“学习”一个英文词典,然后进行分词。


这样的无监督学习一般都需要大量的语料,目前开放的下载的语料其实并不是很多

我们就直接利用互联网,下载格式比较规整的数据,这里使用wikipedia的下载xml数据,抽出正文,然后拿出句子,并去掉单词之间的空格,这里抽取1G的数据作为训练数据,具体可以在这里下载到:http://pan.baidu.com/s/1dDtFHID


        然后我们要对统计分词的效果设计定一个评测标准,这里我们直接使用一个比较全的词典,就是前面几个文章中用用到的count_1w.txt作为标准词典,大概有30多万的单词,并利用该词典分词得到的分词形式作为标准形式,这样便于对字典构造以及分词方法进行分别考察。