If you initialized a Trainer object, it will do the training boiler plate for you. Using the TrainingArguments, you can additionally customize your training process.
One important argument is the evaluation_strategy which is set to “no” by default, thus no evaluation is done while training. You can set it up either per steps (using eval_steps) or at the end of each epoch. Make sure to set up an evaluation dataset beforehand.
# example snippet # define hyperparameters training_args = TrainingArguments( [..] evaluation_strategy="steps", eval_steps=100, ) # create TensorBoard Writer and assigns it to a Callback object writer = SummaryWriter("path/to/tensorboardlogs") tbcallback = TensorBoardCallback(writer) # defines model trainer = Trainer( [..] args=training_args train_dataset=train, eval_dataset=eval callbacks=[tbcallback] ) trainer.train()
We also set a TensorboardCallback, so that metrics are directly send to Tensorboard after each evaluation.
Fine-tuning a model with the Trainer API, access under: https://huggingface.co/course/chapter3/3?fw=pt