코드 10-48 모델의 파라미터(옵티마이저) 미세 조정 및 모델 훈련
optimizer = optim.Adam(model.parameters(), lr=2e-5) ------ 아담 옵티마이저와 적절한 학습률(2e-5)로 버트 모델을 미세 조정합니다.
train(model=model, optimizer=optimizer) ------ 모델을 학습시킵니다.
다음은 모델의 학습 결과입니다.
Epoch [1/5], Step [510/5100], Train Loss: 0.7124, Valid Loss: 0.6968 Model saved to ==> e:/torch/chap10/data/model.pt Model saved to ==> e:/torch/chap10/data/metrics.pt Epoch [1/5], Step [1020/5100], Train Loss: 0.7127, Valid Loss: 0.6970 Epoch [2/5], Step [1530/5100], Train Loss: 0.7067, Valid Loss: 0.6943 Model saved to ==> e:/torch/chap10/data/model.pt Model saved to ==> e:/torch/chap10/data/metrics.pt Epoch [2/5], Step [2040/5100], Train Loss: 0.7023, Valid Loss: 0.7232 Epoch [3/5], Step [2550/5100], Train Loss: 0.7059, Valid Loss: 0.6932 Model saved to ==> e:/torch/chap10/data/model.pt Model saved to ==> e:/torch/chap10/data/metrics.pt Epoch [3/5], Step [3060/5100], Train Loss: 0.6999, Valid Loss: 0.6927 Model saved to ==> e:/torch/chap10/data/model.pt Model saved to ==> e:/torch/chap10/data/metrics.pt Epoch [4/5], Step [3570/5100], Train Loss: 0.7023, Valid Loss: 0.6943 Epoch [4/5], Step [4080/5100], Train Loss: 0.6990, Valid Loss: 0.6928 Epoch [5/5], Step [4590/5100], Train Loss: 0.7005, Valid Loss: 0.6928 Epoch [5/5], Step [5100/5100], Train Loss: 0.6984, Valid Loss: 0.6968 Model saved to ==> ../chap10/data/metrics.pt 훈련 종료!
학습 결과는 훈련과 검증 데이터셋의 오차를 보여 주는데, 훈련이 진행될수록 훈련 데이터셋의 오차는 감소하고 있지만 검증 데이터셋에 대한 오차는 일정하지 않게 나타나고 있습니다.