(2019)CS224N Lecture 6 Language Models and RNNs 笔记 (1)

Language Models

给定前t个单词预测下一个单词的可能性

在这里插入图片描述
给定文本包含T个单词,可以说这个文本的概率如下
在这里插入图片描述

n-gram Language Models

在这里插入图片描述
通过计数得到n-gram的概率和(n-1)-gram的概率
在这里插入图片描述

稀疏问题 the sparsity problem

1.上面的分式,对于某些单词count为0,概率论中的平滑度(?)
2.分母为0,无法计算,语料库中没有students opened their,应该back off,只看opened their,从4-gram back off to 3-gram
注意:N越大,稀疏问题会更坏

A neural Language Model

3-gram得到的文本是无意义的,我们想要一次考虑更多的单词
回顾语言模型的任务:
在这里插入图片描述
固定窗口的神经语言模型,由下到上
在这里插入图片描述
优点:
1.没有稀疏问题
2.不需要存储所有观测的n-grams
缺点:
1.固定窗口太小
2.扩大窗口会使权重矩阵W增大
所以窗口不可能足够大,会丢失一些信息
3.x1,x2对应的权重是不同的,所以在某一部分学到的知识并没有与其他部分结合

所以我们需要一个能够处理任意长度的输入的神经架构~

Recurrent Neural Networks(RNN)

1.任意长度的输入
2.一系列隐藏状态,区别于之前的模型只有一个隐藏状态,每一个隐藏状态都基于前一步的隐藏状态和当前的输入,可以认为这一系列的隐藏状态,都是随着时间变化的单一状态,就像是同一事物的不同版本,所以也叫time-steps.
核心理念就是,把相同的权重矩阵,应用到每一个time-step.
这样,每一个x就不是上一个模型中不同的权重
3.可选择的输出,输出可不计算,也可只计算一部分,取决于你的目标
在这里插入图片描述

RNN语言模型,注意隐藏状态的计算方法

在这里插入图片描述
RNN优点:
1.处理任意长度的输入
2.step t 利用了之前几步输入的信息,理论上
3.模型规模没有因为更长的输入而更大
4.相同的权重,更有效率
缺点:
1.计算需要很长时间,隐藏状态的计算每一状态都需要上一状态,所以每个状态不能并行计算
2.在实践中,很难获取之前steps的信息,尽管记住了the proctor and the clock(不知道是什么qwq),用它们去预测下一个单词,所以这里介绍的这个RNN事实上没有达到预期
接下来会介绍更多关于这些缺点的详细知识,以及如何解决。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值