如何在Keras中处理样本和批次之间的共享数据

如何在Keras中处理样本和批次之间的共享数据,keras,Keras,我正在使用Keras进行时间序列预测,我想创建一个基于自我注意机制的模型,它不会使用任何RNN。对于每个样本,我们查看样本的最后x个时间步,以预测下一个样本 换句话说,我希望向网络提供(num_批次、num_样本、时间步、功能)和获取(num_批次、预测) 这有1个问题 存在大量不必要的数据重复,其中样本n的时间步长和特性与样本n+1基本相同,只是向左移动了1 假设您的数据集非常大,您将如何处理此问题?我对此不太熟悉,但如果您的问题是“我有太多复制数据”,我认为您可以解决为数据设计生成器的问题,

我正在使用Keras进行时间序列预测,我想创建一个基于自我注意机制的模型,它不会使用任何RNN。对于每个样本,我们查看样本的最后x个时间步,以预测下一个样本

换句话说,我希望向网络提供(num_批次、num_样本、时间步、功能)和获取(num_批次、预测)

这有1个问题

  • 存在大量不必要的数据重复,其中样本n的时间步长和特性与样本n+1基本相同,只是向左移动了1

  • 假设您的数据集非常大,您将如何处理此问题?

    我对此不太熟悉,但如果您的问题是“我有太多复制数据”,我认为您可以解决为数据设计生成器的问题,然后将生成器作为Keras/TensorFlow拟合函数的输入传递(根据TensorFlow API规范,它支持生成器作为输入)


    如果你的问题与模型背后的逻辑有关,我看不出问题所在。这就像你有一个滑动窗口,对于每个窗口,你预测一个值,然后你将窗口移动一定量(在你的例子中,一个).你能就你的担心再多争论一点吗?

    谢谢你的回复。我必须研究生成器。我确实需要一批多个样本,但只要我不必按时间步长复制整个数据集,我就可以了。