TQDMProgressBar¶
- class lightning.pytorch.callbacks.TQDMProgressBar(refresh_rate=1, process_position=0)[source]¶
- Bases: - lightning.pytorch.callbacks.progress.progress_bar.ProgressBar- This is the default progress bar used by Lightning. It prints to - stdoutusing the- tqdmpackage and shows up to four different bars:- sanity check progress: the progress during the sanity check run 
- train progress: shows the training progress. It will pause if validation starts and will resume when it ends, and also accounts for multiple validation runs during training when - val_check_intervalis used.
- validation progress: only visible during validation; shows total progress over all validation datasets. 
- test progress: only active when testing; shows total progress over all test datasets. 
 - For infinite datasets, the progress bar never ends. - If you want to customize the default - tqdmprogress bars used by Lightning, you can override specific methods of the callback class and pass your custom implementation to the- Trainer.- Example - >>> class LitProgressBar(TQDMProgressBar): ... def init_validation_tqdm(self): ... bar = super().init_validation_tqdm() ... bar.set_description('running validation ...') ... return bar ... >>> bar = LitProgressBar() >>> from lightning.pytorch import Trainer >>> trainer = Trainer(callbacks=[bar]) - Parameters
- refresh_rate¶ ( - int) – Determines at which rate (in number of batches) the progress bars get updated. Set it to- 0to disable the display.
- process_position¶ ( - int) – Set this to a value greater than- 0to offset the progress bars by this many lines. This is useful when you have progress bars defined elsewhere and want to show all of them together. This corresponds to- process_positionin the- Trainer.
 
 - enable()[source]¶
- You should provide a way to enable the progress bar. - The - Trainerwill call this in e.g. pre-training routines like the learning rate finder. to temporarily enable and disable the training progress bar.- Return type
 
 - init_predict_tqdm()[source]¶
- Override this to customize the tqdm bar for predicting. - Return type
- Tqdm
 
 - init_sanity_tqdm()[source]¶
- Override this to customize the tqdm bar for the validation sanity run. - Return type
- Tqdm
 
 - init_validation_tqdm()[source]¶
- Override this to customize the tqdm bar for validation. - Return type
- Tqdm
 
 - on_predict_batch_end(trainer, pl_module, outputs, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the predict batch ends. - Return type
 
 - on_predict_batch_start(trainer, pl_module, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the predict batch begins. - Return type
 
 - on_test_batch_end(trainer, pl_module, outputs, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the test batch ends. - Return type
 
 - on_test_batch_start(trainer, pl_module, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the test batch begins. - Return type
 
 - on_train_batch_end(trainer, pl_module, outputs, batch, batch_idx)[source]¶
- Called when the train batch ends. - Note - The value - outputs["loss"]here will be the normalized value w.r.t- accumulate_grad_batchesof the loss returned from- training_step.- Return type
 
 - on_train_epoch_end(trainer, pl_module)[source]¶
- Called when the train epoch ends. - To access all batch outputs at the end of the epoch, you can cache step outputs as an attribute of the - pytorch_lightning.LightningModuleand access them in this hook:- class MyLightningModule(L.LightningModule): def __init__(self): super().__init__() self.training_step_outputs = [] def training_step(self): loss = ... self.training_step_outputs.append(loss) return loss class MyCallback(L.Callback): def on_train_epoch_end(self, trainer, pl_module): # do something with all training_step outputs, for example: epoch_mean = torch.stack(pl_module.training_step_outputs).mean() pl_module.log("training_epoch_mean", epoch_mean) # free up the memory pl_module.training_step_outputs.clear() - Return type
 
 - on_validation_batch_end(trainer, pl_module, outputs, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the validation batch ends. - Return type
 
 - on_validation_batch_start(trainer, pl_module, batch, batch_idx, dataloader_idx=0)[source]¶
- Called when the validation batch begins. - Return type