首页 > 编程知识 正文

截止频率和穿越频率,反向传播算法伪代码

时间:2023-05-05 12:13:15 阅读:22327 作者:1524

时间序列反向传播算法bptt:back-propagationthroughtime

Lu=tltufrac {partiall } {partialu }=sum _ tfrac {partial _ t } { _ partialu } _ l=t _ lt

例如在t=4情况下,

l4u=l 4y4h 4ufrac {partiall _4} {partialu }=frac {partial _4} {frac {fraly _4}

whereH4=tanh(wH3ux

4 ) h_4 = tanh(Wh_3 + Ux_4) h4​=tanh(Wh3​+Ux4​)

注意到 h3也依赖U
∂ L t ∂ U = ∑ s = 0 t ∂ L t ∂ y t ∂ y t ∂ h t ∂ h t ∂ h s ∂ h s ∂ U frac{partial L_t}{partial U} = sum_{s=0}^tfrac{partial L_t}{partial y_t} frac{partial y_t}{partial h_t} frac{partial h_t}{partial h_s}frac{partial h_s}{partial U} ∂U∂Lt​​=∑s=0t​∂yt​∂Lt​​∂ht​∂yt​​∂hs​∂ht​​∂U∂hs​​

参数共享是双刃剑,网络预测时具有平稳性,但是梯度计算的时候会有依赖。

随着t和s的距离越来越大,梯度传播的计算,长时序的依赖不足。
∂ h t ∂ h s = ∂ h t ∂ h t − 1 ∂ h t − 1 ∂ h t − 2 . . . ∂ h s + 1 ∂ h s frac{partial h_t}{partial h_s} = frac{partial h_t}{partial h_{t-1}} frac{partial h_{t-1}}{partial h_{t-2}} ... frac{partial h_{s+1}}{partial h_{s}} ∂hs​∂ht​​=∂ht−1​∂ht​​∂ht−2​∂ht−1​​...∂hs​∂hs+1​​

Truncated BPTT


BPTT 只在子序列的内部去做反向传播,只关心内部的计算。在实际的计算中,很少有人用 full BPTT,一般是使用 Truncated BPTT。

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