如何使用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://www.tensorflow.org/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 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告