【问题标题】:Extract Hidden Layer Vector from RNN Tensoflow从 RNN Tensorflow 中提取隐藏层向量
【发布时间】:2016-06-29 21:08:42
【问题描述】:

我对 TensorFlow 非常陌生,但我正在努力让一个项目运转起来。

我使用以下代码训练了 LSTM:https://github.com/sherjilozair/char-rnn-tensorflow

这很好,使用 sample.py 我得到了很好的输出数据。但是,我对生成输出数据不是很感兴趣。我要做的是从LSTM的最后一步中提取隐藏层向量。

基本上,我想在运行 model.py 的以下部分:

def sample(self, sess, chars, vocab, num=200, prime='The ', sampling_type=1):
        state = self.cell.zero_state(1, tf.float32).eval()
        for char in prime[:-1]:
            x = np.zeros((1, 1))
            x[0, 0] = vocab[char]
            feed = {self.input_data: x, self.initial_state:state}
            [state] = sess.run([self.final_state], feed)

我不确定如何在 Tensorflow 中执行此操作,任何帮助都会很棒,谢谢。

【问题讨论】:

    标签: python tensorflow lstm recurrent-neural-network


    【解决方案1】:

    【讨论】:

    • 我通读了该页面,但我无法“恢复” MultiCellRNN 对象的隐藏状态变量,因为我真的不知道它的名称是什么。我是不是在错误地处理这个问题?
    • 因为这不是我从头开始创建的模型——它由 BasicLSTMCell 组成——我不知道如何访问它的变量