Tensorflow2.0学習ノート------モデルの保存とロード

1322 ワード

前述tf 2について詳しく紹介した.0ネットワークを構築するいくつかの方法は、モデルが訓練された後、持続性が次の目標であり、モデルの保存とロードは不可欠な部分である.
Step 1:テスト用のネットワーク構造を構築する

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))

Step 2:トレーニングを開始し、モデルを保存する
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)                   #  

Step 3:モデルテストのロード
model.load_weights('./weight/model')
model.load_weights('./weight/model.h5')

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