信息检索指标直接优化的通用近似框架

news2024/11/18 16:37:30

1、直接优化信息检索指标的背景 

1.1、存在问题

直接优化信息检索的指标是信息检索的一大方向。主要包含两类方法,一类是将IR指标作为上界进行优化;另一类是使用平滑函数近似表示IR指标进行优化。

  • 直接优化IR指标方式很自然,但没有提供理论支持。
  • 代理函数与IR指标之间的关系未充分得到论证,代理函数是否能够表述IR指标的度量在优化过程中很有必要。
  • 现有代理函数不容易优化,很难扩展到其他的指标。例如SVM^{map}SVM^{ndcg}采用结构化的SVM来优化ap和ndcg指标。

1.2、提出优化框架解决问题

提出了一个优化框架来直接优化IR指标,可以有效避免下列3个问题

  • 基于统计学的一致性理论,在大量数据情况下,IR指标有界代理函数不是很复杂时,直接优化IR指标有较好的表现。基于泛化理论,进一步论证了直接优化IR指标的效果。
  • 提出的框架可以准确近似地表示任何基于位置的IR指标,并将IR的优化转换为代理函数的优化。直接优化IR 度量指标的难点在于,度量是基于位置的,基于位置的指标不连续也不可微。如果可以连续可微地表示基于位置的度量,则可以优化任何基于位置的度量指标。实验表明,高精度近似表示,高效率。
  • 很容易导出学习算法来优化框架中的代理函数

1.3、主要贡献

  • 为直接优化IR 指标提供了理论依据
  • 提供了一个基于位置的IR指标度量框架
  • 给出了ap和ndcg两个指标优化的示例

2、相关工作

2.1、常见IR 指标

2.1.1、p@k

top k个doc中相关doc的比例

2.1.2、ap

两级相关性判断的标准,位置平均的p@k

2.1.3、map

所有query的ap均值

2.1.4、NDCG@k

NDCG@k是多级相关性评估标准的IR评估指标

2.2、直接优化IR指标的常见方法

SVM^{map}直接优化1-ap的上界

SVM^{ndcg} 直接优化1-ndcg的上界

AdaRank设定为指数函数,该函数可以设定为1-ap、1-ndcg的上界

SoftRank将随机性引入相关性分数来平滑ndcg指标

3、理论论证

3.1、效果度量

M(f,q)为针对指标M的预期度量(测试度量),M_{m}(f,q)为针对指标M的经验度量(训练度量),具体公式表示如下:

3.2、两个理论

3.2.1、理论1:一致性理论

如果排序函数空间F不复杂,并且IR度量M(q, f) 在函数空间 F 上一致有界,则训练
学习排序算法的效率M(f)一致收敛于测试效率M(f)。

对ndcg、map、p@k其范围为[0,1]之间,IR度量M(q, f)在函数空间上是一致有界的

3.2.2、理论2:泛化性理论

测试效率和最佳测试效率有上界,表述如下:

当query量足够大时,直接优化排序指标是最佳的优化方式

3.3、remarks

像DCG无界的指标,不满足理论1的一致有界条件,代理函数不能保证取得较好的效果。

两个理论只在大样本条件下成立

代理函数和IR指标的关系没有论证,无法保证直接优化的方式优于其他方式 

4、IR指标代理框架

4.1、重要4步

  • 1、重新定义IR指标,将IR指标按照依据位置索引的变更为依据doc索引。新定义的公式中包含位置函数和可选的截断函数,其中位置函数和截断函数不可导。
  • 2、用rank score的平滑函数来近似位置函数
  • 3、用位置平滑函数近似截断函数
  • 4、应用优化技术来优化近似指标(代理函数)

4.2、IR指标定义

X为q的一系列doc,x为X中的一个,f为x的排序打分函数,x的分数记为s_{x},其表述如下:

 s_{x}=f(x,\theta ),x\in X

根据s_{x}可以得到一个排序\pi (x),根据label会有一个原始的相关度排序r(x),\pi (x)和r(x)之间可以通过IR指标进行度量,公式化表示如下:

I(A)=\left\{\begin{matrix} 1 & if A is true\\ 0& otherwise \end{matrix}\right.

4.3、IR指标重新定义

4.3.1、ap指标重定义

4.3.2、ndcg指标重定义 

重定义中的位置函数和截断函数均不可导

4.4、位置近似函数

4.4.1、排序分位置表示

位置可视为排序分的产出,位置和截断函数均不连续可导

4.4.2、平滑函数替代位置表示

用逻辑回归函数表示指示函数I(s_{x,y}<0)

sigmiod函数预测为0的部分

逻辑函数是sigmoid函数的特例,其他的sigmiod函数也满足要求

4.4.3、替换后的位置表示

用平滑函数替代后的位置表示

4.4.4、位置表示与近似位置表示对比

位置近似表示和真实表示几乎接近

4.5、截断函数近似

截断函数为两个分数的差值,可以将位置的差值直接进行sigmiod,引入截断函数表示后的ap指标表示如下所示:

4.6、代理函数优化

指标函数使其变得连续可微,简单的优化方法就能直接进行优化,使其最大。

5、理论分析

5.1、位置近似理论分析

正值最小差距表示

理论3:给定一个包含n个doc集的X,当\alpha>0时,近似位置表示可以以如下精度接近真实位置表示

\delta _{x}\alpha很大时,位置表示和近似位置表示接近

理论3证明

理论4:给定一个包含n个doc集的X,当\alpha >0时,近似位置表示接近真实位置表示的精度在如下区间中

5.2、度量近似理论分析

理论5:误差\varepsilon <0.5时,近似ap度量和真实ap度量精度上界如下:

理论6:ndcg度量的精度上界如下所示:

5.3、精度近似的理由

直接指标优化表现良好,近似指标精度高,能达到同等的效果。

理论7:近似度量在测试集上的表现和最优表现有上界

6、实验结论

6.1、数据集

采用LETOR5数据集来进行实验结果验证,LETOR上的TD2003 (50个query,每个对应1000个doc)和 TD2004(75个query,每个对应1000个doc,2个相关性等级(相关/不相关),44维query-doc对特征表示)去测试ApproxAP算法。LETOR上的OHSUMED(106个query,16,140个query-doc pair样本,3个相关性档位(完全相关、部分相关、不相关),25维特征表示)被用来去测试ApproxNDCG算法。

6.2、IR指标近似度量

IR指标近似和真实IR指标之间的差距,AP、NDCG指标之间差距公式表示

固定超参\beta=10,ap error随\alpha超参变化的曲线图

\alpha=100时,近似IR指标估计和真实指标估计准确率高达98%

固定超参\alpha=100,ap error随\beta超参变化的曲线图

ndcg度量精度和精度随超参变化的曲线

ndcg和ap能得出一样的结论

6.3、approxNDCG和approxAP的实验对比

6.3.1、approxAP指标

approxAP和AdaRank.MAP、SVMmap结果对比,AdaRank.MAP从论文中引用,SVMmap结果为论文作者提供参数跑出

6.3.2、approxNDCG指标

NDCG@n指标在SoftRank、 AdaRank.NDCG 、 ApproxNDCG中的表现分别为0.6680, 0.6589 、 0.6698。

不同位置的表现,3种算法随位置的变化曲线如下:

6.4、讨论

选择哪个指标更加合适?

论文中给出,只有两个相关性等级时,使用MAP指标比较合适;当有多个相关性档位时,选择NDCG指标比较合适。

在训练时,就M指标,直接优化M指标是否比直接优化M'指标更好?

如果指标M'包含了M,优化M'可能比优化M更好

在TD2003数据集上approxAP和approxNDCG表现相当,在TD2004数据集上approxAP较approxNDCG表现好。直接优化M指标是否比直接优化M'指标无法定论,还有待调研论证。

7、总结

此paper为直接优化IR指标提供了理论依据;在一定条件下,直接优化IR指标是合理的;直接优化指标可能是排序学习最优的方法之一。

提出了基于位置IR指标直接优化的整体框架,核心思想在于使用排序分近似表述IR指标。主要有3个优点,1)近似估计法简单通用;2) 许多现有技术可以直接用于优化,且优化本身是与测量无关的;3)设置合理的参数可以获得较高的近似逼近。以ap和ndcg为例,展示了如何优化框架,在公开数据集上验证了理论分析的正确性和有效性。

8、参考文献

https://arxiv.org/pdf/2102.07831.pdf   NeuralNDCG

排序学习-4.ApproxNDCG与NeuralNDCG - 知乎

https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-2008-164.pdf ApproxNDCG

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1252797.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【ArcGIS Pro微课1000例】0037:ArcGIS Pro中模型构建器的使用---以shp批量转kml/kmz为例

文章目录 一、ArcGIS Pro模型构建器介绍二、shp批量转kml/kmz1. 打开模型构建器2. 添加工作空间4. 添加【创建要素图层】工具5. 添加【图层转kml】工具6. 输出文件命名7. 运行模型一、ArcGIS Pro模型构建器介绍 模型构建器是一种可视化编程语言,用于构建地理处理工作流。 地理…

Inport 模块

文章目录 Interpolate datainport 模块存在于模型最顶层Port Dimension 和 Variable-size signal Interpolate data Interpolate data&#xff1a;当将 Workspace 的数据导人模型时, 对没有对应数据点的采样时刻进行线性插值的开关选项。 inport 模块存在于模型最顶层 inpo…

区块链技术将如何影响未来的数字营销?

你是否听腻了区块链和数字营销等流行语&#xff0c;却不明白它们对未来意味着什么&#xff1f;那么&#xff0c;准备好系好安全带吧&#xff0c;因为区块链技术将彻底改变我们对数字营销的看法。从建立消费者信任到提高透明度和效率&#xff0c;其可能性是无限的。 让我们来探…

3.10-容器的操作

这一节讲解一下对于container我们可以进行哪些操作&#xff1f; 可以使用以下命令来停止正在运行的Docker容器&#xff1a; docker container stop <CONTAINER ID> 关于运行中的容器&#xff0c;我们可以进行的操作&#xff1a; 第一个是docker exec命令&#xff0c;这个…

软件开发中的抓大放小vs极致细节思维

最近在开发过程中&#xff0c;遇到了好多次 “这个需求点这次要不要做&#xff1f;” 的问题&#xff0c; 主要有两方阵营&#xff0c;比如以研发主导的 “这次先不做、等必要的时候再做” &#xff0c;另外一方是以PM主导的 “这个不做需求不完整&#xff0c;可能影响用户体验…

单片机AT89C51直流电机控制电路PWM设计

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;直流电机 获取论文报告源码源程序原理图 此文将介绍一种直流电机&#xff0c;详细阐述了用单片机输出口所给占空比的不同实现电机的调速的设计方法&#xff1b;着重讨论L298用于电机驱动时特有的优势。直流电机调速具有…

影刀RPA_boss直聘翻页(避坑)

boss直聘翻页这里有个坑 问题&#xff1a; 无限循环中&#xff0c;点击下一页按钮&#xff0c;直到不可点击为止。 发现&#xff0c;在点到第5页的时候&#xff0c;再次点击下一页&#xff0c;直接就点击了页码10&#xff0c;导致流程直接就结束了。 在第5页进行校验&#xff0…

基于51单片机的百叶窗控制系统设计

**单片机设计介绍&#xff0c; 基于51单片机的百叶窗控制系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于51单片机的百叶窗控制系统设计可以分为硬件设计和软件设计两个方面。下面是一个简要的设计介绍&#xff1a; …

阿里云服务器安装mysql数据库之后无法远程连接

目录 一、mysql安装完成后直接远程远程连接阿里云服务器上的MySQL会报下述错误&#xff1a; 1、修改root用户的host 为% 登录MySQL 后 执行 2、修改完成后执行 3、退出mysql 重启mysql服务 exit; 4、修改完成后需要设置阿里云的安全规则。 二、dbaver测试链…

C语言每日一题(37)两数相加

力扣网 2 两数相加 题目描述 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&a…

【Spring篇】Spring注解式开发

本文根据哔哩哔哩课程内容结合自己自学所得&#xff0c;用于自己复习&#xff0c;如有错误欢迎指正&#xff1b; 我在想用一句话激励我自己努力学习&#xff0c;却想不出来什么惊为天人、精妙绝伦的句子&#xff0c;脑子里全是上课老师想说却没想起的四个字 “ 唯手熟尔 ”&am…

python pip安装第三方包时报错 error: Microsoft Visual C++ 14.0 or greater is required.

文章目录 1.问题2.原因3.解决办法 1.问题 pip install 的时候报错一大堆&#xff0c;其中有这么一段话 &#x1f447; error: Microsoft Visual C 14.0 or greater is required. Get it with "Microsoft C Build Tools": https://visualstudio.microsoft.com/visua…

java基于springboot公益帮学网站 新闻发布系统的设计与实现vue

以Java为开发平台&#xff0c;综合利用Java Web开发技术、数据库技术等&#xff0c;开发出公益帮学网站。用户使用版块&#xff1a;可以选择注册并登录&#xff0c;可以浏览信息、可以网上互动、发布文章、内容推荐等。后台管理员管理版块&#xff1a;以管理员身份登录网站后台…

Proteus仿真--用DS1302与12864LCD设计的可调式中文电子日历

本文主要介绍用DS1302和12864 LCD的可调式中文电子日历&#xff08;完整仿真源文件及代码见文末链接&#xff09; 仿真图如下 其中12864LCD上面显示中文年月日信息时间信息&#xff0c;按键K1-K4&#xff0c;K1用于年月日时分选择&#xff0c;K2用于加功能&#xff0c;K3用于…

isis基础大全学习案例

R1配置&#xff1a; isis 1 is-level level-2 //本区域只启用level-2级别 cost-style wide //默认为narrow窄度量&#xff0c;开销只能最大63&#xff0c;并且不能打tag&#xff0c;wide宽度量的tlv和narrow不匹配&#xff0c;不能相互计算路由&#xff0c;两边都要改。 netwo…

Docker的学习笔记

1.1 docker的介绍 1.2 docker的一次安装 //如果是root用户&#xff0c;不加sudo也行curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -echo deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster stable…

路由VRRP与BFD联动例子

拓朴如下&#xff1a; 主要配置如下&#xff1a; [S1] vlan batch 10 20 # interface GigabitEthernet0/0/1port link-type accessport default vlan 10 # interface GigabitEthernet0/0/2port link-type accessport default vlan 20 # interface GigabitEthernet0/0/3port li…

[计算机网络]运输层概述

虽然我自己也不知道写在前面和前言有什么区别..... 这个系列其实是针对<深入浅出计算机网络>的简单总结,加入了一点个人的理解和浅薄见识,如果您有一些更好的意见和见解,欢迎随时协助我改正,感激不尽啦. 最近心态平和了不少, 和过去也完全做了个割舍吧,既然痛苦和压力的…

未来已来,Web前端测试这么做更高效!

一. 前端测试是什么&#xff1f; 前端测试也是一种自动化测试技术&#xff0c;其测试的主要对象就是 Web 应用的图形用户界面&#xff08;GUI&#xff09;、功能和可用性&#xff0c;以确保 Web 应用的 GUI 层在连续的更新迭代中没有 Bug。 例如&#xff0c;可以检查输入字段…

linux的netstat命令和ss命令

1. 网络状态 State状态LISTENING监听中&#xff0c;服务端需要打开一个socket进行监听&#xff0c;侦听来自远方TCP端口的连接请求ESTABLISHED已连接&#xff0c;代表一个打开的连接&#xff0c;双方可以进行或已经在数据交互了SYN_SENT客户端通过应用程序调用connect发送一个…