动手学深度学习之循环神经网络基础
循环神经网络 本节介绍循环神经网络,下图展示了如何基于循环神经网络实现语言模型。其目的是基于当前的输入与过去的输入序列,预测序列的下一个字符。循环神经网络引入一个隐藏变量 H H H ,用 H t H_t H t 表示 H H H 在时间步 t t t 的值。 H t H_t H t 的计算基于 X t X_t X t 和 H t − 1 H_{t-1} H t − 1 ,可以认为 H t H_t H t 记录了到当前字符为止的序列信息,利用 H t H_t H t 对序列的下一个字符进行预测。 #### 循环神经网络的构造 假设 X t ∈ R n × d X_t\in R^{n\times d} X t ∈ R n × d 是时间步 t t t 的小批量输入, H t ∈ R n × h H_t\in R^{n\times h} H t ∈ R n × h 是该时间步的隐藏变量,则: H t = ϕ ( X t W x h + H t − 1 W h h + b h ) H_t=\phi(X_tW_{xh}+H_{t-1}W_{hh}+b_h) H t = ϕ ( X t W x h + H t − 1 W h h + b h ) 其中, W x h ∈ R d × h W_{xh}\in R^{d\times h} W