如何取消批处理 Tensorflow 2.0 数据集

How to unbatch a Tensorflow 2.0 Dataset

我有一个数据集,我使用以下代码创建了 tf.data.Dataset:

dataset = Dataset.from_tensor_slices(corona_new)
dataset = dataset.window(WINDOW_SIZE, 1, drop_remainder=True)
dataset = dataset.flat_map(lambda x: x.batch(WINDOW_SIZE))
dataset = dataset.map(lambda x: tf.transpose(x))

for i in dataset:
    print(i.numpy())
    break

当我 运行 它时,我得到以下输出(这是一批的示例):

[[  0. 125. 111. 232. 164. 134. 235. 190.] 
 [  0.  14.  16.   7.   9.   7.   6.   8.]
 [  0. 132. 199. 158. 148. 141. 179. 174.]
 [  0.   0.   0.   2.   0.   2.   1.   2.]
 [  0.   0.   0.   0.   3.   5.   0.   0.]]

如何取消批处理?

找到我的解决方案。

在 TensorFlow 2.0 中,您可以通过调用 .unbatch() 函数取消批处理 tf.data.Dataset

示例:dataset.unbatch()