3

我的问题:我有一系列复杂的状态,我想预测未来的状态。

输入:我有一系列状态。每个序列可以是可变长度的。每个状态都是一个时刻,由几个属性描述:[att1, att2, ...]。其中每个属性都是区间 [[0..5], [1..3651], ...] 之间的数字

Seq2Seq 的示例(和论文)基于每个状态(单词)都取自他们的字典。所以每个州都有大约 80.000 种可能性。但是,当从一组向量中获取每个状态并且该集合只是属性的每个可能组合时,您将如何表示每个状态。

是否有任何方法可以使用 TensorFlow 处理更复杂的状态?另外,当输入长度和输出长度之间的关系不清楚时,确定存储桶边界的好方法是什么?

4

1 回答 1

4

我可以建议将您的问题改写成两部分吗?第一个确实是一个与 tensorflow 无关的通用机器学习/LSTM 问题:How to use an LSTM to predict when the sequence elements are general vectors,第二个是如何在 tensorflow 中表示这一点。对于前者 - 那里没有什么真正神奇的事情。

但是一个非常快速的答案:你真的只是跳过了 seq2seq 的嵌入查找部分。您可以将密集张量输入到它的适当修改版本中——您的状态只是状态的密集向量表示。这与嵌入查找的结果相同。

向量表示教程讨论了预处理,例如,将单词转换为嵌入,以便在学习管道的后续部分中使用。

如果您查看seq2seq.py 的第 139 行,您会看到 embedding_rnn_decoder 接受一维批次的事情来决定(维度是批次中的元素),然后使用嵌入查找将其转换为 batch_size * 单元格.input_size 张量。您想直接将一个 batch_size * cell.input_size 张量输入 RNN,跳过嵌入步骤。

于 2015-11-20T19:40:44.527 回答