目录

介绍

事实问题

非事实问题

为什么我们关注 NLP 中的事实问题?

2 种关键方法

大纲

IR-based QA

基于 IR 的 事实(Factoid) QA:TREC-QA

问题处理

答案类型

检索

答案提取

如何?

MCTest

SQuAD

阅读理解

基于 LSTM 的模型

基于 BERT 的模型

为什么 BERT 比 LSTM 效果更好?

Knowledge-based QA

但是

语义解析

如何构建语义解析器?

Hybrid QA

Watson 核心理念

QA评估

最后


介绍

• 定义:问答(“QA”)是自动确定自然语言问题答案的任务
• 主要关注“事实”问题

事实问题

事实问题,有简短准确的答案。

非事实问题

一般的非事实问题需要更长的答案、批判性分析、总结、计算等。

为什么我们关注 NLP 中的事实问题?

• 他们更容易
• 他们有一个客观的答案
• 当前的 NLP 技术无法处理非事实的答案
• 对系统自动回答非事实问题的需求较少

2 种关键方法

• 基于信息检索的 QA
    ‣ 给定一个查询,搜索相关文档
    ‣ 在这些相关文档中查找答案
• 基于知识的QA
    ‣ 构建查询的语义表示
    ‣ 查询事实数据库以寻找答案

大纲

• IR-based QA
• Knowledge-based QA
• Hybrid QA

IR-based QA

基于 IR 的 事实(Factoid) QA:TREC-QA

1.使用问题去获得query,查询IR引擎
2. 查找文档,以及文档中的段落
3. 提取简答串

问题处理

• 找出有助于检索的问题的关键部分
    ‣ 丢弃非内容词/符号(wh-word、? 等)
    ‣ 制定为 tf-idf 查询,使用 unigrams 或 bigrams
    ‣ 识别实体并优先匹配
• 可以使用模板重新表述问题
    ‣ E.g. “Where is Federation Square located?”
    ‣ Query = “Federation Square located”
    ‣ Query = “Federation Square is located [in/at]”
• 预测预期答案类型(此处 = LOCATION)

答案类型

• 了解答案类型有助于:
    ‣ 找到包含答案的正确段落
    ‣ 查找答案字符串

• 分类处理
    ‣ 给定问题,预测答案类型
    ‣ 关键特征是问题的中心词
    ‣ 澳大利亚国徽上的动物是什么?
    ‣ 一般不难

检索

• 查找与查询匹配的前 n 个文档(标准 IR)
• 接下来查找这些文档中的段落(段落或句子)(也由 IR 驱动)
• 应包含:
    ‣ 问题关键字的许多实例
    ‣ 答案类型的几个命名实体
    ‣ 段落中这些术语的接近程度
    ‣ IR 引擎排名靠前
• 重新排列 IR 输出以找到最佳段落(例如,使用监督学习)

答案提取

• 找到问题的简明答案,作为文章的跨度

如何?

• 使用神经网络提取答案
• 又名阅读理解任务
• 但深度学习模型需要大量数据
• 我们是否有足够的数据来训练理解模型?

MCTest

• Crowdworkers 编写虚构的故事、问题和答案
• 500 个故事,2000 个问题
• 多项选择题

SQuAD

• 使用维基百科段落
• 第一组众包工作者提出问题(给定段落)
• 第二组众包工作者为答案贴上标签
• 15 万个问题(!)
• 第二个版本包含无法回答的问题

阅读理解

• 给定一个问题和上下文段落,预测答案跨度在段落中的开始和结束位置?

• 计算:
: 概率, 单词 i 是起始令牌
: 概率, 单词 i 是结束令牌

基于 LSTM 的模型

• 将问题标记提供给双向 LSTM
• 通过加权和聚合 LSTM 输出以产生 q ,即最终的问题嵌入

• 以类似的方式处理段落,使用另一个双向 LSTM
• 不仅仅是词嵌入作为输入
    ‣ 表示单词是否与疑问词匹配的特征
    ‣ POS 特征
    ‣ 加权问题嵌入:通过关注每个问题词产生

• {p1, . . . , pm} :来自双向 LSTM 的每个段落中单词的一个向量
• 计算每个单词的开始和结束概率:

基于 BERT 的模型

• 微调 BERT 以预测答案跨度

为什么 BERT 比 LSTM 效果更好?

• 它有更多的参数
• 它经过预先训练,因此在适应任务之前就已经“知道”语言
• 多头注意力是秘诀
• 自注意力架构允许在问题词和上下文段落之间进行细粒度分析

Knowledge-based QA

• 许多大型知识库
‣ Freebase、DBpedia、Yago 等
• 我们可以支持自然语言查询吗?


‣ 将“Ada Lovelace”与知识库中的正确实体链接以找到三元组(Ada Lovelace,出生年份,1815)

但是

• 将自然语言句子转换为三元组并非易事


• 实体链接也是一个重要组成部分
‣ 歧义:“洛夫莱斯是什么时候出生的?”
• 我们能否简化这两个步骤的过程?

语义解析

• 将问题转化为逻辑形式,直接查询知识库
    ‣ 谓词演算
    ‣ 编程查询(例如 SQL)

如何构建语义解析器?

• 文本到文本问题:
    ‣ 输入 = 自然语言句子
    ‣ 输出 = 逻辑形式的字符串
• 编码器-解码器模型(第 16 篇文章!)

Hybrid QA

• 为什么不同时使用基于文本和基于知识的资源进行 QA?
• IBM 的 Watson 赢得了游戏节目 Jeopardy! 使用各种资源来回答问题

Watson 核心理念

• 从基于文本和基于知识的来源生成大量候选答案
• 使用丰富多样的证据为他们评分
• 系统中的许多组件,大部分都经过单独培训

QA评估

• IR:返回匹配段落或答案字符串的系统的 MRR(平均倒数排名)
    ‣ 例如 系统为一个查询返回 4 个段落,第一个正确的段落是第 3 个段落
    ‣ MRR = ⅓
• MCTest:准确性
• SQuAD:字符串与黄金答案的精确匹配

最后

• 基于 IR 的 QA:搜索文本资源以回答问题
    ‣阅读理解:假设问题+段落
• 基于知识的 QA:搜索结构化资源以回答问题
• 热点领域:一直在创建许多新方法和评估数据集(叙事、QA、常识推理等)

OK,QA就倒这里了,辛苦观看,有问题随时评论哦!

第十八篇:Question Answering问答系统相关推荐

  1. 2021年安全生产工作总结及2022年思路计划(二十八篇)PPTX(附下载)

    摘要:2021年安全生产工作总结及2022年思路计划(二十八篇) 公众号:安全生产星球

  2. 实习日志_实习律师实习日志第十八篇(连载30篇)

    提供实习律师实习日记相关的文章资讯,希望我的分享能让您感到满意! 这个月接触最多的是人身损害赔偿的一些案件,交通事故.工伤的一些案件最多.起初,以为这些案件就是走走法律流程便可了事,最简单不过,可当完 ...

  3. 第六十八篇:从ADAS到自动驾驶(一):自动驾驶发展及分级

    作者:liaojiacai     邮箱: ljc_v2x_adas@foxmail.com 从ADAS到自动驾驶(一):自动驾驶的发展及分级 从今天起,我将根据自己所接触的ADAS和无人驾驶技术,来 ...

  4. “约见”面试官系列之常见面试题之第八十八篇之什么是vue生命周期(建议收藏)

    我们知道vue是一个构建数据驱动的 web 界面的渐进式框架,那么vue生命周期是什么呢?本篇文章就给大家来介绍一下vue生命周期的内容,希望可以帮助到有需要的朋友. vue生命周期是什么? Vue生 ...

  5. 第十八篇,Simulink with Git

    一.综述 本篇以MATLAB R2021b为基础讲解如何对Simulink模型做Git管理,mdl与slx均可. Git并非只能对手写代码做版本管理,它的应用十分广泛,囊括了各种使用编程语言编写的代码 ...

  6. SpringBoot第十八篇: 定时任务(Scheduling Tasks)

    这篇文章将介绍怎么通过spring去做调度任务. 构建工程 创建一个Springboot工程,在它的程序入口加上@EnableScheduling,开启调度任务. @SpringBootApplica ...

  7. WPF效果第一百七十八篇ItemsControl旋转

    在前面分享的几篇中咱已经玩耍了Popup.ListBox多选.Grid动态分.RadioButton模板.控件的拖放效果.控件的置顶和置底.控件的锁定.自定义Window样式.动画效果.Expande ...

  8. “约见”面试官系列之常见面试题第十八篇之深拷贝和浅拷贝得区别(建议收藏)

     壹 ❀ 引 如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力. 此篇文章中也会简 ...

  9. 【C++从青铜到王者】第十八篇:C++之多态

    系列文章目录 文章目录 系列文章目录 前言 一.多态的概念 1.多态的概念 二.多态的定义及实现 1.多态的构成条件 2.虚函数的认识 3.虚函数的重写 1.虚函数重写的两个例外之协变 2.虚函数重写 ...

最新文章

  1. 新书上市|鲁智深和镇关西是怎么吵起来的?
  2. debian 下配置common lisp环境
  3. Android开发-屏幕常亮的方法
  4. SAP登陆界面TITLE修改方法(Method of SAP Logon GUI Title Modification)
  5. leetcode 378. Kth Smallest Element in a Sorted Matrix | 378. 有序矩阵中第 K 小的元素(小根堆)
  6. android静态代码扫描,android 静态代码扫描
  7. 玩转SSRS第六篇---客户端报表进阶
  8. 1)机器学习基石笔记Lecture1:The Learning Problem
  9. MNIST手写数字数据集格式,如何读取MNIST数据集?
  10. Desktop imags
  11. html新建盒子,html+css 盒子模式展示(备查)
  12. java shiro教程_10 分钟快速上手 Shiro 新手教程
  13. 四核网络机顶盒芯片局势分析(开放市场):rk3128将会成为四核主流
  14. 理财趣事:要想财富滚滚来 先学普京打野猪
  15. 软件架构设计杂记: 好作品是改出来的,好的代码是不断重构打磨出来的, 心性是历经艰难困苦修炼出来的
  16. Pycharm十大常用快捷键
  17. Serverless 架构的 N 种可能,你 Pick 谁?
  18. 都说互联网很赚钱,真的?
  19. 浅析IPTV盒子和OTT盒子,如何选择?
  20. openMVS:极线校正Fusiello

热门文章

  1. 算法 | 动画+解析,轻松理解「Trie树」
  2. 解析深度神经网络背后的数学原理!
  3. 微软小冰作词又作曲,网友:要出道的节奏吗?
  4. 出门问问李志飞:小米让别人无路可走,我也要让它走起来没有那么方便
  5. 22岁复旦大学生拿下深度学习挑战赛冠军:明明可以靠脸吃饭,却偏偏要靠才华
  6. 为什么 HashMap 加载因子一定是0.75?而不是0.8,0.6?
  7. 一次 Jar 包升级引发的血案 amp; 解决
  8. 新网杯top1方案:手把手构建中文语音合成模型!
  9. 写给新手:2021版调参上分手册!
  10. GAN在产业和学术届的价值!