TensorFlow 提供了一系列用于数据处理的 API,使得在构建机器学习模型时能够高效地处理和转换数据。以下是对 tf.data API 的简要介绍。

数据集 (Dataset)

tf.data.Dataset 是 TensorFlow 提供的一个抽象,用于表示数据集。它允许你将各种数据源(如文件、内存中的列表、生成器等)转换为可迭代的对象。

创建数据集

import tensorflow as tf

# 从文件创建数据集
def from_file(filename, batch_size=32):
    return tf.data.TextLineDataset(filename).batch(batch_size)

# 从内存中的列表创建数据集
def from_list(data_list, batch_size=32):
    return tf.data.Dataset.from_tensor_slices(data_list).batch(batch_size)

数据管道 (Pipeline)

数据管道是用于构建复杂数据处理流程的工具。它允许你将多个操作(如读取、转换、批处理等)串联起来。

数据管道示例

import tensorflow as tf

# 定义数据处理步骤
def preprocess(x, y):
    return x, y

# 创建数据管道
def build_pipeline(filename):
    dataset = tf.data.TextLineDataset(filename)
    dataset = dataset.map(preprocess)
    dataset = dataset.batch(32)
    return dataset

# 使用数据管道
filename = "your_data.txt"
dataset = build_pipeline(filename)

扩展阅读

TensorFlow 图标