如何在一系列日期上训练 LSTM?

Posted

技术标签:

【中文标题】如何在一系列日期上训练 LSTM?【英文标题】:How to train a LSTM on a sequence of dates? 【发布时间】:2022-01-16 21:04:23 【问题描述】:

如果我想训练一个 lstm 来预测一系列日期中的下一个日期,我该怎么做,因为 lstm 需要一个缩放值?

数据示例:

date next date
2012-05-12 2012-05-13
2012-05-13 2012-05-19
2012-05-19 2012-05-20
2012-05-20 2012-05-22
2012-05-22 2012-05-26
2012-05-26 2012-05-27
2012-05-27 2012-05-30
2012-05-30 2012-06-12
2012-06-12 2012-05-19
2012-06-19 2012-06-25

【问题讨论】:

【参考方案1】:

您可以将日期拆分为三个输入:一个是年份,另一个是月份,最后一个是一天。虽然标准化您的输入肯定是有道理的,但我不完全同意您的“LSTM 要求”。

日期和月份已经被限制在一个可以缩放的值范围内

天 (1 - 31) 月 (1 - 12)

对于这一年,您需要根据您的申请做出有根据的假设。因此,那一年也可以转移到一个缩放值。从你的数据来看,可能那一年是2012年不变的,不需要从头开始。

年 (2012 - 2013(?))

注意:问问自己,你是否为神经网络提供了足够的系统信息来预测下一个日期——也就是说,你的数据中是否已经有足够的模式?否则,您最终可能会训练一个随机预测器。

【讨论】:

数据包含很多年,所以年份是相关的。感谢您的快速回答!

以上是关于如何在一系列日期上训练 LSTM?的主要内容,如果未能解决你的问题,请参考以下文章

测试经过训练的 LSTM 模型后如何预测实际的未来值?

如何在一系列月份内按日期打印工作日的日期(不是周末)?

如何训练 LSTM 进行最简单的函数识别

如何让我的 LSTM 模型在训练后进行预测

如何在Keras训练LSTM的初始状态?

如何从特征向量或单词生成句子?