Skip to content

training

allennlp.tango.training

[SOURCE]


AllenNLP Tango is an experimental API and parts of it might change or disappear every time we release a new version.

TrainingStep

@Step.register("training")
class TrainingStep(Step)

This step trains a model given the model, the dataset, and various hyperparameters.

DETERMINISTIC

class TrainingStep(Step):
 | ...
 | DETERMINISTIC = True

VERSION

class TrainingStep(Step):
 | ...
 | VERSION = "003"

FORMAT

class TrainingStep(Step):
 | ...
 | FORMAT: Format = TorchFormat()

run

class TrainingStep(Step):
 | ...
 | def run(
 |     self,
 |     model: Lazy[Model],
 |     dataset: DatasetDict,
 |     data_loader: Lazy[TangoDataLoader],
 |     optimizer: Lazy[Optimizer],
 |     validation_data_loader: Optional[Lazy[TangoDataLoader]] = None,
 |     training_split: str = "train",
 |     validation_split: Optional[str] = None,
 |     patience: Optional[int] = None,
 |     validation_metric: Union[str, List[str]] = "-loss",
 |     num_epochs: int = 20,
 |     checkpointer: Optional[Lazy[Checkpointer]] = None,
 |     grad_norm: Union[float, bool] = False,
 |     grad_clipping: Optional[float] = None,
 |     learning_rate_scheduler: Optional[Lazy[LearningRateScheduler]] = None,
 |     momentum_scheduler: Optional[Lazy[MomentumScheduler]] = None,
 |     moving_average: Optional[Lazy[MovingAverage]] = None,
 |     callbacks: List[Lazy[TrainerCallback]] = None,
 |     num_gradient_accumulation_steps: int = 1,
 |     use_amp: bool = False,
 |     enable_default_callbacks: bool = True,
 |     run_confidence_checks: bool = True,
 |     no_grad: Optional[List[str]] = None,
 |     limit_batches_per_epoch: Optional[int] = None
 | ) -> Model