다음은 모델 학습 결과입니다.
Epoch: 0, loss: 0.10221 Epoch: 100, loss: 0.00653 Epoch: 200, loss: 0.00031 Epoch: 300, loss: 0.00026 Epoch: 400, loss: 0.00025 Epoch: 500, loss: 0.00024 Epoch: 600, loss: 0.00024 Epoch: 700, loss: 0.00023 Epoch: 800, loss: 0.00023 Epoch: 900, loss: 0.00023
오차 위주로 출력했기 때문에 실제로 얼마나 잘 예측했는지 알기 어렵습니다. 예측 결과를 시각적으로 표현해 보겠습니다. 먼저 레이블과 예측 결과를 출력하기 위한 전처리(데이터의 분포 및 형태 변경)를 진행합니다.
코드 7-50 모델 예측 결과를 출력하기 위한 데이터 크기 재구성
df_x_ss = ss.transform(data.iloc[:, :-1]) ------ 데이터 정규화(분포 조정)
df_y_ms = ms.transform(data.iloc[:, -1:]) ------ 데이터 정규화
df_x_ss = Variable(torch.Tensor(df_x_ss))
df_y_ms = Variable(torch.Tensor(df_y_ms))
df_x_ss = torch.reshape(df_x_ss, (df_x_ss.shape[0], 1, df_x_ss.shape[1]))