模型结构

E P ( ⋅ ) E_P(·) EP​(⋅)将文本映射为 d d d维向量,并用它为文档集构建索引。
E Q ( ⋅ ) E_Q(·) EQ​(⋅)将问题映射为 d d d维向量,并用它检索 k k k个对应的文章。
定义相似性 s i m ( q , p ) = E Q ( q ) T E P ( p ) sim(q,p)=E_Q(q)^TE_P(p) sim(q,p)=EQ​(q)TEP​(p)

如何选择相似性?
实际上有很多种相似度量函数,但我们为了能够预先计算文档的表示,相似函数必须是可分解的。(可分解函数 f ( x , y ) f(x,y) f(x,y)可以表示为一些列函数的和: f ( x , y ) = ∑ i I u i ( x ) ∗ v i ( y ) f(x,y)=\sum^I_i{u_i(x)*v_i(y)} f(x,y)=∑iI​ui​(x)∗vi​(y))。
内积现在有很好的工具支持(FAISS)。
再经过实验搜索,发现内积几乎是最优解。因此确定了内积函数。

编码器 \quad 使用后两个独立的BERT模型分别表示问题编码器和文档编码器。
推理 \quad 在推理阶段用 E P E_P EP​将文章编码并用FAISS建立索引。

3.2 训练

将编码器训练为一个度量函数是度量学习的范畴(参考Metric learning: A survey.),它让相关的问题-文档对具有相近的表示。记文档为,其中q为问题,p为段落;带+表示正例,-表示负例。损失函数为

正负例 \quad 通常正例很容易选取,负例的选取是容易被人忽视的。好的负例对训练索引器至关重要。论文采用以下方法选择负例。

  • 随机
  • BM25
    由BM25计算而来,不包含答案但能很好匹配问题的文章。
  • Gold
    训练集中其他问题对应的文章。

实验给出的最优结果是使用batch内的gold负例和一个BM25负例。

batch内负例的计算 \quad 让 Q Q Q和 P P P表示一个batch中的问题嵌入和文章嵌入。 S = Q P T S=QP^T S=QPT表示相似矩阵,每一行都是一个问题与文章集的相似性向量。这样,在矩阵元素 S ( i , j ) S_{(i,j)} S(i,j)​中,当 i = j i=j i=j时为正例,否则为负例。这样可以方便处理。

实验参数

大数据上40轮,小数据集上100轮。 1 0 − 5 10^{-5} 10−5的学习率,Adam,预热线性调度,与0.1的dropout率。

transformers

  • DPRContextEncoder
    文档编码器。
  • DRPQuestionEncoder
    问题编码器。
  • DPRReader
    在DPR的基础上推出了一个端到端的检索、问答模型。输入问题、标题、文档,输出答案的首尾指针。

Dense Passage Retrieval for Open-Domain Question Answering相关推荐

  1. PullNet: Open Domain Question Answering with Iterative Retrieval on Knowledge Bases and Text 论文笔记

    PullNet: Open Domain Question Answering with Iterative Retrieval on Knowledge Bases and Text 2019年,E ...

  2. 【论文阅读】Dense Passage Retrieval for Open-Domain Question Answering

    Comment: EMNLP 2020 一句话总结 任务:开放域问答中的retriever,从海量文本中选出与问题接近的文本. 方法:采用正负样本对对比学习的方法,使得相关问题与文本对拉近,不相关的拉 ...

  3. 论文阅读Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering

    利用段落检索和生成模型进行开放域问答 ACL 2021 论文地址 摘要: 开放域问答的生成模型已被证明具有竞争力,无需借助外部知识.虽然这种方法很有前途,但它需要使用具有数十亿个参数的模型,这些参数的 ...

  4. 论文阅读Unsupervised Corpus Aware Language Model Pre-training for Dense Passage Retrieval

    密集文本检索的无监督语料库感知语言模型预训练 ACL2022 论文链接 摘要 最近的研究证明了使用微调语言模型(LM)进行密集检索的有效性.然而,密集检索器很难训练,通常需要经过精心设计的微调管道才能 ...

  5. Retrieval Question Answering paper

    目录 层级Transformer多文档摘要 Hierarchical Transformers for Multi-Document Summarization 检索辅助生成 REALM: Retri ...

  6. Retrieval Augmented Visual Question Answering with Outside Knowledge

    Paper name Retrieval Augmented Visual Question Answering with Outside Knowledge Paper Reading Note U ...

  7. 【CS224n】(lecture11)Question Answering

    学习总结 (1)陈丹琦讲到自己17年在DrQA问答系统,也算是领航人,将Open-domain (textual) question answering分为两部分:Retriever和Reader部分 ...

  8. 2019 年,智能问答(Question Answering)的主要研究方向有哪些?

    前言 自从小夕前不久推送了这篇<文本匹配打卡点总结>,收到了不少小伙伴对于问答方向的问题,其中问的最多的就是,求!更!多!论!文!好了,于是小夕就在万能的知乎上找到了这篇良心回答,分享给有 ...

  9. 智能问答(Question Answering)的主要研究方向

    非事实类问题 大多数研究关注于事实类问题,而非事实类问题的研究相对不足,包括数学类的问题.判断类的问题等. [EMNLP 2019] NumNet: Machine Reading Comprehen ...

最新文章

  1. 我如何查看要使用git推送的内容?
  2. 不能创建Outlook邮件的解决办法
  3. nefu 628 Garden visiting
  4. 根据二叉树写遍历序列
  5. SpringMVC-设置编码过滤器
  6. api如何使用_记录API:技术作家和工程师指南
  7. Icon+启动图尺寸
  8. python----动态规划
  9. java复习系列[4] - Java IO
  10. 运维成长日记:我是如何走上IT运维这条不归路的
  11. linux ruby作用域,Ruby 的作用域和作用域门
  12. RHEL 6和RHEL 7管理服务的区别
  13. Air202学习(3)AT指令开发示例
  14. VirtualBox虚拟机提示内存0x00000000不能为written问题
  15. Xcelsius2008系统
  16. 使用f031的SPI单引脚(MOSI)+DMA实现WS2812B三色灯的级联控制
  17. java时间加30天_java实现,怎么在当前时间往后推三十天
  18. 【笔记】编译Android版的Chrome手册
  19. delphi百度人脸搜索(支持人脸搜索、人脸库新增修改删除查询)
  20. 柱状图怎么设置xy轴_echarts图表x,y轴的设置

热门文章

  1. mysql列名小写_MySQL 表名/列名 大小写问题
  2. 上海社保证明怎么打印(方法)
  3. jieba分词原理 ‖ 词性标注
  4. Java: Date转sql date
  5. html5 collapse,关于css中的border-collapse
  6. Fragment ——第四步 传值
  7. Unity3d学习之路-牧师与魔鬼
  8. SQL中常见的几种连接方法-(内连接,左连接,右连接)
  9. 隧檤断面超欠挖放样步骤(5800)
  10. X86汇编的学习图书参考