graph LR
DeepFM_fit["DeepFM.fit"]
DeepFM_fit_on_batch["DeepFM.fit_on_batch"]
DeepFM_evaluate["DeepFM.evaluate"]
DeepFM_training_termination["DeepFM.training_termination"]
DeepFM_get_batch["DeepFM.get_batch"]
DeepFM_fit -- "orchestrates" --> DeepFM_get_batch
DeepFM_fit -- "drives" --> DeepFM_fit_on_batch
DeepFM_fit -- "calls" --> DeepFM_evaluate
DeepFM_fit -- "consults" --> DeepFM_training_termination
DeepFM_fit_on_batch -- "receives data from" --> DeepFM_fit
DeepFM_evaluate -- "provides feedback to" --> DeepFM_fit
DeepFM_training_termination -- "informs" --> DeepFM_fit
DeepFM_get_batch -- "supplies data to" --> DeepFM_fit
The Model Training & Optimization subsystem is central to the project's machine learning lifecycle, focusing on the iterative process of training the DeepFM model.
The primary orchestrator of the entire model training lifecycle. It manages epochs, data shuffling, batch processing, periodic evaluation, and applies termination criteria.
Related Classes/Methods:
Executes a single forward and backward pass on a given batch of data. It calculates the loss and updates the model's parameters using TensorFlow's optimization algorithms.
Related Classes/Methods:
Assesses the model's performance on a given dataset (typically a validation set) during or after training. It computes relevant metrics to monitor training progress and inform termination decisions.
Related Classes/Methods:
Implements the logic to determine when to stop the training process. This could be based on convergence, maximum epochs, or other early stopping criteria.
Related Classes/Methods:
Provides mini-batches of input features and labels from the dataset. This component is crucial for feeding data to both the training (fit_on_batch) and evaluation (predict) processes.
Related Classes/Methods: