首页 > 编程知识 正文

bp神经网络误差反向传播,反向传播算法的步骤

时间:2023-05-04 05:18:29 阅读:22322 作者:3448

RNN是序列建模的强大工具。

关于今天主要搬运了两天的RNN的好文章:

名为anyonecanlearntocodeanlstm-rnninpython (部件1: rnn )的博客相当赞。 向Toy Code学习确实是个好方法。 (通俗易懂地抓住核心)! David 9的博客包括上面的翻译,以及对Toy code.RNN反向传递算法(BPTT ) (包括生成对抗网络(GAN ) )的理解和介绍。 链接的文章非常清晰。 只是BP。 不过,更新隐藏层涉及未来时间戳的输出(因为当前隐藏层的输出将被记住并影响未来)。 介绍Andrej Karpathy blog on RNN PS:第一个链接中的Toy Code

之所以循环8次(8(binary_dim=8),是因为如果输入是二维的(a和b各输入一个位),则一个位只影响八个时间戳。因此要注意RNN的训练,应该以每一个完整的序列(这里就是a和b两个八位二进制数)作为一个training sample,而非以每一次输入(2 bits)作为一个sample;同样的在反向传播时,也同样遵循这个原则,此处因为每次输入会影响8个时间戳(或者说每8次输入为一个完整的training sample),所以要循环8次。

而第99行(五角星处)的隐层三角洲更新规律与上面显示的RNN反向传播算法BPTT文中下图正好一致!

先写这么多。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。