PACRR: A Position-Aware Neural IR Model for Relevance Matching阅读笔记

文章目录

  • 前言
  • PACRR模型
    • 关联匹配
    • 深度检索模型
    • 损失函数
    • 实验
      • 训练集的选取
    • PACRR总结
  • Co-PACRR模型
    • 概述
    • 论文贡献点
    • 几个微小调整
    • 模型
      • Disambiguation
      • Cascade k-max pooling
      • Shuffling combination

前言

今天介绍两个模型——PACRR和Co-PACRR。

PACRR模型

模型主要分为两部分:

  1. 关联匹配组件,将每个query-document对转变为相似矩阵;
  2. 一个深度网络,以相似矩阵作为输入,生成query-document关联分数。

PACRR: A Position-Aware Neural IR Model for Relevance Matching阅读笔记_第1张图片

关联匹配

首先利用query-document相似矩阵对query-document关联匹配进行编码。
相似矩阵利用query和document的词向量余弦距离表示。

之后利用卷积操作提取n-gram特征。

预处理
对于query,将所有条目都padding到query集最长长度。
对于document有以下两种策略:

  1. PACRR-firstk
    就是设置超参文章长度k,截长补短。
  2. PACRR-kwindow
    设置一个超参n,表示每个文章片段(text snippets)的最大长度,也就是大小为n的窗口。
    计算每个窗口的平均相似度。这部分没看太懂,准备看看源码,看懂了回来补充。

深度检索模型

得到query-document相似矩阵之后,以此作为输入,利用卷积网络提取特征。
之后,利用max-pooling抽取strongest similarity cues。
最后,再利用rnn对特征进行聚合来预测全局query-document相关分数。

损失函数

pairwise max margin loss
在这里插入图片描述

实验

训练集的选取

使用2009-2014 TREC Web Track数据集。

TREC将文档分为junk pages (Junk), nonrelevance (NRel), relevance (Rel), high relevance (HRel), key pages (Key) and navigational pages (Nav)这6级。

在选取三元组时,将标签高于Rel的文档作为“高相关“文档,剩下的相关文档分到“相关”这一组。为了选取每一个三元组,抽取一个与训练集中组内文档数量成比例的概率相关的组作为样本组,然后随机抽取一个文档作为正样本 d + d^+ d+

如果选中的组是“高相关”文档组,则从“相关”组随机选取一个作为负样本 d − d^- d。如果选中的组是“相关”文档组,则从“不相关”组随机选取一个作为负样本 d − d^- d

这样选取数据集能更好地区分高相关和相关文档。

PACRR总结

DRMM模型采用的匹配直方图思想类似很多传统的检索模型,只考虑了词项,而忽略了文本位置信息。

PACRR先使用相似矩阵,之后用卷积网络提取词项之间的依赖关系,最后还利用RNN整合特征,比较好地保留了文本的位置信息。

Co-PACRR模型

概述

Co-PACRR模型是在PACRR模型基础上进行了改进。
Co-PACRR考虑上下文信息对匹配的作用。

论文首先讨论了没有考虑上下文信息可能导致的缺陷,之后提出a disambiguation component,cascade k-max pooling, a shuffling combination layer三种策略解决以上问题。
PACRR: A Position-Aware Neural IR Model for Relevance Matching阅读笔记_第2张图片
新加的三种成分:

  1. A disambiguation
    通过将突出的匹配信号与发生信号的局部文本窗口一起考虑,构建块来解决歧义的挑战。
  2. A cascade k-max pooling
    借鉴级联模型的思想,用此方法取代常规k-max pooling,使模型能够从关于匹配位置的信息中获益。这些位置信息和匹配信号一起被联合建模。
  3. A shuffling combination
    用于对模型进行正则化,从而忽略查询中词项的绝对位置。在组合前去除查询相关的上下文可以提高模型的泛化能力。

论文贡献点

  1. 利用上面提到的三种策略对PACRR模型进行改进,将匹配信号和本地及全局的上下文结合。新模型被叫做Co-PACRR。
  2. 与DRMM,K-NRM,DUET,MatchPyramid,PACRR等模型在Trec Web Track数据集上进行比较。

几个微小调整

  1. 将LSTM层换成了全连接,提高了训练速度同时训练效果差别不大。
  2. 损失函数做了改变。之前DRMM和PACRR都是用的max-margin loss:
    在这里插入图片描述
    Co-PACRR换成了交叉熵损失函数:
    在这里插入图片描述

模型

下面展开介绍之前提到的三个优化策略。

Disambiguation

作用:
在提取匹配信息时考虑局部上下文。

方法:
document中的每个词项,不只使用本身的词向量,而是考虑一个窗口内上下文的平均。
在这里插入图片描述
对于query,因为通常较短所以直接将所有词项的词向量相加取平均作为向量表 q u e r y v e c queryvec queryvec
则对于document每个位置 i i i,query和其上下文向量的相似得分为:
在这里插入图片描述

Cascade k-max pooling

作用:
对相关信息的位置进行编码,考虑全局上下文的作用。

方法:
不只在整个文档做k-max pooling,这里多了一个超参 n c n_c nc,表示划分的个数,比如 n c = 4 n_c=4 nc=4,就分别在[25%, 50%, 75%, 100%]范围做k-max pooling。

Shuffling combination

作用:
正则化查询相关的信息

方法:
在k-max pooling之后得到 P l q × ( l g n s ) P_{lq \times (l_gn_s)} Plq×(lgns),在PACRR模型中会对这里得到的特征进行聚合操作,Co-PACRR则是在聚合之前随机在行方向上shuffle。

你可能感兴趣的:(文本匹配论文阅读)