深度学习 RNN 循环神经网络(一)BasicRNNCell

看了基础的rnn感觉,理论似乎懂了,但是刚刚接触深度学习的我感觉有点难度。

参考网址:https://blog.****.net/The_lastest/article/details/83544280

这篇讲一下深度学习循环神经网络构建网络的主要参数:
output=h1=f(x1∗W+h0∗U+B)

标准的RNN单元有三个可训练的参数 W,U,B,**函数tanh,以及两个状态:x1输入状态,h0隐藏层状态

深度学习 RNN 循环神经网络(一)BasicRNNCell

output_size = 4 类别数
batch_size = 32 批次数
cell = tf.nn.rnn_cell.BasicRNNCell(num_units=output_size)
input = tf.placeholder(dtype=tf.float32,shape=[batch_size,150])  #输入形状:32,150
h0 = cell.zero_state(batch_size=batch_size,dtype=tf.float32)  #隐藏层形状:32,4
output,h1 = cell.call(input,h0) # 输出形状:32,4   隐藏层输出形状:32,4

W:150*4,    U:4*4,    B:4 

上面紫色的四步是一个call方法 每一个input 和h0能得到输出output和h1

每调用一次RNNcell的call方法,就相当于在推进一步

每个RNNCell都有一个call方法,使用方式是:(output, next_state) = call(input, state)。