1

第7-4课:最大匹配算法-最简单的中文分词算法

 3 years ago
source link: https://blog.csdn.net/orbit/article/details/108729334
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

在自然语言识别领域中,中文的分词技术绝对是一个很有意思的话题,英文本身是以单词为基础,单词之间以空格隔开,不存在分词的问题,但是汉语有这个问题。关于分词有很多可玩的地方,比如之前很火的一个对对联的小程序,给出上联可以自动对出下联,对上联的识别肯定是建立在正确的分词基础上的。这一课我们介绍一种理论简单、实现也简单的分词方法,当然,效果也就那样了,不过,拿来玩玩还是可以的。

最大匹配法

中文的分词技术,大致可分为几类,一类是基于词典、字库的匹配分词方法;一类是基于统计学的分词方法,在词典、字库的基础上增加词频统计信息;还有一类是基于对语言知识理解的基础上的分词方法,包括各种机器学习类分词算法。这里要讲的最大匹配法就是第一类方法。

既然最大匹配算法是基于词典或字库的算法,那么最大匹配算法就需要一个包含所有汉语词汇的词典,每当需要确认一个词的时候,就要查一遍词典,效率自然比较低,因此最大匹配法一般用于算法学习,或者在一些算法题目中出现。根据分词算法匹配的方向,最大匹配法可分为正向最大匹配法(Maximum Matching)和逆向最大匹配法(Reverse Maximum Matching)。

正向最大匹配算法

假设最大匹配算法的词典中最长的词有 k 个汉字字符,则正向最大匹配算法的基本思想是:每次从被处理的句子中取前 k 个汉字作为匹配字符串,用这个匹配字符串查词典,如果词典中存在这个词,则查找成功,将匹配的词从句子中切分出来;如果查找失败,即找不到这样一个有 k 个字的词,则将匹配字符串中最后一个


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK