如何使用Tensorflow和預訓練模型透過Python繼續訓練模型?


可以使用Tensorflow和預訓練模型透過使用‘fit’方法並指定訓練步數來繼續訓練模型。驗證資料用於擬合模型。

閱讀更多: 什麼是TensorFlow以及Keras如何與TensorFlow一起建立神經網路?

包含至少一層卷積層的神經網路稱為卷積神經網路。我們可以使用卷積神經網路來構建學習模型。

我們將瞭解如何藉助來自預訓練網路的遷移學習對貓和狗的影像進行分類。影像分類遷移學習背後的直覺是,如果一個模型在一個大型且通用的資料集上進行訓練,則該模型可以有效地用作視覺世界的通用模型。它將學習特徵對映,這意味著使用者無需從頭開始在一個大型資料集上訓練大型模型。

閱讀更多: 如何預訓練自定義模型?

我們使用Google Colaboratory執行以下程式碼。Google Colab或Colaboratory幫助在瀏覽器上執行Python程式碼,無需任何配置,並且可以免費訪問GPU(圖形處理單元)。Colaboratory構建在Jupyter Notebook之上。

示例

print("The model training continues")
fine_tune_epochs = 10
total_epochs = initial_epochs + fine_tune_epochs
print("The model is being fit to the data")
history_fine = model.fit(train_dataset,
   epochs=total_epochs,
   initial_epoch=history.epoch[-1],
   validation_data=validation_dataset)

程式碼來源 −https://www.tensorflow.org/tutorials/images/transfer_learning

輸出

The model training continues
The model is being fit to the data
Epoch 10/20
63/63 [==============================] - 85s 1s/step - loss: 0.1568 - accuracy: 0.9244 - val_loss: 0.0506 - val_accuracy: 0.9864
Epoch 11/20
63/63 [==============================] - 73s 1s/step - loss: 0.1433 - accuracy: 0.9419 - val_loss: 0.0429 - val_accuracy: 0.9851
Epoch 12/20
63/63 [==============================] - 72s 1s/step - loss: 0.0984 - accuracy: 0.9609 - val_loss: 0.0450 - val_accuracy: 0.9827
Epoch 13/20
63/63 [==============================] - 72s 1s/step - loss: 0.1130 - accuracy: 0.9567 - val_loss: 0.0377 - val_accuracy: 0.9876
Epoch 14/20
63/63 [==============================] - 72s 1s/step - loss: 0.0783 - accuracy: 0.9685 - val_loss: 0.0406 - val_accuracy: 0.9889
Epoch 15/20
63/63 [==============================] - 72s 1s/step - loss: 0.0740 - accuracy: 0.9697 - val_loss: 0.0365 - val_accuracy: 0.9839
Epoch 16/20
63/63 [==============================] - 72s 1s/step - loss: 0.0794 - accuracy: 0.9647 - val_loss: 0.0376 - val_accuracy: 0.9839
Epoch 17/20
63/63 [==============================] - 71s 1s/step - loss: 0.0744 - accuracy: 0.9710 - val_loss: 0.0318 - val_accuracy: 0.9913
Epoch 18/20
63/63 [==============================] - 72s 1s/step - loss: 0.0725 - accuracy: 0.9719 - val_loss: 0.0410 - val_accuracy: 0.9876
Epoch 19/20
63/63 [==============================] - 72s 1s/step - loss: 0.0761 - accuracy: 0.9684 - val_loss: 0.0331 - val_accuracy: 0.9889
Epoch 20/20
63/63 [==============================] - 71s 1s/step - loss: 0.0632 - accuracy: 0.9742 - val_loss: 0.0405 - val_accuracy: 0.9814

解釋

  • 模型擬合數據。
  • 這是使用“fit”方法完成的。
  • 使用的時期數最初為10。

更新於: 2021年2月25日

599 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.