【学习笔记】Week1_Recurrent Neural Networks_Recurrent Neural Network Model

1、为什么不使用标准的神经网络

    

2、循环神经网络

    · 每个时间点对样本中的各个单词 x-<t> 从左到右依次进行读取、均使用同一个网络,各个循环之间所用的参数是共享的

    · 第一次循环的激活输入 a<0> 通常为全 0 向量

    · 下图的两个网络结构是同一个网络结构,但右侧的表示比较抽象、所以本课程采用左侧的(展开)表示方法

    · 单词 x-<t> 与隐藏层之间的传递用 W_ax 控制;各个时间点之间的激活 a<t> 的传递用 W_aa 控制;隐藏层与输出 y^-<t> 之间的传递用 W_ya 控制

    · 输入 x-<3> 预测 y^-<3> 时,不仅可以用到 x-<2> 的信息,还可以用到 x-<1> 的信息

    · 此 RNN 的缺点是对 x-<t> 进行预测时,只能用到 x-<t> 之前的信息(如 x-<t - 1>),无法用到 x-<t> 之后的信息、此问题可以通过 BRNN(Bidirectional Recurrent Neural Networks)解决


3、前向传播过程

    · W_ax 中的 'a' 表示此参数用来计算 a-<t>,'x' 表示此参数将要乘以 x-<t>、W_ya 同理

    · 求 a-<t> 时,通常使用 tanh(或 ReLU)作为激活函数;如果为二元分类问题,计算 y^-<t> 时则采用 Sigmoid 激活函数、多元分类问题则采用 Softmax 激活函数

    · a-<t> = g(W_aa * a-<t - 1> + W_ax * x-<t> + b_a);y^-<t> = g(W_ya * a<t> + b_y)

    

4、简化 RNN 的符号

    · 将 W_aa * a-<t - 1> + W_ax * x-<t> 用 W_a * [a-<t - 1>, x-<t>] 表示;其中 W_a = [W_aa, W_ax](列排)、[a-<t - 1>, x-<t>] 为列向量(行排)

    · 假设 a 的维数为 100;x 的维数为 10000、则 W_aa 的维数为 (100, 100);W_ax 的维数为 (100, 10000);W_a 的维数为 (100, 10100)

    · 将 W_ya 用 W_y 表示



阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MegaZhan/article/details/80348059
个人分类: Sequence Models
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

【学习笔记】Week1_Recurrent Neural Networks_Recurrent Neural Network Model

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭