我有一个很长的时间序列。我想训练一个 LSTM 来区分每个时间步长(序列到序列)的两种行为(A 或 B)。
因为时间序列很长,我计划提取较短的、部分重叠的子序列,并将它们中的每一个用作 LSTM 的一个训练输入。
在我的训练/验证/测试拆分中,我是否必须使用较旧的子序列进行训练并使用较新的子序列进行验证和测试?或者我可以将它们视为独立样本并随机打乱它们,因为无论如何 LSTM 将以空内存开始每个子序列?
我问的原因是因为我注意到,由于时间序列的收集方式,前半部分主要包含行为 A,而后半部分主要包含行为 B。这将导致训练主要在 A 上,而测试主要在 B 上,这确实不能反映这样一个事实,即在生产中,系统将同时看到主要 A 期和主要 B 期。