2
我想在時間序列數據提供時 - 一次一步地增量構建rnn(在幾個初始步驟之後)。使用TensorFlow RNN的增量連續時間序列
當前rnn()將encoder_input和decoder_input作爲完整序列。
def rnn_seq2seq(encoder_inputs, decoder_inputs, cell, initial_state=None,output_projection=None,feed_previous=False, dtype=tf.float32, scope=None):
with tf.variable_scope(scope or "rnn_seq2seq"):
_, enc_states = rnn.rnn(cell, encoder_inputs, initial_state=initial_state, dtype=dtype)
def extract_argmax(prev, i):
with tf.device('/gpu:0'):
prev = tf.nn.softmax(tf.nn.xw_plus_b(prev, output_projection[0], output_projection[1]))
return prev
loop_function = None
if feed_previous:
loop_function = extract_argmax
print enc_states[-1]
return seq2seq.rnn_decoder(decoder_inputs, enc_states[-1], cell, loop_function=loop_function)
feedP = tf.placeholder(dtype=tf.bool)
with tf.variable_scope("mylstm"):
output,state = rnn_seq2seq(enc_inputs,dec_inputs,cell,output_projection=output_projection,feed_previous=feedP)
是否有可能一次爲decoder_input提供一個步驟而不是整個序列,因爲這是數據如何實時發佈的?
partial_fit只需調用fit()函數而不添加任何值。這怎麼會有所幫助?您需要在skflow中指定RNN的模型。在這種情況下模型會是什麼樣子? –
它實際上與fit相同,因爲fit是以接受iterator的方式實現的,或者一次只能取一個樣本。這只是爲了更好的用戶API。這些例子可以幫助您開始,例如seq2seq,RNN/LSTM等希望這有助於。 –