用法
batch(
batch_size, drop_remainder=False, num_parallel_calls=None, deterministic=None,
name=None
)
参数
-
batch_size
tf.int64
标量tf.Tensor
,表示要在单个批次中组合的此数据集的连续元素的数量。 -
drop_remainder
(可选。)一个tf.bool
标量tf.Tensor
,表示在最后一批少于batch_size
元素的情况下是否应删除它;默认行为是不丢弃较小的批次。 -
num_parallel_calls
(可选。)tf.int64
标量tf.Tensor
,表示要并行异步计算的批次数。如果未指定,批次将按顺序计算。如果使用值tf.data.AUTOTUNE
,则并行调用的数量根据可用资源动态设置。 -
deterministic
(可选。)指定num_parallel_calls
时,如果指定了此布尔值(True
或False
),它将控制转换生成元素的顺序。如果设置为False
,则允许转换产生无序元素,以用确定性换取性能。如果未指定,则tf.data.Options.deterministic
选项(默认为True
)控制行为。 -
name
(可选。) tf.data 操作的名称。
返回
-
Dataset
一个Dataset
。
将此数据集的连续元素组合成批次。
dataset = tf.data.Dataset.range(8)
dataset = dataset.batch(3)
list(dataset.as_numpy_iterator())
[array([0, 1, 2]), array([3, 4, 5]), array([6, 7])]
dataset = tf.data.Dataset.range(8)
dataset = dataset.batch(3, drop_remainder=True)
list(dataset.as_numpy_iterator())
[array([0, 1, 2]), array([3, 4, 5])]
结果元素的组件将有一个额外的外部维度,它将是batch_size
(或者如果batch_size
没有将输入元素N
的数量除以drop_remainder
是最后一个元素,则为N % batch_size
,并且drop_remainder
是False
)。如果您的程序依赖于具有相同外部尺寸的批次,则应将 drop_remainder
参数设置为 True
以防止生成较小的批次。
注意:如果您的程序要求数据具有静态已知的形状(例如,使用 XLA 时),您应该使用 drop_remainder=True
。如果没有drop_remainder=True
,输出数据集的形状将具有未知的前导维度,因为最终批次可能较小。
相关用法
- Python tf.data.experimental.RandomDataset.bucket_by_sequence_length用法及代码示例
- Python tf.data.experimental.RandomDataset.group_by_window用法及代码示例
- Python tf.data.experimental.RandomDataset.cache用法及代码示例
- Python tf.data.experimental.RandomDataset.map用法及代码示例
- Python tf.data.experimental.RandomDataset.from_tensor_slices用法及代码示例
- Python tf.data.experimental.RandomDataset.as_numpy_iterator用法及代码示例
- Python tf.data.experimental.RandomDataset.get_single_element用法及代码示例
- Python tf.data.experimental.RandomDataset.take用法及代码示例
- Python tf.data.experimental.RandomDataset.range用法及代码示例
- Python tf.data.experimental.RandomDataset.unbatch用法及代码示例
- Python tf.data.experimental.RandomDataset.scan用法及代码示例
- Python tf.data.experimental.RandomDataset.snapshot用法及代码示例
- Python tf.data.experimental.RandomDataset.from_generator用法及代码示例
- Python tf.data.experimental.RandomDataset.repeat用法及代码示例
- Python tf.data.experimental.RandomDataset.choose_from_datasets用法及代码示例
- Python tf.data.experimental.RandomDataset.shuffle用法及代码示例
- Python tf.data.experimental.RandomDataset.window用法及代码示例
- Python tf.data.experimental.RandomDataset.random用法及代码示例
- Python tf.data.experimental.RandomDataset.enumerate用法及代码示例
- Python tf.data.experimental.RandomDataset.padded_batch用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.data.experimental.RandomDataset.batch。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。