循环神经网络

简介:

原文:https://zybuluo.com/hanbingtao/note/541458 

循环神经网络也可以画成下面这个样子:

双向循环神经网络

对于语言模型来说,很多时候光看前面的词是不够的,比如下面这句话:

我的手机坏了,我打算____一部新手机。

可以想象,如果我们只看横线前面的词,手机坏了,那么我是打算修一修?换一部新的?还是大哭一场?这些都是无法确定的。但如果我们也看到了横线后面的词是『一部新手机』,那么,横线上的词填『买』的概率就大得多了。

在上一小节中的基本循环神经网络是无法对此进行建模的,因此,我们需要双向循环神经网络,如下图所示:

 

深度循环神经网络

前面我们介绍的循环神经网络只有一个隐藏层,我们当然也可以堆叠两个以上的隐藏层,这样就得到了深度循环神经网络。如下图所示:

循环神经网络的训练

 

循环神经网络的训练算法:BPTT

BPTT算法是针对循环层的训练算法,它的基本原理和BP算法是一样的,也包含同样的三个步骤:

  1. 前向计算每个神经元的输出值;
  2. 反向计算每个神经元的误差项值,它是误差函数E对神经元j的加权输入的偏导数;
  3. 计算每个权重的梯度。

最后再用随机梯度下降算法更新权重。

RNN的应用举例——基于RNN的语言模型

现在,我们介绍一下基于RNN语言模型。我们首先把词依次输入到循环神经网络中,每输入一个词,循环神经网络就输出截止到目前为止,下一个最可能的词。例如,当我们依次输入:

我 昨天 上学 迟到 了

神经网络的输出如下图所示:

可以用下面的图来直观的表示:

使用这种向量化方法,我们就得到了一个高维、稀疏的向量(稀疏是指绝大部分元素的值都是0)。

其中,s和e是两个特殊的词,分别表示一个序列的开始和结束。

 

向量化

我们知道,神经网络的输入和输出都是向量,为了让语言模型能够被神经网络处理,我们必须把词表达为向量的形式,这样神经网络才能处理它。

神经网络的输入是词,我们可以用下面的步骤对输入进行向量化:

  1. 建立一个包含所有词的词典,每个词在词典里面有一个唯一的编号。
  2. 任意一个词都可以用一个N维的one-hot向量来表示。

语言模型要求的输出是下一个最可能的词,我们可以让循环神经网络计算计算词典中每个词是下一个词的概率,这样,概率最大的词就是下一个最可能的词。因此,神经网络的输出向量也是一个N维向量,向量中的每个元素对应着词典中相应的词是下一个词的概率。如下图所示:

最后,我们使用交叉熵误差函数作为优化目标,对模型进行优化。

在实际工程中,我们可以使用大量的语料来对模型进行训练,获取训练数据和训练的方法都是相同的。

。。。


















本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7717569.html,如需转载请自行联系原作者


相关文章
|
2月前
|
机器学习/深度学习 存储 自然语言处理
一文带你了解【深度学习】中CNN、RNN、LSTM、DBN等神经网络(图文解释 包括各种激活函数)
一文带你了解【深度学习】中CNN、RNN、LSTM、DBN等神经网络(图文解释 包括各种激活函数)
64 0
|
2月前
|
机器学习/深度学习 自然语言处理 数据处理
一文带你了解RNN循环神经网络
一文带你了解RNN循环神经网络
59 1
|
5月前
|
机器学习/深度学习 人工智能 开发者
循环神经网络(一)
循环神经网络(一)
42 0
|
5月前
|
机器学习/深度学习 存储 人工智能
循环神经网络(二)
循环神经网络(二)
60 0
|
5月前
|
机器学习/深度学习 数据采集
将循环神经网络(RNN)
将循环神经网络(RNN)应用于现实世界数据进行时间序列预测,是一种常见的机器学习应用。时间序列预测是一种预测未来值的方法,它基于过去和现在的数据点。这种预测方法被广泛应用于金融、气象、工业生产等领域。以下是使用 RNN 进行时间序列预测的基本步骤:
35 3
|
8月前
|
机器学习/深度学习 自然语言处理 算法
RNN、CNN、RNN、LSTM、CTC算法原理,pytorch实现LSTM算法
RNN、CNN、RNN、LSTM、CTC算法原理,pytorch实现LSTM算法
178 0
|
9月前
|
机器学习/深度学习
循环神经网络
循环神经网络
122 0
循环神经网络
|
9月前
|
机器学习/深度学习 人工智能 搜索推荐
TextRCNN、TextCNN、RNN…你都掌握了吗?一文总结文本分类必备经典模型(二)
TextRCNN、TextCNN、RNN…你都掌握了吗?一文总结文本分类必备经典模型(一)
145 0
|
9月前
|
机器学习/深度学习 自然语言处理 算法
TextRCNN、TextCNN、RNN…你都掌握了吗?一文总结文本分类必备经典模型(一)
TextRCNN、TextCNN、RNN…你都掌握了吗?一文总结文本分类必备经典模型(一)
165 0
|
9月前
|
机器学习/深度学习
从RNN、LSTM到GRU的介绍
从RNN、LSTM到GRU的介绍

相关产品