Tensorflow2.0學習筆記------模型保存和加載

前文已經比較詳細的介紹了tf2.0構建網絡的幾種方式,當模型可以訓練起來之後,可持久化就是下一個目標,保存和加載模型是不可或缺的部分。

Step1:構建一個網絡結構用於測試


import tensorflow as tf
from tensorflow.keras import layers
import numpy as np


model = tf.keras.Sequential()
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10, activation='softmax'))

model.compile(optimizer=tf.keras.optimizers.Adam(0.001),
             loss=tf.keras.losses.categorical_crossentropy,
             metrics=[tf.keras.metrics.categorical_accuracy])

train_x = np.random.random((1000, 100))
train_y = np.random.random((1000, 10))
 
val_x = np.random.random((200, 100))
val_y = np.random.random((200, 10))

Step2:啓動訓練並保存模型

model.fit(train_x, train_y, epochs=10, batch_size=100,
          validation_data=(val_x, val_y))
 
model.save_weight(./weight/model)      # 保存權重文件 weight文件夾下三個文件
model.save_weight(./weight/model.h5)   # 保存權重文件 weight文件夾下h5文件
 
model.save(all_model.h5)                   # 保存整個模型

Step3:加載模型測試

model.load_weights('./weight/model')
model.load_weights('./weight/model.h5')

model = tf.keras.models.load_model('all_model.h5')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章