百度自称是全球最大中文搜索引擎,最了解国内网民的搜索习惯,做为中国搜索引擎的老大,很多草根站长一直在研究的它的搜索技术和排名算法,还有不少站长兄弟姐姐还要靠它的流量吃饭,为此草根网站的站长们对它是又爱又恨,百度能带来很大的流量,又会无情的K站或降权。
好的,那咱们说说百度的分词技术,可能小弟有说的不对地方,请大家拍砖头,希望大家共同进步。没有研究百度分词前不明白百度为什么比google强大.其实分词也就是切词,百度是否拿来一句中文字符串拿来随便切一下呢,当然不会。那么怎么才满足被切割的条件呢?通过下面的实验就会发现如果字符串只包含小于等于3个中文字符的话,那就保留不动,比如:"牵引器"这个词,前提是一个完整的词,百度是不会切分的,当字符串长度大于4个中文字符的时候,百度的分词程序就会启动了。例如"牵引器价格",看看返回结果中标为红字的地方,不难看出来,查询已经被切割成“牵引器”,“价格”两个单词了,再试着换一个词。例如:我们来看"衡水牵引器",百度里提交查询一下,发现标红的关键字都是每一个是"牵引器","衡水",连续出现的情况,可以看到将"牵引器"与"衡水"切分成两个词,如果我们搜"衡水助康医疗器械"呢,发现标题是没有,网页内容比较完整是"衡水助康医疗器械",可能是这个网站还没收录的原故,这个长尾词被切成了"衡水"/"康医疗器械".
那现我们在来研究一下百度是分词算法,通过几年的发展,百度的分词算法已经算是相当成熟了,这其中也少不了SEOER 的功劳,有一位SEOER的前辈说过:"百度的算法有简单的有复杂的,有正向最大匹配,反向最大匹配,双向最大匹配,语言模型方法,最短路径算法等等,有兴趣的可以用GOOGLE去搜索一下以增加理解。“让我们总结一下吧,这里面也有我个人的猜测, 百度拥有一个强大的词汇数据库,里面有我们通用所用的各种词语比如"人名,地名,产品的名称",举个例子"王元哲","衡水","牵引器",这些都是词库中有的,在切词时将专有名称切出,如"助康"这个词,词库中没有,下面的采用双向最大匹配分词算法,假如正向和反向匹配分词结果一致当然最好,就可直接输出即可;如果两者不一致,正向匹配一种结果,反向匹配一种结果.
百度一直自称是全球最大中文搜索引擎,但分词技术也并无特殊,也许就是因为百度拥有一个超大的专用词典,这个专用词典登录了人名(比如压滤机),厂家名称(比如压滤机生产厂),部分地名(比如阜城等),网址(http://www.xiaoshuo8.net/),并且这个词典在不断的扩充一些新词,一些新词不断的被收录,这就比google强大的一个方面,google在于分词来说,及词库明显比不上百度,这正是google本身要加强的地方. |