| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> NLP-阅读理解:机器阅读理解综述(Machine Reading Comprehension MRC)【完形填空、多项选择、抽取式(答案片段抽取)、生成式(自由作答)】 -> 正文阅读 |
|
[人工智能]NLP-阅读理解:机器阅读理解综述(Machine Reading Comprehension MRC)【完形填空、多项选择、抽取式(答案片段抽取)、生成式(自由作答)】 |
一、阅读理解概述所谓的机器阅读理解(Machine Reading Comprehension, MRC)就是给定一篇文章,以及基于文章的一个问题,让机器在阅读文章后对问题进行作答。 机器阅读理解(MRC)是一项任务,用于测试机器通过要求机器根据给定的上下文回答问题来理解自然语言的程度。早期的MRC系统是基于规则的,性能非常差。随着深度学习和大规模数据集的兴起,基于深度学习的MRC显著优于基于规则的MRC。 1、常见任务定义MRC 的常见任务主要有六个:完形填空、多项选择、片段抽取(答案抽取)、生成式(自由作答)、会话、多跳推理:
2、评价指标
二、阅读理解模型架构基于端到端神经网络的机器阅读理解模型大都采用如下图所示的嵌入层、编码层、交互层、输出层的 4 层架构: 1、嵌入层基于神经网络的机器阅读理解模型的第 1 个关键步骤就是将单词表示成高维、稠密的实值向量。 One-Hot 词向量表示方法最大的问题在于这种稀疏向量无法体现任何单词之间的语义相似度信息。 高维映射的词嵌入方法可以有效解决上述方法带来的问题,语义相似的单词可以在几何空间中被编码成距离相近的向量。 将嵌入级别细粒度化至字符级别、将静态单词向量变成上下文相关的动态向量或将单词本身的特征一起嵌入到词向量中,都会在一定程度上提高模型的性能。 1.1 字符嵌入字符嵌入用来获取一个单词在字符级别的向量表示,采用 char-level 的词向量能够在一定程度上缓解文本中出现未登录词(out-of-vocabulary,简称 OOV)的问题。 1.2 词嵌入词向量能够基于单词的分布式假设,从大规模无标签的文本语料库中学习获得。在机器阅读理解任务中,使用最多的是 Word2Vec、GloVe 以及 Fasttext 这 3 种单词级别的嵌入模型。
1.3 上下文嵌入将词的表征扩展到上下文级别,将每个单词表示为整个输入句子的函数映射,即根据当前的句子来体现一个词在特定上下文的语境里面该词的语义表示,使其动态地蕴含句子中上下文单词的特征,从而提高模型的性能。 目前较为流行的用于上下文级别嵌入的模型有 CoVe、ELMo 以及 BERT等预训练模型。
1.4 特征嵌入特征嵌入本质上就是将单词在句子中的一些固有特征表示成低维度的向量,包括单词的位置特征(position)、词性特征(POS)、命名实体识别特征(NER)、完全匹配特征(em)以及标准化术语频率(NTF)等等,一般会通过拼接的方式将其与字符嵌入、词嵌入、上下文嵌入一起作为最后的词表征。 2、编码层编码层的目的是将已经表示为词向量的 Tokens(词的唯一标记单位)通过一些复合函数进一步学习其内在的特征与关联信息。提取特征的本质就是在对样本进行编码。 2.1 循环神经网络(RNN/LSTM/GRU)循环神经网络是神经网络的一种,主要用来处理可变长度的序列数据。不同于前馈神经网络,RNNs 可以利用其内部的记忆来处理任意时序的输入序列,这使得它更容易处理机器阅读理解数据集中的问题和段落序列。 为了优化传统 RNN 模型的性能(例如解决 RNN 出现的梯度消失问题),研究者们提出了许多 RNN 的变体,其中比较著名且常用的变体有长短期记忆网络(long short-term memory,简称 LSTM)和门控循环单元(gatedrecurrent unit,简称 GRU)。在 MRC 甚至整个 NLP 领域的应用中,LSTM 是最具有竞争性且使用最为广泛的 RNN 变体,研究者们常用双 LSTM(BiLSTM)模型对问题 Q 和段落 C 进行编码。 2.2 卷积神经网络(CNN)使用 RNN 模型对问题 Q 和段落 C 进行编码时,会导致模型训练和推理的速度变得非常缓慢,这使得模型无法应用于更大的数据集,同时无法应用于实时系统中。 利用 CNN 模型善于提取文本局部特征的优点,同时采用自注意力机制来弥补 CNN 模型无法对句子中单词的全局交互信息进行捕捉的劣势。 实验结果表明:在不失准确率的情况下,Yu 等人提出的模型在训练时间上较先前的模型快了 3~13 倍。但总体而言,CNN 模型在 MRC 任务中仍使用较少。 3、交互层交互层是整个神经阅读理解模型的核心部分,它的主要作用是负责段落与问题之间的逐字交互,从而获取段落(问题)中的单词针对于问题(段落)中的单词的加权状态,进一步融合已经被编码的段落与问题序列。 3.1 注意力机制当段落和问题序列通过注意力机制后,神经阅读理解模型就能学习到两者之间单词级别的权重状态,这大大提高了最后答案预测或生成的准确率。 3.2 自注意力机制将一个序列自己与自己进行注意力学习,进而学习句子内部的词依赖关系,捕获句子的内部结构,以此来替代 RNN 模型对序列进行编码。 注意力机制的另一个优点是大大增强了模型的可解释性,能够让研究者们清楚地看到单词之间的关联程度。 4、输出层输出层主要用来实现答案的预测与生成,根据具体任务来定义需要预测的参数。
三、数据集四、神经网络模型参考资料:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 18:30:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |