加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营 > 正文

刷百度相关搜索和下拉框的技术原理

发布时间:2017-11-10 02:04:07 所属栏目:运营 来源:海瑶seo培训
导读:副标题#e# 开抢了!双11创业者优选服务! 第一:百度搜索SEO出现的相关搜索: 以SEO为核心的相关词-什么是SEO,如何进行SEO 以SEO语义相关的相关词-网络推广 第二:搜狗搜索SEO出现的相关搜索: 以SEO为核心的相关词- seo是什么 seo教程seo查询 以SEO语义相

  如果我们把每一行数据的result想象成一篇文档,result里面的每个结果集想象成一个词语,那么这其实就是求两个文档之间的相似性了,从头到尾过一遍就可以找到每一行数据和它最相似的数据了,而每一行可以用当行的搜索词表示,这么一算下来数据就变成这样子了,后面的括号里面是两个词的相似度,如果想知道文本的相似性如何计算,可以参考我之前的文章,本文最后有链接。

  key:搜索词Asucceed:搜索词B(0.8)搜索词C(0.6).....

  key:搜索词Bsucceed:搜索词A(0.8)搜索词E(0.7).....

  有了上面这个数据,拍一个阈值(比如0.7)卡一下,就得到最后的相关搜索的结果了。

  这个计算相似性的方法的计算量比较大,而且阈值没有卡好的话容易出现不相关的结果,在实际工程应用中使用得不多,下面这个方法使用得更多点,相当于这个的加强版。

  从用户搜索结果集考虑

  如果某个搜索结果(比如一个网页或者一个商品)出现在了不同的搜索词的结果集中,那么这些个搜索词很可能是相关的,如果这个搜索结果在不同的搜索词下都被点击了,那么这些个词的相关性就更高了。

  点击的加成是很强大的,而且在数据量巨大的情况下,我们可以只考虑点击的情况,还是拉出搜索日志,不过这次是搜索点击日志了,拉出来处理一下就变成下面这个样子,每行就是某个搜索词下点击的商品

  key:搜索词Aclick:结果A结果B结果C

  这个样子和上面第二种方法最后出来的样子基本一样,不过这次是点击数据,相关性可比直接的搜索结果要好很多了,因为搜索结果取决于你的搜索算法,而这种点击数据是来自用户的,人的可靠性可高了不少,所以说这个是上一个的加强版。

  我们可以按照上一个的方法按文本相似性的方法进行处理,但是计算量也比较大,如果再仔细看看这个数据的样子,如果我们把相关搜索系统想象成豆瓣,搜索词看成豆瓣的用户,搜索结果集看成是豆瓣的电影,那么相关搜索就变成了一个豆瓣的猜你感兴趣的人,也变成了一个协同过滤的推荐系统了(协同过滤算法可以参考文章最后的链接),上一节的协同过滤算法的数据是词和后继词,这里是词和点击结果,虽然数据集不同,但是可以用一样的算法,所以,搜索和推荐技术其实是密不可分的,既然这样,完全可以用协同过滤算法进行推荐了。

  协同过滤的算法,简单版本整体不会超过200行,很容易实现的。

  通过这样的方式,容易推出意思相近的词,同样也容易推出看似完全不相关但仔细想想还是靠谱的词,就像下面这样,他们虽然不见得近义词,但是很可能会点击到同一个结果上。

  分形:分形理论|分形图像|分形数学

  机器学习:吴恩达|数据挖掘|机器学习周志华

  林心如:霍建华|任重|何润东.......

  机器学习

  既然上面提到了一下机器学习,其实还有更高端一点的算法,就是用机器学习了,呵呵。我们如果把上面的结果key:搜索词Aclick:结果A结果B结果C处理一下,变成下面的样子,表示每个结果集对应的搜索词。

  结果A:搜索词A搜索词B搜索词C....

  结果B:搜索词B搜索词A搜索词D.....

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读