【发布时间】:2019-09-09 04:49:15
【问题描述】:
在我的第一个 TensorFlow 项目中,我有一个大数据集(1M 个元素),其中包含 8 个类别的元素,当然每个类别都有不同数量的元素。我想将大数据集拆分为 10 个专有的小数据集,每个小数据集大约占每个类别的 1/10。 (这是为了 10 倍交叉验证的目的。)
这是我的做法。 我最终有 80 个数据集,每个类别有 10 个小数据集,然后我使用 sample_from_datasets 从其中的 80 个中随机抽取数据。但是,经过一些步骤后,我遇到了很多警告说“DirectedInterleave 选择了一个用尽的输入:36”,其中 36 可以是其他一些整数。
我想做sample_from_datasets 的原因是我试图对原始数据集进行洗牌。即使 shuffle 只有 0.4 x 总元素,仍然需要很长时间才能完成(大约 20 分钟)。
我的问题是 1.根据我的情况,关于如何构建数据集有什么好的建议吗? 2. 洗牌时间长正常吗?有更好的洗牌解决方案吗? 3. 为什么我会得到这个DirectIngerleave 选择了一个用尽的输入:警告?又是什么意思?
谢谢。
【问题讨论】:
标签: tensorflow dataset