• 前馈神经网络和循环神经网络分别适合处理什么样的任务?
    如果分类任务仅仅是进行判断和识别,例如判断照片上的人的性别,识别图片上是否有小狗图案,那么对输入的数据仅仅需要做特征寻找的工作即可,找到满足该任务的特征,或判断局部特征的强弱,就可以实现目的。但是如果对于稍微复杂一点的任务。例如判断两句话是否存在因果关系,或在一篇文章中找到某个问题的答案,抛开输入数据的位置关系仅仅关注特征就变得不可取了。这个时候还需要考虑输入数据之间的位置关系。因为位置关系影响了词语之间的语义和理解。而让前馈神经网络代表之一的例如CNN网络来学习到上下文位置信息是一件很麻烦的事情,需要用到海量的参数,因此,提出了反馈神经网络与前馈神经网络相结合的概念,即循环神经网络。反馈在前馈的基础上,利用前馈过程中,将当前位置输出的数据,反馈给网络,即反馈单元在当前位置做的决策,都是基于之前的全部信息,所以可以更好的帮助网络在下一个位置做出决策判断。而前馈神经网络只是单纯的将上一层的输出作为下一层的输入,如此迭代下次,不能基于之前的全部信息,没有反馈的过程。因为有了反馈的操作,所以反馈神经网络往往需要工作上一段时间之后才能变的稳定。
    前馈神经网络图
    前馈 + 反馈 = 循环神经网络图
    (无隐藏层的循环神经网络)
  • 前馈和反馈的表达式修改
    前馈神经网络的表达式是:> O = f ( X * W + b )
    X 表示输入,W 和 b 是模型参数。输入 X 和参数 W,经矩阵乘法之后加上参数 b,再经激活函数 f 激活之后,输出结果。
    循环神经网络是在前馈的基础上添加了反馈的操作,有了一个将当前时间 t 输出反馈至网络的过程,因此,在下一个时间,即 t+1 时,公式在原有的基础上添加了第 t 时刻的输出。
    即:> O(t+1) = f ( X * W + b + O(t) * V)
    其中 V 作为一个新的参数和第 t 时刻的输出进行矩阵乘法,又作为第 t+1 时刻输入的一部分, 即实现了反馈的概念。
    循环神经网络RNN,是LSTM,GRU等门限循环网络的模型基础。
  • RNN的梯度消失和梯度爆炸问题
    单看RNN的前向计算过程,可以认为输入数据在经过每一层网络时,都需要进行和参数矩阵 W 相乘以及和参数 b 相加的过程。相加过程并不会造成数据的陡增或陡降,而矩阵相乘的过程可能会导致。
    在线性代数中,一个矩阵可以近似成其特征矩阵 diag(λ) 和特征向量 V 的相乘,即 W = V·diag(λ)·V - 1,所以当输入数据经过一个 t 层的神经网络后,它的输出就要与 t 个 W 进行相乘。
    那么,当特征值 V 大于1时,则经过t 个 W 相乘之后,其值会发生爆炸,变得巨大无比,而当小于1时,其值会发生衰减,迅速衰减为0
    而前向过程的输出又是网络的反馈,就会导致整个网络产生较大的波动。当更新和输出层较远的那些网络层的参数时,会使得最后的输出结果要么过大要么过小,这种情况下训练出的网络显然是不靠谱的。
  • 梯度爆炸和梯度消失的解决方法
    采用梯度截断的方法,通过给梯度值设置上限,使得在更新RNN参数的过程中,不会发生梯度爆炸来摧毁之前的学习成果。但是与此同时也就意味着模型很难顾及到较远的历史信息。因为都被截断了。实际上,当网络层的输入序列长度超过10之后,网络对超过10的部分的记忆效果就已经显著变差了,而超过30的部分基本是记不住的。因此,虽然循环神经网络相较于前馈神经网络,可以记住较多的历史信息,但是却无法记住较长距离的历史信息。
    虽然使用梯度截断的方法可以缓解前馈过程,捎带着对反馈过程的影响,的梯度爆炸或梯度消失问题,但是,由于反馈过程的输入是前馈的输出经过激活函数的导数的运算结果,因此,鉴于sigmoid函数导数的特点(超大正值和超小负值经过其会变成 0),不建议在RNN中使用sigmoid作为激活函数。

【NLP】毕设学习笔记(八)“前馈 + 反馈” = 循环神经网络RNN相关推荐

  1. 深度学习 -- TensorFlow(9)循环神经网络RNN

    目录 一.循环神经网络RNN介绍 二.Elman network && Jordan network 三.RNN的多种架构 1.一对一 2.多对一 3.多对多 4. 一对多 5.Seq ...

  2. 【NLP】毕设学习笔记(九)长短期神经网络LSTM

    无隐藏层的simple RNN 和 有隐藏层的standard RNN 人在进行决策的时候,不仅仅是根据当前的输入和之前完成该事情的先前记忆.例如在拼拼图时,当前时刻的输入就是新拿起的一块拼图,完成该 ...

  3. 深度学习笔记(四)——循环神经网络(Recurrent Neural Network, RNN)

    目录 一.RNN简介 (一).简介 (二).RNN处理任务示例--以NER为例 二.模型提出 (一).基本RNN结构 (二).RNN展开结构 三.RNN的结构变化 (一).N to N结构RNN模型 ...

  4. TensorFlow学习笔记——(11)循环神经网络

    文章目录 一.循环核 二.循环核时间步展开 三.循环计算层 四.TF描述循环计算层 五.循环计算过程 1.RNN实现单个字母预测 (1)过程 (2)完整代码 2.RNN实现输入多个字母,预测一个字母 ...

  5. [深度学习-原理篇]什么是循环神经网络RNN与LSTM

    1. 什么是 RNN 循环神经网络(Recurrent Neural Network,RNN)是一种以序列数据为输入来进行建模的深度学习模型,它是 NLP 中最常用的模型. 2. RNN 的结构 RN ...

  6. 黑马程序员_java自学学习笔记(八)----网络编程

    黑马程序员_java自学学习笔记(八)----网络编程 android培训. java培训.期待与您交流! 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无 ...

  7. 【opencv学习笔记八】创建TrackBar轨迹条

    createTrackbar这个函数我们以后会经常用到,它创建一个可以调整数值的轨迹条,并将轨迹条附加到指定的窗口上,使用起来很方便.首先大家要记住,它往往会和一个回调函数配合起来使用.先看下他的函数 ...

  8. Polyworks脚本开发学习笔记(八)-组合运用命令批量改名

    Polyworks脚本开发学习笔记(八)-组合运用命令批量改名 需求解析 以下是使用包边比较点创建的一组包边点(即Gap点)和曲面点-包边点(即Flush点),这种命名方式不太常规,改为Gap和Flu ...

  9. OpenGL学习笔记(八):进一步理解VAO、VBO和SHADER,并使用VAO、VBO和SHADER绘制一个三角形

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7888 ...

最新文章

  1. python减法怎么表示_python运算符号之一的减法怎么用,你真的学会用python的使用方法了嘛...
  2. 巨蟒python全栈开发flask11项目开始3
  3. Dead Pixel CodeForces - 1315A(思维)
  4. C++ 之const的使用
  5. NLP简报(Issue#1)
  6. TOMCAT 优化设置
  7. 从零基础入门Tensorflow2.0 ----三、7.自定义损失函数
  8. visio添加箭头图标
  9. 小红书种草达人类型有哪些?如何评判达人质量
  10. 图像增强—彩色增强技术
  11. iOS计算器:采用NSDecimalNumber 进行表达式的精准计算(计算字符串数学表达式)【案例:折扣计算器(完整demo源码)】
  12. 招聘-大数据开发工程师
  13. 2019年股票股息率分红最高排名
  14. 翻译: 2.7. 如何利用帮助文档 深入神经网络 pytorch
  15. JAVA面试八股文宝典(黑马学习随笔)-- 基础篇
  16. 传输指令——MOV、FMOV、BMOV、SMOV、SWAP
  17. day25 Scala编cala编译器安装 3.1. 安装JDK 因为Scala是运行在JVM平台上的,所以安装Scala之前要安装JDK 3.2. 安装Scala 3.2.1. Windows基础
  18. 记一次服务器被挖矿程序占用的解决过程
  19. java压缩文件耗时:30秒到1秒的优化过程
  20. ssm美食论坛系统毕业设计源码191023

热门文章

  1. 栈——括号匹配(洛谷 Uva673)
  2. butter滤波器是iir吗_IIR低通滤波器求改
  3. oracle rac 高并发性能_高并发业务下 JVM 涉及的垃圾回收与性能问题分析与定位...
  4. 数据3分钟丨Oracle宣布从JDK17开始提供免费版本和更新​;ClickHouse 宣布独立成立公司...
  5. 嘉年华专访 | 国际上智能运维研究
  6. YoloV5实战:手把手教物体检测
  7. CANN5.0黑科技解密 | 高并发图片视频处理,为出行保驾,为生活添彩
  8. “互联网+”大赛之AI创新应用赛题攻略:大胆脑洞,共绘智慧生活蓝图
  9. 华为云企业主机安全服务之“网页防篡改”:拒绝网页变脸,服务实时在线
  10. 大型情感剧集Selenium:1_介绍 #华为云·寻找黑马程序员#