來自一個或多個二進製文件的固定長度記錄的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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。