来自一个或多个二进制文件的固定长度记录的Dataset
。
继承自:Dataset
用法
tf.data.FixedLengthRecordDataset(
filenames, record_bytes, header_bytes=None, footer_bytes=None, buffer_size=None,
compression_type=None, num_parallel_reads=None, name=None
)
参数
-
filenames
一个tf.string
张量或tf.data.Dataset
包含一个或多个文件名。 -
record_bytes
一个tf.int64
标量,表示每条记录中的字节数。 -
header_bytes
(可选。)tf.int64
标量,表示在文件开头要跳过的字节数。 -
footer_bytes
(可选。)tf.int64
标量,表示文件末尾要忽略的字节数。 -
buffer_size
(可选。)tf.int64
标量,表示读取时要缓冲的字节数。 -
compression_type
(可选。)tf.string
标量评估为""
(无压缩)、"ZLIB"
或"GZIP"
之一。 -
num_parallel_reads
(可选。)tf.int64
标量,表示要并行读取的文件数。如果大于1,则以交错的顺序输出并行读取的文件记录。如果您的输入管道存在 I/O 瓶颈,请考虑将此参数设置为大于 1 的值以并行化 I/O。如果None
,文件将被顺序读取。 -
name
(可选。) tf.data 操作的名称。
属性
-
element_spec
此数据集元素的类型规范。dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3]) dataset.element_spec TensorSpec(shape=(), dtype=tf.int32, name=None)
如需更多信息,请阅读本指南。
tf.data.FixedLengthRecordDataset
从二进制文件中读取固定长度的记录并创建一个数据集,其中每条记录都成为数据集的一个元素。二进制文件可以有一个固定长度的标题和一个固定长度的页脚,它们都将被跳过。
例如,假设我们有 2 个文件 "fixed_length0.bin" 和 "fixed_length1.bin",内容如下:
with open('/tmp/fixed_length0.bin', 'wb') as f:
f.write(b'HEADER012345FOOTER')
with open('/tmp/fixed_length1.bin', 'wb') as f:
f.write(b'HEADER6789abFOOTER')
我们可以从它们构造一个FixedLengthRecordDataset
,如下所示:
dataset1 = tf.data.FixedLengthRecordDataset(
filenames=['/tmp/fixed_length0.bin', '/tmp/fixed_length1.bin'],
record_bytes=2, header_bytes=6, footer_bytes=6)
数据集的元素是:
for element in dataset1.as_numpy_iterator():
print(element)
b'01'
b'23'
b'45'
b'67'
b'89'
b'ab'
相关用法
- Python tf.data.FixedLengthRecordDataset.repeat用法及代码示例
- Python tf.data.FixedLengthRecordDataset.cardinality用法及代码示例
- Python tf.data.FixedLengthRecordDataset.bucket_by_sequence_length用法及代码示例
- Python tf.data.FixedLengthRecordDataset.as_numpy_iterator用法及代码示例
- Python tf.data.FixedLengthRecordDataset.take_while用法及代码示例
- Python tf.data.FixedLengthRecordDataset.shard用法及代码示例
- Python tf.data.FixedLengthRecordDataset.group_by_window用法及代码示例
- Python tf.data.FixedLengthRecordDataset.unique用法及代码示例
- Python tf.data.FixedLengthRecordDataset.filter用法及代码示例
- Python tf.data.FixedLengthRecordDataset.choose_from_datasets用法及代码示例
- Python tf.data.FixedLengthRecordDataset.rejection_resample用法及代码示例
- Python tf.data.FixedLengthRecordDataset.reduce用法及代码示例
- Python tf.data.FixedLengthRecordDataset.from_tensor_slices用法及代码示例
- Python tf.data.FixedLengthRecordDataset.apply用法及代码示例
- Python tf.data.FixedLengthRecordDataset.skip用法及代码示例
- Python tf.data.FixedLengthRecordDataset.from_generator用法及代码示例
- Python tf.data.FixedLengthRecordDataset.enumerate用法及代码示例
- Python tf.data.FixedLengthRecordDataset.scan用法及代码示例
- Python tf.data.FixedLengthRecordDataset.random用法及代码示例
- Python tf.data.FixedLengthRecordDataset.sample_from_datasets用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.data.FixedLengthRecordDataset。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。