读论文啦Learning to Match Using Local and Distributed Representations of Text for Web Search

信息检索任务关注点
  1. query和doc中的词精准匹配是很重要的说明query和doc相关性的信号,因此统计query和doc精准匹配次数的BM25模型还是能满足召回的最低要求;
  2. 不精准匹配的话需要靠语义匹配来解决,比如 宾馆和酒店在字面上不匹配,但语义上是很相关的。
  3. query在doc中的匹配位置不仅反映文档的潜在相关部分所在位置(例如标题、第一段、结束段落),而且还反映各个查询项匹配彼此的聚类程度。
信息检索任务VS NLP task(语义匹配)
  1. 一种观点认为:信息检索任务和 NLP 任务(语义匹配)是有很大区别的,前者更加注重精准怕匹配,而后者更注重学习到潜在语义信息
  2. 另一种观点认为:在语义空间能捕捉到query和doc之间某种相关性,因而将基于关键词和基于语义的匹配进行融合是最好的了
模型架构
  1. 基于精准匹配的local model
  • 1.1交互矩阵:X = DTQ,用来捕捉每个query和doc中每个term的精准匹配,其中,D,Q都是由one hot 向量组成的;Q(md*nq)和矩阵D(md*nd)
  • 1.2conv操作;
  • 1.3两层全连接层
  1. 基于语义匹配的 model
  •     不同于Local Model中对term进行one-hot编码,Distributed Model 用了基于n-graph 对每个term进行表示。本文中的n-graph 是基于trigraph 编码,对于每个term,对所有 1<=n< =G 的n-graphs 计数。然后用n-graph 频率矢量来表达这个term(长度md)。
  • 对这种基于字符的输入,先学习一系列的非线性转换,先卷积(md*3 的 卷积窗,300的滤波器尺寸),将3个连续term投影到一个300维向量,然后跨1个位置,投影接下来的3个term,依此类推。最终,卷积层生成维数为300×8的张量。对于文档,它生成维度300*998。
  •       max-pooling 层。对于query ,池化层的核维数为1*8。对于doc,维数为1*100。因此,对于query,得到300*1 的矩阵~Q。对于doc,得到300*899的矩阵~D。选择基于窗口的最大池策略,而不是CDSSM 采用的全局最大池策略,是因为基于窗口的方法允许模型区分文档不同部分中的匹配项。当处理长文档,尤其是包含许多不同主题的混合文档时,知道匹配位置的模型可能更适合。

 

 

posted @ 2020-12-21 18:00  打了鸡血的女汉子  阅读(251)  评论(1编辑  收藏  举报