深度学习-NLP应用

语言模型的核心思想是按照特定的训练方式,从语料中提取所蕴 含的语言知识,应用于词序列的预测。
包括 基于规则的语言模型 和 统计语言模型
•统计语言模型处于主流地位,通过对语料库的统计学习,归纳出 其中的语言知识,获得词与词之间的连接概率,并以词序列的概 率为依据来判断其是否合理。

序列S={w1,w2,w3…}的概率就是:
在这里插入图片描述
这样后面就是指数级增长,所以后面考虑N-gram,只考虑当前词的前n-1个单词。
在这里插入图片描述
这时会出现零概率事件:在这里插入图片描述
因为首个没有出现过。此时使用数据平滑来解决这个问题。
基本思想:调整最大似然估计的概率值,使零概率增值,使非零概率下调, “劫富济贫”,消除零概率,改进模型的整体正确率。
满足约束在这里插入图片描述
数据平滑的方法:
•加法平滑(additive smoothing):每种情况的出现次数增加一个固定值。
•折扣平滑(discounting smoothing):修改实际发生次数,使得不同情况 发生概率总和小于1,剩余概率平均分给未出现的情况。
•删除插值(deleted interpolation): 用低阶模型估计高阶模型,并将它们进 行加权。
•Kneser-Ney平滑:前是标准和最先进的平滑技术,它是上述技术的综合。

前馈神经网络

缺点:参数过多,只能用前n个词来预测。
在这里插入图片描述

循环神经网络

输入:t-1时刻的历史状态ht-1,t时刻的输入wt
输出:t时刻的历史(状态)ht,下一个词的概率
在这里插入图片描述
缺点:理论上可以记住全部的历史信息,但是由于梯度消失和梯度爆炸,不具备长期依赖的能力。
解决:有选择的保留和遗忘t时刻的信息。

LSTM

具备处理长期依赖的能力

在这里插入图片描述
在这里插入图片描述

目前最先进的语言模型完全基于注意力机制!!
右边的结构是左边的细化
在这里插入图片描述

机器翻译

SOS一般代表开始, EOS代表结束
思想简单
encoder-decoder模型 也称作 seq2seq模型
基本思想利用RNN读取句子,编码到固定维度的向量,再用另一个RNN读取向量,解码为目标语言。(encoder成向量)

统计翻译的模型:训练步骤:预处理——词对齐——短语对齐——抽取短语特征——训练语言模型——学习特征权重

解码器的结构与语言模型几乎相同,输入词向量,输出softmax概率,损失函数log perplexity
在这里插入图片描述
解码过程用贪心算法取概率最大的。

引入注意力机制,因为数据句子较长的时候,上述seq2seq无法存储。
注意力机制(Attention)允许解码器随时查阅输入句子中的部 分单词或片段,因此不再需要在中间向量中存储所有信息。

最原始的注意力机制在encoder部分使用双向RNN
前向的RNN正向读取输入的序列,并计算前向隐藏层状态
后向RNN反向读取输入序列,并计算反向隐藏层状态
对于每个单词,把他的前向隐藏状态向量和后向隐藏层向量拼接起来。在这里插入图片描述
Decoder中第i阶段输入的上下文信息𝑐来自于所有ℎ对 𝑎ij的加权之和。c1翻译“I”,和“我”最相关,a11的值应该比较大,相应的a12,a13,a14应该较小aij是模型自动学习的,h1’是取决于Decoder的i-1阶段的隐状态,Encoder第j个阶段的隐状态。
在这里插入图片描述
工作原理:
在这里插入图片描述计算变种:在这里插入图片描述

对偶学习

可以解决大量预料标注的问题。只需要部分标注。
强化学习-策略梯度的方法
基本方法就是先通过模型翻译成一种语言,在通过另一个模型将上述得到的翻译回来,在通过此时的翻译与原始输入两者的相似度和误差,取最大似然,在重新生成句子。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

机器阅读理解

形式:
完型填空 。代表数据集有CNN/Daily Mail。

多项选择 代表数据集有 RACE。

区域预测 :也称为抽取式问答(Extractive QA),即给定文章和 问题,机器需要在文章中找到答案对应的区域(span),给出开 始位置和结束位置。代表数据集有SQuAD(Stanford Question Answering Dataset)。
•SQuAD1.1 paper:SQuAD:100000+ Question for Machine Comprehension of Test
•SQuAD2.0 paper: Know What You Don’t Know: Unanswerable Questions for SQuAD
•Website:https://rajpurkar.github.io/SQuAD-explorer/

MRC数据集:
•MS MARCO:Microsoft MAchineReading Comprehension •Paper:MS MARCO: A Human Generated MAchineReading COmprehensionDataset •Website: http://www.msmarco.org/ MRC数据集

•DuReader:百度阅读理解数据集 •Website: http://ai.baidu.com/broad/introduction?dataset=dureader

自由形式:不限定问题所处的段落,即一个问题可能是需要理解 多个段落甚至多篇文章。代表数据集有DuReader(百度),MS MARCO(微软)。

问答型MRC框架

两个输入,左边是问题,右边是文档。向量化-编码-交互-答案

在这里插入图片描述*向量层,将问题和原来映射为向量

编码层,使用RNN编码,编码后每个词的向量表示就蕴含了上下文信息

交互层:分析问题和原文之间的交互关系,输出编码的问题的原文表示即query-aware原文表示:双交互层结构,第一层基于门限的注意力循环神经网络匹配 问题和原文 的相关段落表示;第二层基于自匹配注意力机制的循环神经网络 将原文与自己匹配,实现整个段落的高效编码。

答案层:基于query-aware的原文表示预测答案范围*

在这里插入图片描述

预训练模型 - 效果好

思路:在大规模的语料库进行预训练,学习语法、句法、语言逻辑、先验知识;针对不同的任务进行fine-tuning

模型包括ELMO,GPT,BERT,GPT2.0
可以看到就是之前的信息与后面的联系的区别。

在这里插入图片描述

Google BERT
•Website •https://github.com/google-research/bert(Tensorflow) •BERT PyTorch实现 •https://github.com/huggingface/pytorch-pretrained-BERT

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值