搜索2.0:利用用户点击记录改善搜索结果

原创 2018年04月16日 18:46:13

现在是WEB2.0时代了(据真实传言好像已经快4.0了,比微软升级还快,我估计年底前会出现web5.0的说法,大家赶紧想想应该是什么,争取第一个提出这个概念,为中国争光),大家都在讲UGC(用户产生内容。My definition of UGC2.0:Used Garbage Content(come on,just a joke)),如果从利用用户产生的内容来提高网站效果这个角度看,其实搜索引擎早几年前已经迈入WEB2.0的行列了,因为搜索引擎会记录用户发出的查询以及用户点击记录,然后利用这些用户产生的搜索记录来进一步改善其他用户的搜索结果。

尽管我们没有察觉,其实每次用户向搜索引擎发送的查询以及之后的用户行为都已经记录在案了(个人隐私问题?其实这个很好解决,以后把“个人隐私”这个词汇从人类语言中剔除,自然也就不会有个人隐私问题),比如一个用户是“快男”(注:是快乐男声,不是快枪手男人)的粉丝(一个疑问:为什么所有选秀节目的狂热粉丝都是女士?),那么发出搜索“快男”,搜索引擎返回结果后,用户点击了搜索结果前三项的URL(广告时间,请不要转台,后面结果更精彩)

陈楚生夺快男冠军 苏醒称亚军不输冠军

印记【79】快乐男声尘埃落定:五强点评

湖南台工作人员自爆快男三进二种种黑幕

搜索引擎会在后台记录如下:

<159.226.200.1,快男,(http://www.onejoo.com/story/80502/1),

http://www.onejoo.com/story/80485/2,)(http://www.onejoo.com/story/80429/3>

其含义是:159.226.200.1这个用户在搜索快男的时候点击了后面这三项URL,每个URL在搜索结果中的排名分别是123名。

也就是说,用户向搜索引擎发出一个查询,搜索引擎返回搜索结果,记录用户针对这个查询点击过哪些网页,点击过的网页会被认为在某种程度上是和这个查询相关的网页,在下次另外一个用户发出同一查询的时候,可能会提高(boost)这些用户点击过的网页的排名。(其实,搜索引擎也可以利用这些信息来进行个性化搜索的工作)

为了正式真实证实这是真事(这个绕口令一点都不拗口吧:),我们看看百度和GOOGLE是否有这个过程。

我们先看百度。向百度提交查询“玩聚”,然后查看搜索结果的页面源代码,可以看到第一条搜索记录的源代码片段为:

<td class=f><a onclick="return c('b4d6',this.innerHTML,this.href,1)" href="http://www.onejoo.com/" target="_blank">

用户行为记录就是这个onclick了,(<a onclick="return c('b4d6',this.innerHTML,this.href,1)),用户点击的时候会激发onclick行为,其中this.href应该是代表href=http://www.onejoo.com/这个URL,数字1代表是本次搜索排在第一位的结果。诸如此类。

再看看GOOGLE,同样的查询,可以看到第四项搜索结果的源代码:

<a href="http://www.onejoo.com:8000/" target=_blank class=l onmousedown="return clk(0,'','','res','4','')"><font color=CC0033>玩聚font>(OneJoo) - 微内容聚合

这个onmousedown做的就是类似的事情了。(onmousedown="return clk(0,'','','res','4','')

这个方法无疑会在某种程度上改善用户的搜索体验,但是它依赖于一个基本假设:用户点击过的URL是和当前查询相关的页面。其实很明显这个假设是容易遭受理智的以及不理智的攻击的,也就是说这个方法存在着问题,而且不是一个问题,也不是三个问题,是两个问题:

问题1:即使用户在某次搜索结果里面点击了某个网页,但是并不代表这个网页一定是和用户发出的查询相关的,完全有可能用户点击进去以后才发现其实这个网页不是他想要的。所以如果把无关点击记录下来以后向其他用户推荐,这些信息可能是噪音,会导致下次的结果更不准确,所以如何去除这种噪音是一个研究点。

问题2:从另外一个角度,即使有些没有点击过的搜索结果也有可能是相关的,但是这些信息没有被利用起来,所以如何识别那些没有点击过但是也是很相关的网页也是其中一个研究点。

问题3UGC,你来提。

其实其实今天才发现我挺爱用“其实”这个词的,这是一个坏习惯,以后一定要避免滥用这个词汇,其实这应该不难做到),记录用户的点击行为除了做以上用途外,还有很多可以探索的用途,比如个性化搜索,比如以下的用途:

1.查询-查询关系:这个可以用来进行用户查询推荐(query suggestion)用户想搜索引擎提交查询,可以利用查询之间的相似关系来向用户推荐其它可能的查询

2.查询-相关文档关系:

可以利用用户行为记录推理出有趣的结论,比如假设两个不同查询的用户点击文档集合,如果两个点击文档集合很大程度是重合的,那么说明两个查询是语义上类似的或者等价的;

3.文档-查询关系

从某篇被点击过的网页来说,可能有不同的查询都导致某个网页被点击,那么可以把这些查询和这个网页绑定起来,说明他们之间有相关关系;

 
 
 /*版权声明:可以任意转载,转载时请务必标明文章原始出处和作者信息 .*/

搜索2.0:利用用户点击记录改善搜索结果

Author:张俊林

                                                                                                                                  timestamp:20077

SharePoint 搜索教程

以SharePoint 2016为环境,为大家介绍如何创建、使用SharePoint搜索服务,包括搜索SharePoint站点、非SharePoint站点、共享文件目录等,并学会配置和使用SharePoint搜索服务以及使用过程的注意事项等。 本次课程以SharePoint 2016为环境,同样适用于SharePoint 2013环境,部分配置适用于SharePoint 2010环境。
  • 2017年01月02日 20:49

如何通过关键字和搜索结果分析用户需求

产品经理如何通过分析搜索引擎的关键字、搜索结果帮助产品经理对用户需求分析的把握呢?这篇文章将会详细介绍。...
  • PEXUE
  • PEXUE
  • 2016-08-29 10:38:34
  • 1657

IE中使用google的搜索程序时总是先弹出“查看在google.com.hk上的搜索结果”页面,如何让其直接返回搜索结果?

众所周知,自从Google退出中国以后,之前Google.cn的内容都重定向到Google.com.hk了。而我们在Internet Explorer库网站里面添加Google加载项为默认搜索引擎以后...
  • cupid0051
  • cupid0051
  • 2012-09-16 14:23:50
  • 5106

在你点击了 Google 搜索按钮之后到看到结果这不足1秒钟的时间内,它做了什么?

在你点击了 Google 搜索按钮之后到看到结果这不足1秒钟的时间内,它做了什么?互联网上的内容如何被谷歌找到?什么样的内容会被收录?想必大家一定都想知道谷歌搜索按钮背后的秘密吧。别急,开始之前我们先...
  • u013630349
  • u013630349
  • 2017-10-23 10:28:23
  • 537

搜索引擎怎么做历史搜索词记录

经常性的看到在一些电商网站上的 搜索关键词记录,被其他网站给爬取到。然后去判断用户的行为习惯,作一些 乱七八糟的相关商品推荐或者 广告。不得不说,确实做的很人性化,这是怎么实现的。怎么获取到用户的搜索...
  • hu948162999
  • hu948162999
  • 2015-02-28 11:56:48
  • 1983

点搜索按钮div后 自动执行搜索

$("#firstname").keyup(function(){ if(event.keyCode == 13){ //这里写你要执行的事件; var info=$(th...
  • A9925
  • A9925
  • 2015-12-01 09:25:04
  • 418

搜索框输入文字显示搜索结果的效果

有的时候我们在使用app的时候,在搜索框上输入开头几个字符就会弹出一个下拉框匹配出开头字符相符的搜索结果,这个效果是怎么做出来的呢。有的人用contentProvider做,而我采用的是一个比较偷懒的...
  • LLL_mj
  • LLL_mj
  • 2015-05-16 20:01:25
  • 337

《JavaWeb---利用cookie记录用户的历史浏览》

代码虽少,却遇到了很多问题。感觉也学到了很多东西。 //展示商品,“首页”Servlet package com.fenghuo.cookie; import java.io.IOExceptio...
  • w695050167
  • w695050167
  • 2012-09-14 15:06:04
  • 5795

实现搜索的历史浏览记录,含数据库

MainActivity.java 作用:显示搜索框具体代码如下: package scut.carson_ho.search_layout; import android.support....
  • sanciyuan2044123845
  • sanciyuan2044123845
  • 2017-04-17 08:51:00
  • 1078

js实现搜索历史记录功能

html代码 历史搜索: js代码 //产品搜索并存值 var thisurl="search.aspx?action=search"; function SiteSearch(){ ...
  • qq_22103321
  • qq_22103321
  • 2017-01-18 19:04:09
  • 6924
收藏助手
不良信息举报
您举报文章:搜索2.0:利用用户点击记录改善搜索结果
举报原因:
原因补充:

(最多只允许输入30个字)