今天阅读的时候,发现了一个分割句子中词语的算法:MaxMatch,这个算法在中文应用中效果很好。
这是一个贪心算法,在指定的字典(dictionary)中查找词汇并进行句子的分割。
下面是一个应用本算法的例子:
Input: 他特别喜欢北京烤鸭
Output: 他 特别 喜欢 北京烤鸭
算法的伪代码如下:
这个算法在中文的应用中比英文好很多,因为中文词汇比英文短。
为了检验词汇分割的效果,我们可以使用词语错误率(word error rate)来衡量。
上述的算法是传统的算法。目前准确率最高的中文词汇分割算法是通过监督机器学习(supervised machine learning)训练的统计序列模型(statistical sequence model),这个我们以后再写文章详细讨论。