Deep Learning Powered In-Session Contextual Ranking using Clickthrough Data

在这里插入图片描述

IDEA

用户与搜索引擎的交互提供了许多线索,可以利用这些线索通过个性化来提高搜索结果的相关性。上下文信息(查询历史、单击的文档等)提供了有关用户搜索意图的强烈信号,可用于个性化搜索体验和改进web搜索引擎。

问题

  1. 当前搜索引擎采用“AveQueryOverlap”,它计算当前会话中连续查询对之间的token重叠。缺少从历史查询和当前查询中获得的一些语义信息。
  2. 检查是否具有以前查询中的一些域特征,例如一个用户在上个月发布的所有查询;它还包含一些关于用户点击行为的分布信息,以反映用户的域偏好,但并不严格与用户的搜索满意度相关联。
    例子:
    在这里插入图片描述
    查询2和查询6之间的区别在于在查询6中添加了“wiki”这一术语。在查询2中,相应的Wikipedia页面被单击为不满意的单击(表中为红色),在这种情况下,最好将Wikipedia页面从第6个查询的第一个位置降级,因为在查询2中,它被检查为不满意的页面,而实际上,位于第6个查询的第二个位置的wikia页面是满意的从用户日志中单击(表中的蓝色)。因此,最好提升wikia页面在排名结果中的位置。

Approach

Problem Definition

在session中,用户可以与搜索引擎进行多次交互。在交互过程中,用户会根据过去的搜索经验修改自己的查询。因此,对于当前的查询 Q Q Q(除了搜索会话中的第一个查询),有一个查询历史 Q 1 Q_1 Q1 Q 2 Q_2 Q2、…、 Q M Q_M QM与之关联。对于每一个历史查询,都有一些带有多重信息的点击网址,即停留在该页面上的时间。因此,当前查询的上下文通常包含 Q Q Q之前询问的查询以及用户单击或跳过的那些查询的答案(url)。对于时间 t t t的session中的查询 Q t Q_t Qt,将 Q t Q_t Qt的上下文限制为同一session中 Q t Q_t Qt之前询问的查询 Q i Q_i Qi和用户单击或跳过的 Q t Q_t Qt的答案。实际上,现实世界中的日志数据通常是嘈杂的,包含了大量的“快速回复”查询(用户在短时间内或连续发出相同的查询),本文建议忽略这些快速返回查询。图1说明了这个问题。定义:

  1. Q 1 Q_1 Q1 Q 2 Q_2 Q2、…、 Q M Q_M QM是一个session中的历史查询; Q Q Q是当前查询。

  2. u u u i _i i 1 _1 1, u u u i _i i 2 _2 2,…, u u u i _i i n _n n是查询 Q i Q_i Qi的一个Impression page中的url;它包含满意的(简称sat)或不满意的(“unsat”)单击,或两者都包含。(Impression page是搜索引擎返回的一个搜索结果页面,通常包含10个URL;sat click是指在30秒或更长时间内没有再单击的单击,或者是会话中最后一次单击结果;unsat click是指用户单击该URL并在该页面上停留不到30秒;而且在一个Impression page中也有许多被跳过的页面。)

  3. u u u 1 _1 1, u u u 2 _2 2,…, u u u n _n n根据当前的排名算法,当前查询 Q Q Q的Impression page中的url;

     CDSSM目标是根据session内历史查询和点击数据重新排名u1,u2,...,un。
    

Fine-Grained Features细粒度特征

以前的session查询和点击数据可以被视为当前查询的上下文信息。将来自用户session内历史查询的上下文信息建模为一个“global局”组件(即query-level,它们不具有URL区分性,包括来自session内先前查询的一些sat/unsat点击和URL统计信息)和“local”相关组件(即URL-level,包括sat点击的URL到当前URL的平均距离,之前sat点击的URL到当前URL的最小距离等,具有URL区分性)。
一般的方法是隐式地将上下文信息表示为特征向量,然后训练ranker在这些特征上发现表示相关性的特征值。表2给出了表示上下文信息和用户web搜索行为的不同层次结构。包括两类:语义特征和基于点击的特征。
在这里插入图片描述

  1. 语义特性度量以前的查询、单击的当前查询的url和语义级别的url之间的相似性。它们都是URL级别的,可以区分不同的URL。
  2. 基于点击的特征对web搜索中的用户交互行为和内容偏好进行编码,如满意点击数、域满意点击数等。

Semantic Features Calculation

  1. dis( Q t Q_t Qt Q Q Q):查询 Q t Q_t Qt Q Q Q之间的距离。
  2. dis( u u u i _i i t _t t u j u_j uj):查询 Q t Q_t Qt的第 i i i个URL与查询 Q Q Q的第 j j j个URL之间的距离。
  3. dis( Q t Q_t Qt u j u_j uj):查询 Q t Q_t Qt与查询 Q Q Q的第 j j j个URL之间的距离。

三个已提出的模型

XCode基于大量数据(Query, URL, Title, Docs etc)进行训练,将每个单词、查询和URL映射到一个固定大小的潜在意图空间。每个URL、查询和单词都有一个唯一的512位XCode,因此可以测量这个意图空间中的相似性。
在这里插入图片描述
DSSM:Deep-Structured Semantic Model是一种潜在的语义模型,它提供了一种在语义层次上对上下文信息进行编码的方法。它利用前馈神经网络将高维稀疏文本(即查询、文档)映射到语义空间中的低维潜在特征。第一层为word-hashed,将词向量转换为 letter-trigram 向量,处理无限量的词汇量,提高模型的可扩展性;然后将word-hashed特征通过多层非线性投影进行投影,形成语义空间中的特征。最后,我们可以度量查询和url在语义空间中的相似性。

原理:将quary和document(使用document的标题)转换成bow向量形式,然后通过word hash变换得到低维向量,喂给MLP后得到的向量就代表quary和document的语义向量,然后计算两个向量的相似度,最后一层使用softmax做归一化计算概率,说白了就是用神界网络得到quary和document的表示向量,然后计算相似度.

在这里插入图片描述
CDSSM:卷积式深层结构语义模型可以捕捉到重要的单词n-gram级的上下文结构,而DSSM则将其视为一包单词(n-gram)。它们的区别是1)它有一个滑动窗口来捕捉单词的局部上下文信息。2) 卷积层将滑动窗口内的信息投影到局部上下文特征向量上。3) 最大池层提取最显著的局部特征,形成全局上下文特征向量。我们测量这个语义空间中的相似性。
在这里插入图片描述

Click-Based Features

在这里插入图片描述

实验

最终的目标是将这些来自session内的上下文特征合并到当前ranker中,对结果进行重新排序,以改善用户的搜索体验。两个实验。

  1. 第一种方法是手动标记一些数据。虽然手动标记的数据质量很好,但要扩展到一个真实世界的搜索引擎中,代价是高得令人望而生畏的。

  2. 第二种方法是从搜索日志中自动导出训练数据。在一组大量的真实用户查询和来自搜索引擎的点击日志数据上进行离线实验。

从原始的点击日志数据准备实验数据,并从搜索session创建特征数据。使用基线ranker返回的文档的原始排名位置作为特征,并在末尾附加新的上下文特征。由于新模型合并了原始搜索引擎的排名,所以称之为重新排名模型。重新排序方法的性能可以通过ranker是否将满意的点击搜索结果提升到更高的位置,以及是否将不满意的点击的搜索结果降级到较低的位置来评估。用15天的原始日志数据生成特征数据,一周作为训练数据,一天作为验证数据,一周作为测试数据。为了进行评估,使用重新排名的列表的平均精度(MAP)来衡量性能。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43390809/article/details/108749175