簡體   English   中英

如何更新經過訓練的 model 中使用的 python 庫的版本

[英]how do I update the version of the python libraries used in a trained model

我在 Google colab 上訓練了一個 model,然后將其丟棄,然后我在我的系統上完成了 VS Code 上的項目。 我收到一條錯誤消息,指出版本不匹配,因為我有最新版本的庫,而 colab 有舊版本。 我在我的系統上重新訓練了 model,這花了很多時間,因為我的系統只有基本配置。 我對 colab 的唯一用途是將訓練壓力放在 colab 而不是我的系統上

我不知道會有版本沖突,因為我認為 Colab 會有最新版本的庫

我在 colab (Google) tensorflow 版本 2.9.2 和我的 Raspberry 4 tensorflow 版本 2.4.1 中。 所以不同的版本。 我在 colab 中使用 input_shape(220,220,3) 進行了預訓練 model VGG19。 我將圖像分類為 2 種類型

因此,一旦我在 Colab.Google 環境中訓練了 model,然后從 Colab 中訓練了 model 及其權重。

# serialize model to JSON
model_json =  loaded_model2.to_json()
with open('/content/drive/MyDrive/dataset/extract/model_5.json', "w") as json_file:
    json_file.write(model_json)
# serialize weights to HDF5

loaded_model2.save_weights('/content/drive/MyDrive/model_5.h5')
print("Saved model to disk")

正如我所指出的,我打算在我的 Raspberry4 上使用經過訓練的 model。 因此,我在 Raspberry 上創建了一個 model,就像我在 Colab 中所做的那樣,但我不“適合”。 我接下來要做的是使用在 Colab.Google 中生成的“權重”加載 .h5 文件。 原則上這對我有用

model_new = tf.keras.Sequential()
model_new.add(tf.keras.applications.VGG19(include_top=false, weights='imagenet',pooling='avg',input_shape=(220,220,3)))
model_new.add(tf.keras.layers.Dense(2,activation="softmax"))
opt = tf.keras.optimizers.SGC(0,004)
model_new.compile(loss='categorical_crossentropy',optimizer=opt,metrics=['accuracy'])

model_new.load_weights('/home/pi/projects/models/model_5.h5)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM