سلام. برای این کار، میتوانید از مکانیزم ذخیرهسازی و بازیابی مدل در TensorFlow استفاده کنید. در زیر یک نمونه کد برای این کار آورده شده است:
برای ذخیرهسازی مدل در هر epoch یا step میتوانید از کلاس `tf.train.Checkpoint` استفاده کنید:
import tensorflow as tf
model = ... # مدل خود را اینجا تعریف کنید
optimizer = ... # بهینهساز خود را اینجا تعریف کنید
checkpoint = tf.train.Checkpoint(optimizer=optimizer, model=model)
manager = tf.train.CheckpointManager(checkpoint, './tf_ckpts', max_to_keep=3)
# در هر epoch یا step:
loss = ... # محاسبه خطا
optimizer.minimize(loss, model.trainable_variables)
manager.save() # ذخیرهسازی مدل
برای بازیابی مدل از checkpoint آخر، میتوانید از کد زیر استفاده کنید:
checkpoint.restore(manager.latest_checkpoint)
if manager.latest_checkpoint:
print("Restored from {}".format(manager.latest_checkpoint))
else:
print("Initializing from scratch.")
این کد مدل را از checkpoint آخر بازیابی میکند. اگر checkpoint وجود نداشته باشد، مدل را از ابتدا میسازد.