、次のように得られる各時点のための機能dynamic_rnn
出力(m
として知られる)のみ隠れ状態:Tensorflow:dynamic_rnnを使用してLSTMCellから中間セル状態(c)を取得するにはどうすればよいですか?デフォルトで
cell = tf.contrib.rnn.LSTMCell(100)
rnn_outputs, _ = tf.nn.dynamic_rnn(cell,
inputs=inputs,
sequence_length=sequence_lengths,
dtype=tf.float32)
はで方法得る中間体(最終ではない)セル状態(c
)があります添加?
それが細胞ラッパーで行うことができますtensorflow
貢献mentions:
class Wrapper(tf.nn.rnn_cell.RNNCell):
def __init__(self, inner_cell):
super(Wrapper, self).__init__()
self._inner_cell = inner_cell
@property
def state_size(self):
return self._inner_cell.state_size
@property
def output_size(self):
return (self._inner_cell.state_size, self._inner_cell.output_size)
def call(self, input, state)
output, next_state = self._inner_cell(input, state)
emit_output = (next_state, output)
return emit_output, next_state
しかし、動作するようには思えません。何か案は?