Tensorflow 如何配置花卉数据集以提高性能?
pythonserver side programmingprogrammingtensorflow更新于 2024/5/31 17:48:17
创建模型时,花卉数据集会给出一定百分比的准确度。如果需要配置模型以提高性能,则缓冲区预取将与重新缩放层一起使用。通过将重新缩放层作为 Keras 模型的一部分,将此层应用于数据集上的 Keras 模型。
阅读更多:什么是 TensorFlow,以及 Keras 如何与 TensorFlow 配合使用以创建神经网络?
我们将使用花卉数据集,其中包含数千朵花的图像。它包含 5 个子目录,每个类都有一个子目录。
我们使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 有助于在浏览器上运行 Python 代码,无需配置,并且可以免费访问 GPU(图形处理单元)。 Colaboratory 已在 Jupyter Notebook 上构建。
AUTOTUNE = tf.data.AUTOTUNE
train_ds = train_ds.cache().prefetch(buffer_size=AUTOTUNE)
val_ds = val_ds.cache().prefetch(buffer_size=AUTOTUNE)
num_classes = 5
print("构建顺序模型")
model = tf.keras.Sequential([
layers.experimental.preprocessing.Rescaling(1./255),
layers.Conv2D(32, 3,activation='relu'),
layers.MaxPooling2D(),
layers.Conv2D(32, 3, activation='relu'),
layers.MaxPooling2D(),
layers.Conv2D(32, 3, activation='relu'),
layers.MaxPooling2D(),
layers.Flatten(),
layers.Dense(128, activation='relu'),
layers.Dense(num_classes)
])
代码来源:https://www.tensorflow.org/tutorials/load_data/images
输出
构建顺序模型
解释
- 使用缓冲预取,以便可以从磁盘获取数据而不会阻塞 I/O。
- 这是加载数据时的重要步骤。
- ".cache()"方法有助于在第一个时期从磁盘加载图像后将其保存在内存中。
- 这可确保数据集在训练模型时不会成为障碍。
- 如果数据集太大而无法放入内存,则可以使用相同的方法创建高性能磁盘缓存。
- ".prefetch()"方法在数据训练时将数据预处理和模型执行操作重叠。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

