李宏毅nlp学习笔记10:QA(Question answering)
1.QA的基本流程:
问题的答案可能是明确的,也可能是有变化的。
答案给出的方式,可能是一个词,或者是一个单个的句子,
获取知识的来源,可以使文本,声音,搜索,视频。
答案形式部分:
2.输出的答案就是一个单词:
15年的一个数据集:BABI
做法:
3.选择题:
4.要给出的答案就在给出的文本中:
SQUAD:是针对英文的。
DRCD:是针对中文的。
找哪个token当做答案开头的概率最大,哪个token当做答案结尾的概率最大。
5.Free Answer Generation:
答案不在文章中
一种特殊的情况是答案分布在文章的不同位置。
其他特殊情况如下图小黑体字所示:
6.用seq2seq产生一个model:
S-net:
7.QA还需要考虑的一个特殊的问题:
并不是所有的问题都是有答案的:
当遇到这些问题的应该,应该不回答:
bert的做法,在文章里面加入一个特别的token:NULL
也就是:句子中加入CLS的作用
其他模型,再训练一个决定问题能不能被回答的model:
还有的模型是把:问题,答案,文章 再一次的输入到另一个模型决定能否回答。
knowledge source 部分:
8.通过搜索引擎来查找问题的答案:
多个答案的话,需要评估每一个答案的可信度,选出正确的答案:
V-Net采用的方式是投票的方法:
9.还可以语音视频等,
过。
问题的类型:
10.Simple Questions:
使用: Query-to-context:
第二版本:Question不是单个的向量,每个都与knowledge source做一次attention,得到的结果进行处理(如max),
context-to-Query:
相关的经典的架构:R-net
把上述两个attention结合起来,Bi-directional Attention Flow:
11.bert之前有很多的模型:
过。
12.bert:
bert效果好的原因就是:
**不但有Context-to-query, Query-to-context, **
还有Self
13.Complex Question:Reasoning。
相关的语料:
14.Multiple-hop:
每次不是将直接提取到的答案直接输出,而是在进行更新的提取。
上述找答案的过程可以概括成如下的模型:
reasonet:让机器自己决定做几次上述的:
15.Graph Neural Network:
16.Dialog QA:
问题可能无法回答:
17.没有用bert的解决方式:
RNN:
self-attention:
18.使用bert家族的结果:
19.很奇怪的现象:
给模型看问题和文章进行训练。
只给模型看问题进行训练。
只给模型看文章进行训练。
只看文章有时竟然高于看问题和文章。
original是最原始的问题。
reduced:是做很简短的提问。
confidence:认为回答正确的概率。
竟然发现,reduced之后,分数有的上升了,有的只有稍稍的下降。
20.出现上述问题的原因是机器学错了特征,比如原来的语料中,一出现运动,答案基本上就是网球:
所以对语料进行如下改变:
李宏毅nlp学习笔记10:QA(Question answering)相关推荐
- 李宏毅nlp学习笔记06:Text Style Transfer
1.Text Style Transfer 可以把消极的消息变成积极的消息: 进行的应该是无监督的学习. 以把消极的句子转为积极的句子为例. G:模型是消极的模型转化为积极的模型 D:则应该能够判断转 ...
- 李宏毅NLP学习笔记,NLP模型LAS。
转自:http://t.zoukankan.com/yanqiang-p-13257228.html 语音识别模型: 语音识别模型主要分为两种,一种是基于seq2seq的,一种是基于HMM的. seq ...
- 李宏毅nlp学习笔记04:bert和它的好朋友们
1.当下追求的模型: 输入文本,训练使得模型可以读懂文本,然后根据不同的任务微调模型! 2.bert大家庭-芝麻街: 3.预训练: 把token用嵌入的向量表示. 针对英文系的前缀后缀等,有fastt ...
- 李宏毅nlp学习笔记12:DST(Dialogue State Tracking)
该任务所处的位置: 下图中红色框框框住的地方. 该任务很重要: DST具体做什么: 最后给出的结果一般是一个set: 一般key是提前给好的. value则会给出一个范围. key一般会分成domai ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (10)Tips for Deep Learning
台大李宏毅Machine Learning 2017Fall学习笔记 (10)Tips for Deep Learning 注:本博客主要参照 http://blog.csdn.net/xzy_thu ...
- 李宏毅深度学习笔记——呕心整理版
李宏毅深度学习笔记--呕心整理版 闲谈叨叨叨: 之前看过吴恩达的一部分课程,所以有一定理论基础,再看李宏毅的课程会有新的理解.我先以有基础的情况写完学习过程,后续再以零基础的角度补充细节概念(估计不会 ...
- 利用计算机技术实现对文本篇章,自然语言处理NLP学习笔记一:概念与模型初探...
前言 先来看一些demo,来一些直观的了解. 自然语言处理: 可以做中文分词,词性分析,文本摘要等,为后面的知识图谱做准备. 知识图谱: 还有2个实际应用的例子,加深对NLP的理解 九歌机器人: 微软 ...
- thinkphp学习笔记10—看不懂的路由规则
原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...
- SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传
SpringMVC:学习笔记(10)--整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...
最新文章
- 扶梯正确使用_乘坐自动扶梯解释CSS浮动
- 点击调用ajax,jQuery ajax在点击时调用,仅工作一次
- SAP:HANA为高性能数据分析保驾护航
- unity3d双面材质_unity3d 模型怎么双面显示?
- MFC控件编程之组合框跟列表框
- 好男人必看!女生的30条隐私……
- ios软件商店上架老被打回_一款APP上架苹果应用商店的流程,费用是多少?
- jieba(结巴)—— Python 中文分词
- java房屋出租系统
- 【线性代数】矩阵分解(Matrix Factorization)笔记:非负矩阵分解
- 2018年——不平凡的一年
- kappa一致性检验教程_诊断试验的一致性检验-Kappa
- 通信天线建模与MATLAB仿真分析,通信天线建模与MATLAB仿真分析代码
- Learning English in python
- Unity Prefabs 预设体
- ios 行间距和段落间距_如何在Microsoft Word中控制行间距和段落间距
- ThinkPHP5.0+七牛云SDK文件上传
- linux分区出现hfs,在Arch Linux上挂载HFS +分区
- Linux网络编程常用头文件解释
- 十月十日JavaScript基础3
热门文章
- php 会员 开源,会员组_POSCMS_PHP开源_迅睿CMS系统
- Kafka consumer多线程下not safe for multi-threaded access问题
- 农夫山泉(数据范围是亮点)
- 均值方差模型python_python实现资产配置(2)--Blacklitterman 模型
- c语言如何使回车后回到上一行,c++输出换行后如何回到上一行继续输出
- 总结2019,憧憬2020
- 笔记本电脑开wifi设置
- 一本通 1335:【例2-4】连通块
- JAVA基础(完结版)
- QT 如何计算中英文字符串的长度