MM、RMM、Bi_MM

写在前面的话

本文参考《Python自然语言处理实战 核心技术与算法》,一本不可多得的自然语言处理入门书籍。

MM、RMM、Bi_MM都是基于规则分词的算法,通过匹配所持有的字典,进行分词。分词结果取决于字典的完整程度和匹配方式。根据SunM.S 和Benjamin K.T(1995)的研究表明,中文中90.0%左右的句子,MM和RMM分词结果重合且完全正确,9.0% 的句子两种方法分词结果不一样,但其中必有一个是正确的,另外1.0%两种方法切分虽重合但却是错误的结果,或者切分不重合都是错的。

MM(Maximum Match Method)最大匹配

算法思想:MM也称正向最大匹配,以字典中词的最大长度为匹配窗口大小,例如 dic = [‘南京’, ‘南京市’, ‘南京市长’, ‘长江’, ‘长江大桥’, ‘大桥’, '桥],字典中词的最大长度为4,则匹配窗口最大长度为4,即从处理文本的前4个字符串作为匹配字段。若首次匹配成功,则匹配窗口向后滑动4个字符位置,继续匹配。若匹配不成功,则缩小匹配字符串大小一位,继续匹配,匹配成功,从下位开始继续向后,不成功,继续减小所匹配字符串的长度。

算法实现:参考书中算法(基于python3)

class MM(object):
	"""maximum Match Method for NLP"""
	def __init__(self, window_size=3):
		super(MM, self).__init__()
		self.window_size
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值