Ranking Relevance是搜索排序算法的各个影响因子中相当重要的一个部分。对于Ranking Relevance的计算,过去的技术往往分为两个大的方向:Click BehaviorText Match

1. Click Behavior类的feature

主要是利用用户的点击行为来计算query-doc relevance,直观上,点击越多的query-doc pair,relevance也越高,当然Click Behavior类的feature还包括:是否是首次点击,是否是最后一次点击,是否是唯一点击,等等。

但是Click Behavior类的feature的缺点也显而易见:

1)Sparsity。只有“有过点击”的query-doc pair,我们才可以计算它们的relevance,而对那些历史上根本没有过点击的query-doc pair,往往束手无策。

2)Noisy。另外一个更常见的问题是,对于长尾的query-doc pair,展现数和点击数过少,所以得到的query-doc的展现CTR等数据噪音较大,虽然也可以通过贝叶斯平滑的方式来缓解(详见博客:http://www.cnblogs.com/bentuwuying/p/6389222.html,和http://www.cnblogs.com/bentuwuying/p/6498370.html)。

总结来看,Click Behavior类的feature,对于Top的query-doc pair(即展现次数&点击次数较多)比较可靠,对于长尾的,甚至是没出现过的query-doc pair,则不太可靠。

2. Text Match类的feature

包括Term Match(term级别的匹配),和Topic Match(语义级别的匹配)。Text Match并不受到query-doc的展现次数和点击次数的多少的影响,即当query和doc确定后,这类feature的值就确定了(当然前提是采用相同的模型计算的),并不会随着时间的推移而改变,是一种静态的relevance关系。

2-1. Term Match

包括:直接根据query和doc的term进行各种匹配,各种计算得到,比如,词频(term frequency),TF-IDF,布尔模型,空间向量模型(将query和doc各自分词后的term组成一个共享的词典vector,然后各自表示成相同维度的vector,计算相似度),BM25,query与doc各个field的term级别重叠比例(重叠term个数占query term个数的比例,重叠term个数占doc各个field的term个数的比例,query-doc的N-gram重叠比例,query能覆盖doc的N-gram prefix的比例,query-doc是否perfect match)等。

Term Match的缺点在于:

1) 无法解决近义词的问题,由于是term级别的匹配,那么近义词虽然表达的意思近似,但是却无法匹配,或者说在向量空间上距离很远,即无法表达近义词。

2)query和doc上的term的语法表达的区别,例如query中的“how much”与doc中的“price”,意思虽然近似,但是存在语法语义上的区别。

2-2. Topic Match

包括:一般是将query和doc都映射到一个隐含层空间向量上(隐语义空间),然后基于这个隐含层空间上的vector计算相似度,一般可以用pLSA,或者LDA等NLP模型来处理)

Topic Match的缺点在于,解释性较差,不同于Term Match中我们把query和doc切分到term级别,解释性较强,而在Topic Match中,映射到隐语义空间上时,vector每个维度表达的意思并不知道,不利于验证和debug。

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 }
span.s1 { font: 12.0px "Helvetica Neue" }

Ranking Relevance小结的更多相关文章

  1. Ranking relevance in yahoo search (2016)论文阅读

    文章链接 https://www.kdd.org/kdd2016/papers/files/adf0361-yinA.pdf abstract 点击特征在长尾query上的稀疏性问题 基础相关性三大技 ...

  2. 【阅读笔记】Ranking Relevance in Yahoo Search (四 / 完结篇)—— recency-sensitive ranking

    7. RECENCY-SENSITIVE RANKING 作用: 为recency-sensitive的query提高排序质量: 对于这类query,用户不仅要相关的还需要最新的信息: 方法:rece ...

  3. 【阅读笔记】Ranking Relevance in Yahoo Search (一)—— introduction & background

    ABSTRACT: 此文在相关性方面介绍三项关键技术:ranking functions, semantic matching features, query rewriting: 此文内容基于拥有百 ...

  4. 【阅读笔记】Ranking Relevance in Yahoo Search (三)—— query rewriting

    5. QUERY REWRITING 作用: query rewriting is the task of altering a given query so that it will get bet ...

  5. 【阅读笔记】Ranking Relevance in Yahoo Search (二)—— maching learned ranking

    3. MACHINE LEARNED RANKING 1) 完全使用不好的数据去训练模型不可行,因为负面结果不可能覆盖到所有方面: 2) 搜索可以看做是个二分问题,在此实验中,我们使用gradient ...

  6. Facebook Architecture

    Facebook Architecture Quora article a relatively old presentation on facebook architecture another I ...

  7. 使用点击二分图计算query-document的相关性

    之前的博客中已经介绍了Ranking Relevance的一些基本情况(Click Behavior,和Text Match):http://www.cnblogs.com/bentuwuying/p ...

  8. 使用点击二分图传导计算query-document的相关性

    之前的博客中已经介绍了Ranking Relevance的一些基本情况(Click Behavior,和Text Match):http://www.cnblogs.com/bentuwuying/p ...

  9. KDD2016,Accepted Papers

    RESEARCH TRACK PAPERS - ORAL Title & Authors NetCycle: Collective Evolution Inference in Heterog ...

随机推荐

  1. C#实体类生成XML与XML Schema文档

    一.实体类生成XML private void CreateXML() { Type[] objType = DBEntityRegst(); foreach (var item in objType ...

  2. UI培训自学能学好吗

    近年来UI设计师愈来愈红,成为行业热门,越来越多的人开始专注UI培训,也有一部分人在考虑,培训班一般价格不菲,我自学怎么样呢? UI设计是指人机交互过程中的一个界面设计,常用到的有 ps和ai两个工具 ...

  3. 解决springmvc在单纯返回一个字符串对象时所出现的乱码情况(极速版)

    使用springmvc框架开发了这么长时间,之前都是直接返回jsp页面,乱码情况都是通过配置和手动编解码来解决,但是今天突然返回一段单纯的字符串时,发现中文乱码情况解决不了了,下面就给各位分享一下如何 ...

  4. abstract和interface的区别

    abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力. abstract class和inte ...

  5. 腾讯云数据库团队:SQL Server 数据加密功能解析

    数据加密是数据库被破解.物理介质被盗.备份被窃取的最后一道防线:数据加密,一方面解决数据被窃取安全问题,另一方面有关法律要求强制加密数据:SQL Server 的数据加密相较于其他数据库,功能相对完善 ...

  6. python 中的input()和raw_input()功能与使用区别

    在python中raw_input()和input()都是提示并获取用户输入的函数,然后将用户的输入数据存入变量中.但二者在处理返回数据类型上有差别. input()函数是raw_intput()和e ...

  7. 关于EasyUI 1.5版Datagrid组件在空数据时无法显示"空记录"提示的BUG解决方法

    问题:jQuery easyUI中Datagrid,在表格数据加载无数据的时候,如何显示"无记录"的提示语? 解决jQuery EasyUI 1.5.1版本的Datagrid,在处 ...

  8. java线程的等待、通知机制【读书笔记】

    代码示例: package com.baidu.nuomi.concurrent; import java.text.SimpleDateFormat; import java.util.Date; ...

  9. 深入解读Python的unittest并拓展HTMLTestRunner

    unnitest是Python的一个重要的单元测试框架,对于用Python进行开发的同事们可能不需要对他有过深入的了解会用就行,但是,对于自动化测试人员我觉得是要熟知unnitest的执行原理以及相关 ...

  10. 路径正确下,Eclipse读取txt文件仍失败

    症状:使用Eclipse读取文件时,路径输入确认正确(前提!!!),但控制台总报错: 错误类型一: Exception in thread "main" java.io.FileN ...