[tf-idf]百度分词快排算法
做为SEO行业老鸟应该听说过TF-IDF算法,TF-IDF算法属于搜索引擎中的核心部分。TF-IDF算法是增加相关词的覆盖率,以及高优布局关键词密度,从而在百度谷歌等搜索引擎内容质量这一项上的排名加分,获取超高分值。
最近在网上有几篇TF-IDF算法原理及公式本文将深入为大家解析,有兴趣请往下深度阅读。
一,什么是TF-IDF
先来看百度百科对TF-IDF的解释:
“TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。”文章链接:https://baike.baidu.com/item/tf-idf
假如说我们在百度上搜索“水果”这个词,百度爬虫抓取的网站内容有下面5个,你觉得哪个内容排名第一?
内容1:水果有水果,水果,水果,水果,水果
内容2:水果有苹果,桃子,西瓜,菠萝,梨子
内容3:蔬菜都很好吃,我最爱吃茄子了
内容4:苹果,梨子都是很好吃的水果
内容5:好吃的水果有西瓜,苹果,葡萄,其他水果还有菠萝,猕猴桃
相信很多人心里面有了答案,大家凭直觉,内容2跟内容5应该排名靠前,内容5很可能是第1,内容2是排名第2。
其实按照TF-IDF算法也能得出这个结论,那么TF-IDF是怎么做的,请大家跟上我的步伐。
二,TF-IDF算法的计算步骤
第1步:计算逆文档频率
我们先统计各个词语被包含的文章数。比如“水果”被4篇文章(内容1、2、4、5)引用,4就是“水果”的逆文档频率。
分词后,各个单词的逆文档频率如下:
水果=4、苹果=3、好吃=2、菠萝=2、西瓜=2、梨子=2,桃子=1、猕猴桃=1、蔬菜=1,茄子=1计算逆文档频率
PS:IDF=log(语料库中的文件总数/包含词语t的文件数目),为了便于理解,这里做了精简。
按照我们的直觉,如果一篇文章把逆文档频率最高的前面的词都包含了,说明这篇文章内容更贴合用户意图,更受到搜索引擎喜欢。回到例子,"水果、苹果"是本例中重要性最高的2个词,如果内容中包含“水果、苹果”,那么这篇内容质量就越好。
所以把包含“水果、苹果”的内容拿出来,就是比较靠谱的内容了:
内容2:水果有苹果,桃子,西瓜,菠萝,梨子
内容4:苹果,梨子都是很好吃的水果
内容5:好吃的水果有西瓜,苹果,葡萄,其他水果还有菠萝,猕猴桃
第2步:计算词频(TF)
我们把内容1、内容3砍掉了,剩下的内容2、内容4、内容5怎么排序。我们想一下,一个词语在内容中出现的次数越高,也说明这个词语对这篇文章更重要。回到本例,“水果”是我们的核心词,那么因为内容5中出现“水果”两次,内容2、内容4次数是1,那么内容5胜出。最后的排序结果如下
内容5:好吃的水果有西瓜,苹果,葡萄,其他水果还有菠萝,猕猴桃(第一名)
内容2:水果有苹果,桃子,西瓜,菠萝,梨子(第二名)
内容4:苹果,梨子都是很好吃的水果(第三名)
内容1:水果有水果,水果,水果,水果,水果(相关度不够,被剔除)
内容3:蔬菜都很好吃,我最爱吃茄子了(相关度不够,被剔除)
以上是砍了又砍的TF-IDF算法简化解读版,真实的TFIDF算法比这个要正规复杂很多,这里只是让大家get到重点,目的就达到了。
TF-IDF对SEO非常重要!
TF-IDF对SEO非常非常非常重要,重要的事情说三遍!
我们可以看到,TFIDF算法,不仅可以衡量关键词对页面的重要性,更能衡量文章的广度相关性。对于百度、360、google来说,TFIDF算法的出现屏蔽了一大批用关键词密度来获取排名的SEO小白,同时提升了搜索质量啊,真是一箭双雕。
百度百科里面说了:“除了TF-IDF以外,因特网上的搜索引擎还会使用基于链接分析的评级方法,以确定文件在搜寻结果中出现的顺序。”。意思是什么?你排名可以由下面的公式决定。文章得分=TFIDF得分+链接得分,百度搜索引擎在用TFIDF!!