【发布时间】:2017-03-25 16:45:49
【问题描述】:
我正在 TensorFlow 上开发一个模型,用于将连续标签归因于时间序列的每个时间步。该模型旨在用于实时数据,以便在先前时间步长上观察到的时间序列值将对 LSTM 赋予当前时间步长的标签产生影响.为此,我使用tf.contrib.rnn.LSTMCell。
我的数据包含以分钟到分钟为分辨率的每日时间序列。时间序列的总长度始终相同。 在下方左侧的蓝色图中,您可以找到我的数据的示例。
我想用 +1 和 -1 之间的浮点值对我的输入时间序列进行分类,这样 +1 对应于时间序列的最大值,-1 对应于最小值,以及任何其他值 (在 +1 和 -1) 之间。因此,我希望 LSTM 根据在先前时间步长上观察到的值来预测我们是否可能处于时间序列的最大值或最小值。 目标标签的示例可以在上图中以绿色看到。
现在,为了成功,我需要为 LSTM 提供初始标签的估计值。否则,正如 上面我获得的结果的红色所示,初始预测标签将偏离很多,因为 LSTM 在时间序列上没有先前的上下文。
话虽如此,我正在寻找有关初始化 LSTM 的最佳方法的意见。 LSTMCell 模块有一个 initializer 属性,但这用于初始化 LSTM 的状态,而不是确定初始标签应该是什么。例如,对于我上面展示的时间序列,如何配置 LSTM,使其属性的初始标签为 0.75(初始目标标签的值)?
【问题讨论】:
标签: python machine-learning tensorflow time-series lstm