田利云 Learning to Reweight Terms with Distributed Representations
新闻来源:IR实验室       发布时间:2016/4/13 12:58:33

Learning to Reweight Terms with Distributed Representations

查询词的权重是信息检索中的一个基本问题,合理的权重能大幅度地改善检索的准确率。选择合理的权重的过程一般分为两步:用适当的方式表示查询,判断查询词对查询的贡献。这篇论文使用了神经网络语言模型中的分布式表示,将查询表示为向量,使用词向量为查询词构建特征,并为预测目标词权重构建了一个模型。

 

检索模型得分公式:

其中,f(t,D)是查询词t和文档D的匹配分数,w(t)查询词权重。

    二元独立模型(BIM):

其中,Rq是相关文档集,d是待排序文档,q是查询,ti是一个查询词,概率 P(t|Rq)提供了一种方式衡量查询词权重,它是一个查询独立的量。

选择词反馈权重作为目标词权重,它表示为:

其中Rq是查询q的相关集合,Rq,t 是Rq的包含查询词t的子集。

 

检索模型:

词袋模型(Bag-of-words,BOW):把文本当作词的无序集合,词的权重相同。

序列依赖模型(Sequential dependency model ,SD):把查询词分为单个词、二元组和近似表达式三种,为不同类型提供了基本权重,相同类型的形式有相同的权重。以查询apple pie recipe为例子,设置的权重如下:

 

本文中使用概率语言模型和BM25模型进行实验,结合权重它们的得分表达式如下:

概率语言模型:

BM25模型:

 

使用分布式词向量评估查询词的权重:

 

    blob.png

blob.png

以下是上面用到的字母的含义:

向量形式如下:
























 

求梯度:

  blob.png

 

当有一个新的查询词t*,它的特征向量是x*,我们就可以预测它的权重为:

把以上的这种方法命名为DeepTR,为一个新的查询预测权重的步骤为:

(1)     获取查询词的词向量

(2)     转化为特征向量

(3)     学习特征权重

(4)     使用sigmoid函数进行处理

使用查询词“apple pie recipe”为例子,两种检索模型结合DeepTR表示如下:

本文使用4个TREC测试集和3个Web Track数据集进行实验:

本文使用DeepTR对三种基本查询模型进行实验,包括: BOW(bag-of-words query model), SD(the original sequential dependency model)和WSD(the weighted sequential dependence model),主要观测指标为MAP(Mean Average Precision)和P@10(Precision at 10)

实验结果:

(1)DeepTR-BOW和DeepTR-SD使用语言模型的检索性能:

(2)DeepTR-BOW和DeepTR-SD使用BM25模型的检索性能:

(3) DeepTR-BOW和DeepTR-SD使用语言模型、不同的词向量维度的检索性能:

(4)使用语言模型对MAP值进行鲁棒性分析:

(5)DeepTR-SD使用不同相关性判断的检索性能:

(6) DeepTR-SD使用不同查询长度的检索性能:

结论和展望:

本文提出了使用深度学习中分布式表示学习查询词的权重,我们使用语言模型和BM25模型进行了大量的实验,实验证明我们提出的模型时间效率高,检索结果也很好。

还有一些方向可以做更多研究,一种扩展方法是通过平均词向量的组成为二元组和近似表达式构建向量,另一方面词向量对于识别查询扩展中的焦点词或待扩展词可能是有用的。