详解:递归神经网络和LSTM网络那些事儿
下图展示了一个展开的RNN。在左侧,你可以看到等号后展开的RNN。请注意,等号后面没有循环,因为不同的时间步可视化,信息从一个时间步传递到下一个时间步。这个例子也说明了为什么RNN可以被看作是神经网络的一个序列。 如果随时间反向传播,则需要进行展开的概念化,因为给定时间步的误差取决于先前的时间步。 在BPTT中,错误从最后一步反向传播到第一步,同时展开所有时间步。这允许计算每个时间步的误差,允许更新权重。请注意,当拥有大量时间步时,BPTT可能在计算上很昂贵。 标准RNN的两个问题 RNN存在或不得不处理两大障碍。但要理解它们,你首先需要知道什么是渐变。 梯度是相对于其输入的偏导数。如果你不知道这意味着什么,只要想一想就可以了:如果你稍微改变一下输入,梯度就会测量一个函数输出的变化。 你也可以将梯度看作函数的斜率。坡度越高,坡度越陡,模型可以学习得越快。但如果斜率为零,模型停止学习。梯度简单地衡量所有权重的变化与错误的变化有关。 梯度爆炸 当算法赋予权重非常重要时,我们会谈到“梯度爆炸”,没有太多理由。但幸运的是,如果你截断或挤压渐变,则可以轻松解决此问题。 消失的梯度 (编辑:辽源站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |