代码问题

来源:4-35 动手实现RNN-LSTM循环神经网络(十):编写测试方法

qq_windybeyondw_0

2018-11-20

状态(state)的存储和提取

    # 第二维是 2 是因为对每一个 LSTM 单元有两个来自上一单元的输入:
    # 一个是 前一时刻 LSTM 的输出 h(t-1)
    # 一个是 前一时刻的单元状态 C(t-1)
    # 这个 C 和 h 是用于构建之后的 tf.contrib.rnn.LSTMStateTuple
    self.init_state = tf.placeholder(tf.float32, [num_layers, 2, self.batch_size, self.hidden_size])
    
    这里定义的是状态的存储和提取,这四个参数为什么要写在这里呢?
    initial_state = cell.zero_state(batch_size, tf.float32)

我看其他定义初始代码都是写的这样的,没有去定义一些每一层的初始状态然后再次定义初始的状态,请问这两种有什么区别呢

写回答

1回答

qq_windybeyondw_0

提问者

2018-11-20

initial_state = cell.zero_state(batch_size, tf.float32)

我看其他定义初始代码都是写的这样的,没有去定义一些每一层的初始状态然后再次定义初始的状态,请问这两种有什么区别呢


0
0

基于Python玩转人工智能最火框架 TensorFlow应用实践

机器学习入门,打牢TensorFlow框架应用是关键!

2214 学习 · 688 问题

查看课程