循环神经网络

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

提示:这里可以添加本文要记录的大概内容:

许多使⽤循环⽹络的例⼦都是基于⽂本数据的,因此我们将在本章中重点介绍语⾔模型。在对序列数据进⾏ 更详细的回顾之后,我们将介绍⽂本预处理的实⽤技术。然后,我们将讨论语⾔模型的基本概念,并将此讨 论作为循环神经⽹络设计的灵感。最后,我们描述了循环神经⽹络的梯度计算⽅法,以探讨训练此类⽹络时 可能遇到的问题。


提示:以下是本篇文章正文内容,下面案例可供参考

1. 序列模型 

        输入或者输出中包含有序列数据的模型叫做序列模型。 以循环神经网络RNN为基础建立的序列模型在自然语言处理,语音识别等领域中引起了巨大的变革。
 

1.1统计工具

        处理序列数据需要统计工具和新的神经网络架构

        例:预测股票

        

图1

         其中xt(时间t时的价格)表示价格,即通过前t-1个时间的股票预测t时间的股票

               x_{t}\sim p(x_{t}|x_{t-1}...x_{1})

1.2自回归模型

        用自己的预测的数据再次预测。

2. 文本预处理

2.1 读取数据集

       定义函数:read_time_machine() 将整篇文章按照行进行读取。

2.2词元化

        定义函数:tokenize() 可以将每一行句子组成的单词逐个拆分,放入列表中

2.3词表

语料(corpus):将整篇文章词元化并进行唯一统计,其统计结果称为语料。

词表:基于语料的统计结果,赋予索引(将出现频率最多的依次赋为0、1...)得到词表。

2.4整合函数

将之前定义的函数进行整合得到:load_corpus_time_machine()

该函数最终返回corpus和vocab

3. 语言模型和数据集  

        长度为T的文本序列X;

        ①将序列X词元化

                ==>得到词元依次为\bg_white x_{1},x_{2},...,x_{T}(其中x_{t}可以认为是在时间步t处的观测或者标签)

        ③语言模型

                估计序列的联合概率分布

P(x_{1},x_{2},...,x_{T})

3.1学习语言模型

P(x_{1},x_{2},...,x_{T})=\prod_{t=1}^{T}P(x_{t}|x_{1},x_{2},...,x_{t-1})

例如包含四个单词的文本序列的概率:

其中:

3.2马尔科夫模型与n元语法

3.3读取长序列数据

        序列过长而无法被模型一次性全部处理时,为了方便起见将模型拆分成较短的序列进行读取。

3.3.1随机采样

        每次采样时,起始位置不同所以每次的采样结果均不相同,随机采样是将上图中分割的每一行数据顺序打乱。例如:每个小批量是两个序列,则第一个小批量为1,5行序列;第二个小批量为3,4行序列。

3.3.2顺序采样

        例如:每个小批量是两个序列,则第一个小批量为1,4行序列;第二个小批量为2,5行序列。

4. 循环神经网络

        参数初始化时

图4.1循环神经网络二维平面图

Xt-1输入的大小为三,即每个小序列是一个长度为3的向量;

纵向有三个神经网络,即时间步长为3; 

图4.2循环神经网络三维立体图

图4.3循环神经网络的主要类别

4.1循环神经网络的参数更新

        假设开始隐藏层之前的记忆初始化为0;初始化权重均为1

        ①当输入向量[1 1]时,模型的更新如下所示:

图4.4循环神经网络相邻时间间的运算规则

        ②再次输入向量[1 1]时,模型的更新如下所示:

图4.5循环神经网络相邻时间间的运算规则

        持续更新...

        

图4.6循环神经网络相邻时间间的运算规则

引入RNN: 其中X^{1} 是经过独热编码的向量,a^{1}也为向量

图4.7循环神经网络整体的运算原理

对比当目标词汇前一个时间的记忆不同时候会导致输出也不同:

图4.8循环神经网络的预测原理

5. 循环神经网络的从零开始实现

6. 循环神经网络的简介实现

7.代码解释说明

通过时间反向进行传播


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值