《搜索和推荐中的深度匹配》——2.3 搜索中的潜在空间模型

接下来,我们以潜在空间为基础介绍匹配模型。【1】中找到了搜索中语义匹配的完整介绍。具体来说,我们简要介绍了在潜在空间中执行匹配的代表性搜索方法,包括偏最小二乘(PLS)【2】,潜在空间中的规则化匹配(RMLS)【3】,以及监督语义索引(SSI)【4】【5】。

2.3.1 偏最小二乘

偏最小二乘(PLS)是最初提出的用于统计回归的一种技术【6】。结果表明,PLS可用于学习潜在空间模型进行搜索【7】。

让我们考虑使用方程 (2.4) 中的匹配函数 f (q, d)。我们还假设映射函数定义为 φ ( q ) = L q q φ(q) = L_qq φ(q)=Lqq φ ′ ( d ) = L d d φ^′(d) = L_dd φ(d)=Ldd,其中 q 和 d 是表示查询 q 和文档 d 的特征向量, L q L_q Lq L d L_d Ld 是正交矩阵。因此,匹配函数变为
在这里插入图片描述
其中 L q L_q Lq L d L_d Ld 将被学习。
给定训练数据, L q L_q Lq L d L_d Ld 的学习相当于使用约束优化目标函数(基于pointwise loss):
在这里插入图片描述
其中 ( q i , d i ) (q_i,d_i) (qi,di) 是一对query和文档, c i c_i ci 是这对的点击数,I 是单位矩阵。这是一个非凸优化问题,然而,全局最优是存在的,可以通过使用 SVD(奇异值分解)来实现【7】。

2.3.2 到潜在空间的正则化映射

PLS 假设映射函数是正交矩阵。当训练数据量很大时,学习变得困难,因为它需要解决时间复杂度高的SVD。为了解决这个问题,【8】提出了一种称为潜在空间中的正则化匹配 (RMLS) 的新方法,其中在解决方案稀疏的假设下,PLS 中的正交约束被 l 1 l_1 l1 l 2 l_2 l2正则化替换。这样就不需要求解SVD,可以高效的进行优化。具体来说,优化问题变成了使用 l 2 l_2 l2 l 2 l_2 l2约束最小化目标函数(基于逐点损失)的问题:
在这里插入图片描述
其中 ( q i , d i ) (q_i,d_i) (qi,di) 是一对query和文档, c i c_i ci 是这对的点击次数, L q L_q Lq L d L_d Ld 是线性映射矩阵, l q j l_q^j lqj l d j l_d^j ldj L q L_q Lq L d L_d Ld 的第 j 行向量, θ q , θ d 、 τ q 和 τ d θ_q,θ_d 、τ_q 和 τ_d θqθdτqτd 是阈值。 ∣ ⋅ ∣ 和 ∣ ∣ ⋅ ∣ ∣ | · |和|| ·|| 分别表示 l1 和 l2 范数。请注意,正则化是在行向量上定义的,而不是在列向量上定义的。使用 l2 范数是为了避免结果太小。

RMLS中的学习也是一个非凸优化问题。不能保证可以找到全局最优解。解决问题的一种方法是采用替代优化,即先固定 L q 并 优 化 L d , 然 后 固 定 L d 并 优 化 L q L_q并优化L_d,然后固定L_d并优化L_q LqLdLdLq,重复直到收敛。可以很容易地看到,优化可以逐行和逐列地分解和执行矩阵。这意味着 RMLS 中的学习可以轻松并行化和扩展。

方程(2.5)中的匹配函数可以改写为双线性函数:
在这里插入图片描述
其中 W = L q T L d W = L^T_q L_d W=LqTLd。因此,PLS 和 RMLS 都可以看作是一种学习双线性函数的方法,矩阵 W 可以分解为两个低秩矩阵 L q 和 L d L_q 和 L_d LqLd

2.3.3 监督语义索引

在 PLS 和 RMLS 中可以做一个特殊的假设;即query空间和文档空间具有相同的维度。例如,当query和文档都表示为词袋时,它们在查询和文档空间中具有相同的维度。结果,方程(2.8)中的 W 变成了一个方阵。 Bai等人提出的监督语义索引(SSI)方法【9】正是做出了这个假设。它进一步将 W 表示为低秩和对角保留矩阵:
在这里插入图片描述
其中 I 表示单位矩阵。因此,匹配函数变为:
在这里插入图片描述
单位矩阵的添加意味着 SSI 在使用低维潜在空间和使用经典向量空间模型 (VSM) 之间进行权衡。 矩阵 W 的对角线对出现在query和文档中的每项给出一个分数。

给定点击数据,首先导出有序的query文档对,表示为 P = ( q 1 , d 1 + , d 1 − ) , . . . , ( q M , d M + , d M − ) P = {(q_1,d^+_1 ,d^−_1 ),...,(q_M,d^+_M,d^−_M)} P=(q1,d1+,d1),...,(qM,dM+,dM) 其中 d + d^+ d+排名高于 d − d^− d,M 是对的数量。学习的目标是选择 L q 和 L d L_q 和 L_d LqLd,使得 f ( q , d + ) > f ( q , d − ) f(q,d^+) > f(q,d^−) f(q,d+)>f(q,d)对所有对都成立。使用成对损失函数。优化问题变为
在这里插入图片描述
SSI的学习也是一个非凸优化问题,不能保证找到全局最优解。可以以类似于 RMLS 的方式进行优化。

引文

【1】Li,H. and J. Xu (2014). “Semantic matching in search”. Foundations and Trends in Information Retrieval. 7(5): 343–469.
【2】Rosipal, R. and N. Krämer (2006). “Overview and recent advances in partial least squares”. In: Proceedings of the 2005 International
Conference on Subspace, Latent Structure and Feature Selection.
SLSFS’05. Bohinj, Slovenia: Springer-Verlag. 34–51.
【3】Wu, W., Z. Lu, and H. Li (2013b). “Learning bilinear model for matching
queries and documents”. Journal of Machine Learning Research. 14(1): 2519–2548. url: http://dl.acm.org/citation.cfm?id=2567709. 2567742.
【4】Bai, B., J. Weston, D. Grangier, R. Collobert, K. Sadamasa, Y. Qi, O. Chapelle, and K. Weinberger (2009). “Supervised semantic indexing”. In: Proceedings of the 18th ACM Conference on Information and Knowledge Management. CIKM ’09. Hong Kong, China: ACM. 187– 196.
【5】Bai, B., J. Weston, D. Grangier, R. Collobert, K. Sadamasa, Y. Qi, O. Chapelle, and K. Weinberger (2010). “Learning to rank with
(a lot of) word features”. Information Retrieval. 13(3): 291–314.
【6】Rosipal, R. and N. Krämer (2006). “Overview and recent advances in partial least squares”. In: Proceedings of the 2005 International
Conference on Subspace, Latent Structure and Feature Selection.
SLSFS’05. Bohinj, Slovenia: Springer-Verlag. 34–51.
【7】Wu, W., H. Li, and J. Xu (2013a). “Learning query and document
similarities from click-through bipartite graph with metadata”. In:
Proceedings of the Sixth ACM International Conference on Web
Search and Data Mining. WSDM ’13. Rome, Italy: ACM. 687–696.
【8】Wu, W., Z. Lu, and H. Li (2013b). “Learning bilinear model for matching
queries and documents”. Journal of Machine Learning Research. 14(1): 2519–2548. url: http://dl.acm.org/citation.cfm?id=2567709. 2567742.
【9】Bai, B., J. Weston, D. Grangier, R. Collobert, K. Sadamasa, Y. Qi, O. Chapelle, and K. Weinberger (2009). “Supervised semantic indexing”. In: Proceedings of the 18th ACM Conference on Information and Knowledge Management. CIKM ’09. Hong Kong, China: ACM. 187– 196.

热门文章

暂无图片
编程学习 ·

exe4j详细使用教程(附下载安装链接)

一、exe4j介绍 ​ exe4j是一个帮助你集成Java应用程序到Windows操作环境的java可执行文件生成工具,无论这些应用是用于服务器,还是图形用户界面(GUI)或命令行的应用程序。如果你想在任务管理器中及Windows XP分组的用户友好任务栏…
暂无图片
编程学习 ·

AUTOSAR从入门到精通100讲(126)-浅谈车载充电系统通信方案

01 引言 本文深入研究车载充电系统策略,设计出一套基于电动汽车电池管理系统与车载充电机的CAN通信协议,可供电动汽车设计人员参考借鉴。 02 电动汽车充电系统通讯网络 电动汽车整车控制系统中采用的是CAN总线通信方式,由一个整车内部高速CAN网络、内部低速CAN网络和一个充电…
暂无图片
编程学习 ·

CMake(九):生成器表达式

当运行CMake时,开发人员倾向于认为它是一个简单的步骤,需要读取项目的CMakeLists.txt文件,并生成相关的特定于生成器的项目文件集(例如Visual Studio解决方案和项目文件,Xcode项目,Unix Makefiles或Ninja输入文件)。然…
暂无图片
编程学习 ·

47.第十章 网络协议和管理配置 -- 网络配置(八)

4.3.3 route 命令 路由表管理命令 路由表主要构成: Destination: 目标网络ID,表示可以到达的目标网络ID,0.0.0.0/0 表示所有未知网络,又称为默认路由,优先级最低Genmask:目标网络对应的netmaskIface: 到达对应网络,应该从当前主机哪个网卡发送出来Gateway: 到达非直连的网络,…
暂无图片
编程学习 ·

元宇宙技术基础

请看图: 1、通过AR、VR等交互技术提升游戏的沉浸感 回顾游戏的发展历程,沉浸感的提升一直是技术突破的主要方向。从《愤怒的小鸟》到CSGO,游戏建模方式从2D到3D的提升使游戏中的物体呈现立体感。玩家在游戏中可以只有切换视角,进而提升沉浸…
暂无图片
编程学习 ·

flink的伪分布式搭建

一 flink的伪分布式搭建 1.1 执行架构图 1.Flink程序需要提交给 Job Client2.Job Client将作业提交给 Job Manager3.Job Manager负责协调资源分配和作业执行。 资源分配完成后,任务将提交给相应的 Task Manage。4.Task Manager启动一个线程以开始执行。Task Manage…
暂无图片
编程学习 ·

十进制正整数与二进制字符串的转换(C++)

Function one: //十进制数字转成二进制字符串 string Binary(int x) {string s "";while(x){if(x % 2 0) s 0 s;else s 1 s;x / 2;}return s; } Function two: //二进制字符串变为十进制数字 int Decimal(string s) {int num 0, …
暂无图片
编程学习 ·

[含lw+源码等]微信小程序校园辩论管理平台+后台管理系统[包运行成功]Java毕业设计计算机毕设

项目功能简介: 《微信小程序校园辩论管理平台后台管理系统》该项目含有源码、论文等资料、配套开发软件、软件安装教程、项目发布教程等 本系统包含微信小程序做的辩论管理前台和Java做的后台管理系统: 微信小程序——辩论管理前台涉及技术:WXML 和 WXS…
暂无图片
编程学习 ·

树莓派驱动DHT11温湿度传感器

1,直接使用python库 代码如下 import RPi.GPIO as GPIO import dht11 import time import datetimeGPIO.setwarnings(True) GPIO.setmode(GPIO.BCM)instance dht11.DHT11(pin14)try:while True:result instance.read()if result.is_valid():print(ok)print(&quo…
暂无图片
编程学习 ·

ELK简介

ELK简介 ELK是三个开源软件的缩写,Elasticsearch、Logstash、Kibana。它们都是开源软件。不过现在还新增了一个 Beats,它是一个轻量级的日志收集处理工具(Agent),Beats 占用资源少,适合于在各个服务器上搜集日志后传输给 Logstas…
暂无图片
编程学习 ·

Linux 基础

通常大数据框架都部署在 Linux 服务器上,所以需要具备一定的 Linux 知识。Linux 书籍当中比较著名的是 《鸟哥私房菜》系列,这个系列很全面也很经典。但如果你希望能够快速地入门,这里推荐《Linux 就该这么学》,其网站上有免费的电…
暂无图片
编程学习 ·

Windows2022 无线网卡装不上驱动

想来 Windows2022 和 windows10/11 的驱动应该差不多通用的,但是死活装不上呢? 搜一下,有人提到 “默认安装时‘无线LAN服务’是关闭的,如果需要开启,只需要在“添加角色和功能”中,选择开启“无线LAN服务…
暂无图片
编程学习 ·

【嵌入式面试宝典】版本控制工具Git常用命令总结

目录 创建仓库 查看信息 版本回退 版本检出 远程库 Git 创建仓库 git initgit add <file> 可反复多次使用&#xff0c;添加多个文件git commit -m <message> 查看信息 git status 仓库当前的状态git diff 差异对比git log 历史记录&#xff0c;提交日志--pret…
暂无图片
编程学习 ·

用Postman生成测试报告

newman newman是一款基于nodejs开发的可以运行postman脚本的工具&#xff0c;使用Newman&#xff0c;可以直接从命令运行和测试postman集合。 安装nodejs 下载地址&#xff1a;https://nodejs.org/en/download/ 选择自己系统相对应的版本内容进行下载&#xff0c;然后傻瓜式安…
暂无图片
编程学习 ·

Java面向对象之多态、向上转型和向下转型

文章目录前言一、多态二、引用类型之间的转换Ⅰ.向上转型Ⅱ.向下转型总结前言 今天继续Java面向对象的学习&#xff0c;学习面向对象的第三大特征&#xff1a;多态&#xff0c;了解多态的意义&#xff0c;以及两种引用类型之间的转换&#xff1a;向上转型、向下转型。  希望能…