如何使用TensorFlow来配置数据集以提高性能?

如何使用TensorFlow来配置数据集以提高性能?

使用buffer prefetch、shuffle方法和cache方法可以配置鲜花数据集以提高性能。缓冲预取可以确保在从磁盘读取数据时没有 I/O 阻塞。 Dataset.cache() 方法可以在第一轮加载数据后将图片保持在内存中。Dataset.prefetch() 方法可以在训练时重叠数据预处理和模型执行。

更多Python相关文章,请阅读:Python 教程

我们使用 Keras Sequential API 来构建一个顺序模型,用于处理普通的层栈,其中每个层都有一个输入张量和一个输出张量。

我们使用 Google Colaboratory 运行下面的代码。Google Colab 或 Colaboratory 可以通过浏览器运行 Python 代码,无需任何配置,免费访问 GPU(图形处理器)。 Colaboratory 建立在 Jupyter Notebook 之上。

print("为了更好的性能配置数据集")
AUTOTUNE = tf.data.AUTOTUNE
train_ds = train_ds.cache().shuffle(1000).prefetch(buffer_size=AUTOTUNE)
val_ds = val_ds.cache().prefetch(buffer_size=AUTOTUNE)

代码来源:https://www.tensorflow.org/tutorials/images/classification

输出

为了更好的性能配置数据集

说明

  • 可以使用缓冲预取的概念,以便在从磁盘读取数据时没有 I/O 阻塞。
  • 在加载数据时有两种重要的方法:
    • cache() 方法可以在第一轮加载数据后将图片保持在内存中,以确保数据集在模型训练时不会成为瓶颈。
    • 如果数据集太大无法放入内存中,则可以使用这个方法创建一个性能良好的磁盘缓存。
    • prefetch() 方法可以在训练时重叠数据预处理和模型执行。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程