Я обучал модели сохранению модели контрольных точек каждую эпоху:
cp_callback = tf.keras.callbacks.ModelCheckpoint(
filepath='model.' + str(name) + '.{epoch:02d}-{val_loss:.4f}-{val_accuracy:.4f}.hdf5',
monitor='val_accuracy',
save_best_only=False,
mode='max',
verbose=1,
save_weights_only=False,
save_freq='epoch')
history = model.fit(
x=train_data_gen,
steps_per_epoch=((tot_train // batch_size)),
epochs=epochs,
validation_data=(validation_data_gen),
validation_steps=((tot_validation // batch_size)),
validation_freq=1,
initial_epoch=0,
shuffle=False,
workers=12,
use_multiprocessing=False,
callbacks=[cp_callback]
)
Я использовал предварительно обученную модель из tenorflow-hub, которая использует KerasLayer в качестве слоя модели.
Итак, моя полученная модель Сводка такова:
>>> model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
keras_layer (KerasLayer) (None, 2048) 23564800
_________________________________________________________________
dense (Dense) (None, 64) 131136
_________________________________________________________________
dropout (Dropout) (None, 64) 0
_________________________________________________________________
dense_1 (Dense) (None, 2) 130
=================================================================
Total params: 23,696,066
Trainable params: 131,266
Non-trainable params: 23,564,800
_________________________________________________________________
Теперь я бы загружал свою модель, используя API-интерфейсы tenorflow C ++, чтобы сделать вывод. Можно ли загрузить напрямую .hdf5?