DeepRank(17’CIKM)

在这里插入图片描述

  DeepRank: A New Deep Architecture for Relevance Ranking in Information Retrieval
   htps://github.com/pl8787/textnet-release.

Motivation

人类判断文本匹配过程:

  1. 检测相关位置
  2. 确定局部相关性
  3. 聚集本地相关性以输出相关性标签

DeepRank模拟上述人类判断过程。

问题定义

查询: q q q = ( w 1 w_1 w1, . . . , w M w_M wM)
文档: d d d = ( v 1 v_1 v1, . . . , v N v_N vN)
文档中的上下文: d d d( k k k) [ _[ [ p _p p ] _] ]=( v v v p _p p − - k _k k,…, v v v p _p p,…, v v v p _p p + + + k _k k),以第一个单词为中心,序列长度为2k + 1。
词嵌入:Word2Vec

DeepRank

三部分:Detection Strategy + Measure Network + Aggregation Network
在这里插入图片描述

Detection Strategy

相关性位置通常在查询词出现在文档中的位置上。将 query-centric 上下文定义为相关位置,这是一个在中心位置带有查询terms的上下文。
给定一个查询 q q q 和文档 d d d , 如果 w u w_u wu= v p v_p vp , 以该查询术语 w u w_u wu 为中心的上下文表示为 s s s p ^p p u _u u( k k k) = d d d( k k k) [ _[ [ p _p p ] _] ]。在Detection步骤之后,可以获得一组单词序列 s s s p ^p p u _u u( k k k),每个单词序列代表一个本地相关位置。

Measure Network

如图2所示。首先构造一个张量作为输入。在张量上应用CNN或2D-GRU来输出向量,该向量代表局部相关性的表示。这样,在Measure步骤中可以很好地捕获重要的IR特征,例如exact/semantic匹配信号、 passage retrieval intrinsics和 proximity heuristics。
在这里插入图片描述

Input Tensor

给定一个查询q,和对应文档的上下文( w u w_u wu= v p v_p vp ): s s s p ^p p u _u u( k k k)
首先构建word-level交互矩阵S(相似度函数):
在这里插入图片描述
为了进一步将query/query-centric 的上下文的单词表示结合到input中,将 S S S i _i i j _j j的每个元素扩展到三维向量。因此,原始矩阵 S S S i _i i j _j j将变成三阶张量,表示为:
在这里插入图片描述

这样,输入张量可以被视为三个矩阵的连接:query matrix, query-centric context matrix, and
word-level interaction matrix.

CNN处理

一层CNN + max pooling
在这里插入图片描述
输出(K是kernel的数量)表示局部相关性:
在这里插入图片描述

2D-GRU处理(接受3个方向隐藏状态)

在这里插入图片描述

4个update gates 3个reset gates
在这里插入图片描述
在这里插入图片描述

Aggregation Network

对于CNN或者2D-RNN的输出 h h h , Aggregation Network 考虑原则:

  1. 查询词的重要性

查询词对于表达用户的信息需求至关重要,有些词比其他词更重要。

  1. 不同的匹配要求

匹配模式的分布在相关文档中可能有很大不同。

方法:首先进行了一个查询词级聚合,其中考虑了不同的匹配要求。当产生全局相关性分数时,应用术语gate网络来捕获不同术语的重要性。

Qery Term Level Aggregation

将位置指示符附加到每个向量 h h h,以编码相应的以查询为中心的上下文的位置信息。Aggregation Network中使用了不同的位置函数 g g g( p p p ):
在这里插入图片描述
其中 p p p代表以查询为中心的上下文的位置,由查询对应文档的中心单词 v p v_p vp决定。在这个附加操作之后,以单词 v p v_p vp为中心的以查询词的上下文的局部相关性表示变成
在这里插入图片描述
为了进行查询词级聚合,首先将具有相同中心词的 h h h( p p p)分组在一起,这代表关于相同查询词的所有局部相关。然后 RNN用于通过考虑位置信息来整合这种本地相关性。也就是说可以获得每个查询词 w u w_u wu的global相关性
在这里插入图片描述
其中 P P P( w u w_u wu)表示以查询术语为中心的所有以查询为中心的上下文的位置集。

Term Gating Network for Global Aggregation.

基于查询词级的全局相关性表示,通过考虑不同查询词的重要性,本文使用一个term gating network(类似于DRMM使用的网络)来获得最终的全局相关性得分。为每个查询词定义了一个权重参数 E E E w w w u _u u,并将所有查询词的级别相关度线性组合如下:
在这里插入图片描述

I I I为值全为1的向量,和 E E E w w w u _u u维度相同。

Model Training

Adam+L2+early stopping strategy
pairwise hinge loss:
在这里插入图片描述

实验

data Sets

LETOR4.0 and 搜狗查询日志

结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43390809/article/details/111866255
17