zoukankan      html  css  js  c++  java
  • 深度学习课程笔记(十五)Recurrent Neural Network

    深度学习课程笔记(十五)Recurrent Neural Network

    2018-08-07 18:55:12

     

    This video tutorial can be found from: Youtube 

     

     

     

    Issue: 传统方法中,当你的训练数据中,没有那么丰富的 training data,那么可能会导致部分数据的预测为 0,如上图所示。为了不让它变成 0,所以,我们给它一个非常小的 value,如:0.0001。但是这种给定的低概率的 value,是相当不准确的。

    所以,我们想能否有一种方法,可以较好的预测这些 value,Neural Network 可以吗?

    我们把句子拆分成很多概率相乘的形式,那么,我们得到这样的表达形式:。然后,我们给 Neural Network 每一个时刻,输入一个单词,就想让它输出下一个我们想要的那么单词对应的 probability 最大。

     

     

     

     

     

    =====================================================

    =====================================================

    ==>>         接下里 RNN 要开始出场了。

    =====================================================

    =====================================================

    ==========================================================================================

     

    我们采用 Backpropagation through time 来进行参数的更新。普通的 BP 算法是按照如下的方式进行更新的:

     

    而 RNN 中用到的是:

     

    实际执行过程中,通常会直接 sum 起来这些 gradient,然后进行一次更新。

     

    由于梯度一直进行相乘,导致最终变得非常小,或者非常大;从而导致梯度消失或者梯度爆炸;

     

     

    1. Exploding Gradient: Clipping 

    2. Vanishing Gradient: Initialization + ReLU 

  • 相关阅读:
    彻底领悟javascript中的exec与match方法
    javascript doT 使用
    pluginstorage 插件
    html5离线储存,application cache,manifest使用体验
    window.location.hash属性介绍 ajax后退按钮失效问题
    控制textarea光标移到末尾
    webkitanylink 谷歌浏览器CSS之A:HOVER
    正则表达式详细参考文档
    复杂应用的 CSS 性能分析和优化建议
    seaJs api 帮助文档
  • 原文地址:https://www.cnblogs.com/wangxiaocvpr/p/9439003.html
Copyright © 2011-2022 走看看