分词的原理 百度是如何来分词的呢?分词技术现今非常成熟了。分为3种技术。4 ?1 w! Z: P6 C1 k: v( p; l
1.字符串匹配的分词方法 这是种常用的分词法,百度就是用此种分词。字符串匹配的分词方法,又分为3种分词方法。
9 t* h! {( s5 j5 b) n (1)。正向最大匹配法
" }3 O1 n! m- g$ e* v& w# i 就是把一个词从左至右来分词。
f+ v3 x3 P5 v/ ]7 Y- t 举个例子:“不知道你在说什么”, M- Q+ `+ ?0 E" u n
这句话采用正向最大匹配法是如何分的呢?“不知道,你,在,说什么”。5 [% r* P/ Y/ @: R+ j c
(2)。反向最大匹配法
4 X9 t# x- j: v* W$ j3 W$ R, z0 z “不知道你在说什么”反向最大匹配法来分上面这段是如何分的。“不,知道,你在,说,什么”,这个就分的比较多了,反向最大匹配法就是从右至左。
+ g9 Z( l% t2 h' K' Y8 M (3)。就是最短路径分词法。
) d9 ~1 x$ q3 I6 K 就是说一段话里面要求切出的词数是最少的。
$ X3 A1 U2 ~( G4 k6 g “不知道你在说什么”最短路径分词法就是指,把上面那句话分成的词要是最少的。“不知道,你在,说什么”,这就是最短路径分词法,分出来就只有3个词了。( ]: _$ l; E) \3 B, v8 \% v
(4)。双向最大匹配法。0 J1 l' D' p9 N& O# x% z+ B
而有一种特殊的情况,就是关健词前后组合内容被认为粘性相差不大,而搜索结果中也同时包含这两组词的话,百度会进行正反向同时进行分词匹配。
5 P1 ^- b2 E4 W, u7 P 2.词义分词法 就是一种机器语音判断的分词方法。很简单,进行句法、语义分析,利用句法信息和语义信息来处理歧义现象来分词,这种分词方法,现在还不成熟,处在测试阶段。
1 J, n, Q5 C8 d6 @7 Z 3.统计分词法 根据词组的统计,就会发现两个相邻的字出现的频率最多,那么这个词就很重要。就可以作为用户提供字符串中的分隔符,这样来分词。
) f/ w2 k, g8 M) D4 M 比如,“我的,你的,许多的,这里,这一,那里”等等,这些词出现的比较多,就从这些词里面分开来。, z2 J; Q, W) I9 ?# P# F
# H$ x+ |3 s% p: j% o0 E) F8 q- e |