如何使用Tensorflow和花卉数据集来编译和拟合模型?


花卉数据集可以使用分别使用“编译”和“拟合”方法进行编译和拟合到模型中。训练数据集和验证数据集作为参数传递给“拟合”方法。周期数也在“拟合”方法中定义。

阅读更多: 什么是TensorFlow以及Keras如何与TensorFlow一起创建神经网络?

我们将使用花卉数据集,其中包含数千朵花的图像。它包含5个子目录,每个类都有一个子目录。

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

print("The model is being compiled")
model.compile(
   optimizer='adam',
   loss=tf.losses.SparseCategoricalCrossentropy(from_logits=True),
   metrics=['accuracy'])
print("The model is being fit to the data")
model.fit(
   train_ds,
   validation_data=val_ds,
   epochs=3
)

代码来源:https://tensorflowcn.cn/tutorials/load_data/images

输出

The model is being compiled
The model is being fit to the data
Epoch 1/3
92/92 [==============================] - 107s 1s/step - loss: 1.3570 - accuracy: 0.4183 - val_loss: 1.0730 - val_accuracy: 0.5913
Epoch 2/3
92/92 [==============================] - 101s 1s/step - loss: 1.0185 - accuracy: 0.5927 - val_loss: 1.0041 - val_accuracy: 0.6199
Epoch 3/3
92/92 [==============================] - 95s 1s/step - loss: 0.8691 - accuracy: 0.6529 - val_loss: 0.9985 - val_accuracy: 0.6281
<tensorflow.python.keras.callbacks.History at 0x7f2cdcbbba90>

解释

  • 创建层并训练数据后,下一步就是编译已构建的模型。
  • 编译完成后,模型将拟合到输入数据集。
  • 与训练准确率相比,验证准确率的值较低。
  • 这意味着我们的模型过拟合了。

更新于: 2021年2月19日

130 次浏览

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告