RNN 练习算法
因为 RNN 具有将汗青信息按时序或序列进行归并的性质,所以它们拥有独特的练习算法。梯度降低算法已成功应用到 RNN 权重优化上(经由过程与权重的误差导数呈必定比例地调节权重来最小化误差)。一种风行的技巧是时光反向传播 (BPTT),它应用了权重更新,它经由过程累加序列中每个元素的累积误差的权重更新来竽暌功用权重更新,,最后更新权重。对于大年夜型的输入序列,此行动可能导致权重消掉或爆炸(称为消掉或爆炸梯度问题)。要解决此问题,平日会应用混淆办法,并结合应用 BPTT 与及时递归进修等其他算法。
其他练习办法也能成功应用于赓续进化的 RNN。可应用进化算法(比如遗传算法或模仿退火法)来进化候选 RNN 群体,然后将它们从新组合为它们的合适度(即它们解决给定问题的才能)的函数。尽管不包管能收敛于一个解决筹划,但可以成功地将收敛应用于一系列问题,包含 RNN 进化。
RNN 的一个有效的应用是猜测序列。鄙人一?示例中,我将构建一个 RNN,用它根据一个小词汇表来猜测某个单词典最后一个字母。我将单词馈送入 RNN 中,一次加载一个字母,收集的输出将表示猜测的下一?字母。
遗传算法流
查看 RNN 示例之前,让我们看看遗传算法背后的流程。遗传算法是一种受天然选择过程启发的优化技巧。如下图所示,该算法创建了一个随机的候选解决筹划(称为染色体)群体,这些解决筹划对将要寻找的解决筹划的参数进行编码。创建它们后,针对响应问题对该群体的每个成员进行测试,并分派一个合适度值。然后大年夜群体中辨认父染色体(首选具有更高合适度的染色体),并为下一代创建一个子染色体。在子染色体这一代中,应用遗传运算符(比如大年夜每个父染色体获取元素 [称为杂交] 并向子染色体惹人随机变更 [称为突变])。然后应用新群体再次开端此过程,直到找到合适的候选解决筹划。

用染色体组表示神经收集
一个染色体被定义为群体的一个成员,包含要解决的特定问题的编码。在进化 RNN 的高低文中,染色体由 RNN 的权重构成,如下图所示。


【编辑推荐】
- 当前深度神经收集模型紧缩和加快办法速览
- 超出Softmax瓶颈:一种高秩RNN说话模型
- CNN与RNN对中文文本进行分类--基于TENSORFLOW实现
- 深刻浅出解读卷积神经收集
- 一文搞懂RNN(轮回神经收集)基本篇
对于大年夜群体中获取染色体并生成 RNN 的过程,只需将其定义为应用大年夜染色体转换而来的权重来初始化收集的权重。在本例中,这表示 233 个权重。
应用 RNN 猜测字母

所以,如今我有一种使我的 RNN 可以或许处理字母的编码。如今,让我们看看如安在 RNN 的高低文中处理字母。下图演示了字母猜测高低文中的 Elman 式 RNN(馈送表示字母 b 的独热矢量)。对于测试单词中的每个字母,我将该字母编码为独热码,然后将它作为输仁攀馈送给收集。然后,以前馈方法履行该收集,并以胜者全得的方法解析输出,以肯定定义独热矢量的获胜元素(在本例中为字母 a)。在此实现中,仅检查了单词典最后一个字母,验证中忽视了其他字母,也没有对它们履行合适度计算。

简单的 Elman 式 RNN 实现
让我们来看一个经由过程遗传算法练习的 Elman 式 RNN 的样本实现。可以在 GitHub 上找到此实现的 Linux 源代码。该实现由 3 个文件构成:
- main.c 供给主轮回、一个用于测试的函数,以及一个用于获得群体合适度的函数
- ga.c 实现了遗传算法函数
- rnn.c 实现了实际的 RNN
我将重点介绍两个核心函数:遗传算法流程和 RNN 评估函数
RNN 的核心内容可以在 RNN_feed_forward 函数中找到,该函数实现了 RNN 收集的履行(拜见以下代码)。该函数被拆分为 3 个阶段,类似于上图中显示的收集。在第一阶段,计算隐蔽层的输出,隐蔽层归并了输入层和高低文层(每层都有本身的一组权重)。高低文节点已在测试给定单词之前初始化为 0。在第二阶段,我将计算输出层的输出。这一步归并了每个隐蔽层神经元与它们本身的独特权重。最后,在第三阶段,我将第一个高低文层神经元传播到第二个高低文层神经元,将隐蔽层输出传播到第一个高低文节点。这一步在收集中实现了两个记忆层。
请留意,在隐蔽层中,我应用 tan 函数作为激活函数,并应用 sigmoid 函数作为输出层中的激活函数。tan 函数在隐蔽层中很有效,因为它典范围是 -1 到 1(它还许可应用来自隐蔽层的┞俘输出和负输出)。在输出层中,我感兴趣的是激活独热矢量的最大年夜值,我应用了 sigmoid,因为它典范围是 0 到 1。
- void RNN_feed_forward( void )
- {
- int
推荐阅读
CTO练习营 | 12月3-5日,深圳,是时刻成为优良的技巧治理者了 在物联网范畴,平日存在一些难以懂得的协定、标准>>>详细阅读
本文标题:带你深入剖析递归神经网络
地址:http://www.17bianji.com/lsqh/39295.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示