File size: 957 Bytes
05f7b3b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
from cnnClassfier.config.configuration import PrepareCallbacksConfig
import time
import os
import tensorflow as tf
class PrepareCallback:
def __init__(self, config: PrepareCallbacksConfig):
self.config = config
@property
def _create_tb_callbacks(self):
timestamp = time.strftime('%Y-%m-%d-%H-%M-%S')
tb_running_log_dir = os.path.join(
str(self.config.tensorboard_root_log_dir), # Convert to string
f"tb_logs_at_{timestamp}",
)
return tf.keras.callbacks.TensorBoard(log_dir=tb_running_log_dir)
@property
def _create_ckpt_callbacks(self):
return tf.keras.callbacks.ModelCheckpoint(
filepath=str(self.config.checkpoint_model_filepath), # Convert to string
save_best_only=True
)
def get_tb_callbacks(self):
return [
self._create_tb_callbacks,
self._create_ckpt_callbacks
] |