繁体   English   中英

tf.data.Dataset 步进批处理

[英]tf.data.Dataset with stepping batches

我有一个包含 8760 个样本的时间数据集。 不知道有没有办法按1步批处理,​​即:第一批包含1到4号,第二批包含2到5号,第三批包含3号到6 等

由于您只有 8760 个样本,因此您可能可以负担得起(就 RAM 成本而言)最简单的解决方案——只需使用普通的 Python 代码转换您的数据:

dataset = [sample1, sample2, ... sample8760]
transformed_dataset = []
for i in range(len(dataset) - 3):
    transformed_dataset.append(dataset[i:i + 4])

如果您无法将数据集存储在内存中,请尝试使用生成器函数(自 TF 2.1 起,您可以将生成器直接传递给model.fit()

def dataset_generator():
     for i in range(len(dataset) - 3):
         yield dataset[i:i + 4]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM