Learning to Rank

  • pointwise

\[
L\left(f ; x_{j}, y_{j}\right)=\left(y_{j}-f\left(x_{j}\right)\right)^{2}
\]

只考虑给定查询下单个文档的绝对相关度,不考虑其他文档和给定查询的相关度.

输入空间中样本是单个 doc(和对应 query)构成的特征向量;

输出空间中样本是单个 doc(和对应 query)的相关度;

假设空间中样本是打分函数;

损失函数评估单个 doc 的预测得分和真实得分之间差异。

  • PairWise

\[
L\left(h ; x_{u}, x_{v}, y_{u, v}\right)=\left(y_{u, v}-P\left(x_{u} \succ x_{v}\right)\right)^{2}+\left(y_{v, u}-P\left(x_{u} \prec x_{v}\right)\right)^{2}
\]

考虑给定查询下两个文档直接的相对相关度。比如给定查询query的一个真实文档序列,我们只需要考虑任意两个相关度不同的文档直接的相对相关度。

输入应该是两个item的特征,最重的输出应该是两个item的大小关系

输入空间中样本是(同一 query 对应的)两个 doc(和对应 query)构成的两个特征向量;
输出空间中样本是 pairwise preference;
假设空间中样本是二变量函数;
损失函数评估 doc pair 的预测 preference 和真实 preference 之间差异

  • ListWise

\[
L(F(x),y) = exp(-NDCG) \\NDCG = DCG/IDCG \\ DCG = g_i+\sum_{i=2}\frac{g_i}{log_2^{i}}
\]

\(g_i\) 表示对应项的增益(得分)。NDCG(Normalized Discounted Cumulative Gain); IDCG (Ideal DCG)

举个栗子:

搜索结果 3、1、2、3、2 ; DCG = 3+(1+1.26+1.5+0.86 )=7.62

IDCG下的分值排列顺序是3、3、2、2、1 ; IDCG=3 + (3+1.26+1+0.43)=8.69

直接考虑给定查询下的文档集合的整体序列,直接优化模型输出的文档序列

输入空间中样本是(同一 query 对应的)所有 doc(与对应的 query)构成的多个特征向量(列表);
输出空间中样本是这些 doc(和对应 query)的相关度排序列表或者排列;
假设空间中样本是多变量函数,对于 docs 得到其排列,实践中,通常是一个打分函数,根据打分函数对所有docs 的打分进行排序得到 docs 相关度的排列;

reference:

https://blog.csdn.net/lipengcn/article/details/80373744

https://blog.csdn.net/u014313009/article/details/38944687

搜索排序-learning to Rank简介的更多相关文章

  1. 【机器学习】Learning to Rank 简介

    Learning to Rank 简介 去年实习时,因为项目需要,接触了一下Learning to Rank(以下简称L2R),感觉很有意思,也有很大的应用价值.L2R将机器学习的技术很好的应用到了排 ...

  2. Learning to Rank 简介

    转自:http://www.cnblogs.com/kemaswill/archive/2013/06/01/3109497.html,感谢分享! 本文将对L2R做一个比较深入的介绍,主要参考了刘铁岩 ...

  3. Learning to Rank简介

    Learning to Rank是采用机器学习算法,通过训练模型来解决排序问题,在Information Retrieval,Natural Language Processing,Data Mini ...

  4. 推荐排序---Learning to Rank:从 pointwise 和 pairwise 到 listwise,经典模型与优缺点

    转载:https://blog.csdn.net/lipengcn/article/details/80373744 Ranking 是信息检索领域的基本问题,也是搜索引擎背后的重要组成模块. 本文将 ...

  5. [Machine Learning] Learning to rank算法简介

    声明:以下内容根据潘的博客和crackcell's dustbin进行整理,尊重原著,向两位作者致谢! 1 现有的排序模型 排序(Ranking)一直是信息检索的核心研究问题,有大量的成熟的方法,主要 ...

  6. Learning to Rank之Ranking SVM 简介

    排序一直是信息检索的核心问题之一,Learning to Rank(简称LTR)用机器学习的思想来解决排序问题(关于Learning to Rank的简介请见我的博文Learning to Rank简 ...

  7. Learning to Rank之RankNet算法简介

    排序一直是信息检索的核心问题之一, Learning to Rank(简称LTR)用机器学习的思想来解决排序问题(关于Learning to Rank的简介请见我的博文Learning to Rank ...

  8. 【机器学习】Learning to Rank之Ranking SVM 简介

    Learning to Rank之Ranking SVM 简介 排序一直是信息检索的核心问题之一,Learning to Rank(简称LTR)用机器学习的思想来解决排序问题(关于Learning t ...

  9. 芝麻HTTP: Learning to Rank概述

    Learning to Rank,即排序学习,简称为 L2R,它是构建排序模型的机器学习方法,在信息检索.自然语言处理.数据挖掘等场景中具有重要的作用.其达到的效果是:给定一组文档,对任意查询请求给出 ...

随机推荐

  1. C语言中内存的管理

    一.动态内存分配与释放 1.为什么要使用动态内存分配,以下看一个实例,关于超市中购买记录的一段程序 #include <stdio.h> #include <string.h> ...

  2. H3C 命令行帮助特性(续)

  3. @noi.ac - 443@ 老头子的话

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 老头子是小学校长,小学生(大哥)们都很听老头子的话.一天,老头子 ...

  4. hadoop2.6.0 + hbase-1.0.0 伪分布配置

    1 基本配置 主机名: 192.168.145.154 hadoop2 ======= 2 etc/hadoop下文件配置 1)core-site.xml <configuration> ...

  5. 洛谷P3313 [SDOI2014]旅行 题解 树链剖分+线段树动态开点

    题目链接:https://www.luogu.org/problem/P3313 这道题目就是树链剖分+线段树动态开点. 然后做这道题目之前我们先来看一道不考虑树链剖分之后完全相同的线段树动态开点的题 ...

  6. H3C DCC工作流程

  7. 深入Java线程管理(一):线程的实现方式

    Java的线程实现方式一共有三种,继承Thread.实现Runable接口,实现Callable接口.不过实现Runnable接口与实现Callable接口的方式基本相同,只是Callable接口里定 ...

  8. PLSQL中的三种参数模式IN、OUT、IN OUT

    原文链接:https://www.cnblogs.com/zbj815/p/6854108.html 1.IN模式 IN模式是参数的默认模式,这种模式就是在程序运行的时候已经具有值,在程序体中值不会改 ...

  9. java Class中得到构造方法Constructor、方法Method、字段Field

    常用方法: Constructor类用于描述类中的构造方法: Constructor<T> getConstructor(Class<?>... parameterTypes) ...

  10. 备战省赛组队训练赛第十八场(UPC)

    传送门 题解:by 青岛大学 A:https://blog.csdn.net/birdmanqin/article/details/89789424 B:https://blog.csdn.net/b ...