
378
3부 언어 모델 훈련 및 미세 튜닝
)
# 훈련 과정을 수행할 Trainer 객체
trainer = Trainer(
model=model,
args=training_args,
train_dataset=tokenized_train,
eval_dataset=tokenized_test,
processing_class=tokenizer,
data_collator=data_collator,
compute_metrics=compute_metrics,
)
TrainingArguments
클래스는 학습률이나 훈련할 에포크 횟수 같은 하이퍼파라미터를 정의
합니다. 그다음
Trainer
객체를 사용하여 훈련 과정을 실행합니다.
trainer.train()
마지막으로 모델을 훈련하고 평가합니다.
trainer.evaluate()
{'eval_loss': 0.3663691282272339,
'eval_f1': 0.8492366412213741,
'eval_runtime': 4.5792,
'eval_samples_per_second': 232.791,
'eval_steps_per_second': 14.631,
'epoch': 1.0}
F1
점수
0
.
85
는
4
장에서 사용했던 작업 특화 모델 (
F1
점수
0
.
80
)보다 꽤 높습니다. 이는 사
전 훈련된 모델을 사용하는 것보다 모델을