在用户可以多次作为训练数据样本的数据上训练双向 LSTM 是否会导致数据泄漏?
每一行都是给定用户在不同时间点的快照。他们过去 N 个月的行为是特征,他们当前的行为是目标。
示例数据:“几个月前”列是唯一的特征。特征和目标连续值。
+------------------+---------+--------------------+----------------+----------------+----------------+-----------------+----------------+------------------------+
| Train Test Split | User Id | Current Month Date | 5 Months Prior | 4 Months Prior | 3 Months Prior | 2 Months Prior | 1 Month Prior | Target (Current Month) |
+------------------+---------+--------------------+----------------+----------------+----------------+-----------------+----------------+------------------------+
| test | 123 | June | 1 | 4 | 2 | 8 | 2 | 6 |
| test | 123 | May | 0 | 1 | 4 | 2 | 8 | 2 |
| training | 123 | April | 0 | 0 | 1 | 4 | 2 | 8 |
| training | 123 | March | 0 | 0 | 0 | 1 | 4 | 2 |
| training | 123 | Feb | 0 | 0 | 0 | 0 | 1 | 4 |
+------------------+---------+--------------------+----------------+----------------+----------------+-----------------+----------------+------------------------+
双向 LSTM 会知道训练数据中的某些列包含其他行的目标吗?
示例:4 月的“2 个月前”和“1 个月前”的 4 和 2,将具有 3 月的“1 个月前”和目标的模式,4 和 2。
直觉上我认为它不会学习这些关系,我相信其他机器学习模型,比如树模型和线性回归。但是我没有足够的关于 LSTM 的知识可以肯定地说。我可以通过使用随机数生成器创建模拟数据来验证,但我宁愿理解数学/直觉。