Skip to main content

Autolog

strongly.autolog()          # every supported framework that is installed
model.fit(X, y) # logged: params, metrics, the model

strongly.autolog() logs training without any logging code. Training logs to the active run, or to a run autolog starts and ends itself (failed if training raises). Only the outermost training call logs, so a pipeline or a search logs once, not once per inner fit.

FrameworkWhat is logged
scikit-learnevery estimator's fit: its params, the data's shape, training_score, the model
XGBoostxgboost.train and XGBClassifier/XGBRegressor... fit: params, each evaluation metric at every round, the model
LightGBMlightgbm.train and LGBMClassifier/LGBMRegressor... fit: the same
CatBoostfit: params, every learn and validation metric by iteration, the model
PyTorch LightningTrainer.fit: the optimizer and learning rate, the logged metrics each epoch, the model
Keras / TensorFlowModel.fit: the optimizer config, loss and metrics each epoch, the model (model.keras)
Hugging Face TransformersTrainer.train: the training arguments, everything the Trainer logs at its step
fastaiLearner.fit: epochs and learning rate, loss and metrics each epoch
OptunaStudy.optimize: each trial as a nested run (its params and objective), the best value and params
statsmodelsevery model's fit: R², AIC, BIC, log-likelihood, F statistic, the fitted results
Prophetfit: its seasonality and changepoint settings, the data's date range, the model
spaCynlp.update while a run is active: each pipe's loss by update
gensimWord2Vec training while a run is active: its params

Options: strongly.autolog(include=["sklearn", "xgboost"]) or exclude=[...] picks frameworks; log_models, log_metrics, log_params and log_datasets (each default true) choose what is logged; exclusive=True logs only to runs autolog starts; extra_tags=[...] tags those runs; disable=True turns autolog off. A failure to log is reported as a warning and never stops training.