分词技术就是搜索引擎针对用户提交查询的关键词串进行的查询处理后根据用户的关键词串用各种匹配方法进行分词的一种技术。
数据查询处理
当用户向搜索引擎提交查询后,搜索引擎接收到用户的信息要做一系列的处理。步骤如下所示:
1.首先是到数据库里面索引相关的信息,这就是查询处理。那么查询处理又是如何工作的呢?很简单,把用户提交的字符串没有超过3个的中文字,就会直接到数据库索引词汇。超过4个中文字的,首先用分隔符比如空格,标点符号,将查询串分割成若干子查询串。
2.然后再看用户提供的这个词有没有重复词汇。如果有的话,会丢弃掉,默认为一个词汇。
3.接下来检查用户提交的字符串,有没有字母和数字。如果有的话,就把字母和数字认为一个词。
分词原理
1.字符串匹配的分词方法
这是种常用的分词法,百度就是用此类分词。字符串匹配的分词方法,又分为4种分词方法。
(1)正向最大匹配法
就是把一个词从左至右来分词。举个例子:”不知道你在说什么”,这句话采用正向最大匹配法是如何分的呢?“不知道,你,在,说什么”。
(2)反向最大匹配法
"不知道你在说什么"用反向最大匹配法来分如何分的?“不,知道,你在,说,什么”,这个就分的比较多了,反向最大匹配法就是从右至左。
(3)最短路径分词法
就是说一段话里面要求切出的词数是最少的。“不知道你在说什么”最短路径分词法就是指,把上面那句话分成的词要是最少的。“不知道,你在,说什么”,这就是最短路径分词法,分出来就只有3个词了。
(4)双向最大匹配法。
有一种特殊的情况,就是关键词前后组合内容被认为粘性相差不大,而搜索结果中也同时包含这两组词的话,会进行正反向同时进行分词匹配。
2.词义分词法
就是一种机器语音判断的分词方法。很简单,进行句法、语义分析,利用句法信息和语义信息来处理歧义现象来分词,这种分词方法,还不成熟,处在测试阶段。
3.统计分词法
根据词组的统计,就会发现两个相邻的字出现的频率最多,那么这个词就很重要。就可以作为用户提供字符串中的分隔符,这样来分词。
比如,“我的,你的,许多的,这里,这一,那里”等等,这些词出现的比较多,就从这些词里面分开来。