[Day44] Training & Inference

 

 

 

오늘 한 일

지금까지는 기본적으로 모든 데이터를 학습해서 제출을 진행하였다. 이제는 모든 데이터를 사용해서 학습을 진행하는 것이 아니라 검증 데이터를 따로 나눠서 진행을 해보자.

 

현재 대회는 이미지 분류이므로 랜덤으로 검증 데이터를 나누는 방법이 아니라 각 class마다 같은 비율로 검증데이터를 나눠야 조금 더 적절한 검증을 진행 할 수 있다. sklearn패키지를 이용하여 train과 test set을 나누어 보겠다.

from sklearn.model_selection import train_test_split
X_train,X_val,y_train,y_val=train_test_split(train_data['image_path'],train_data['label'],stratify=train_data['label'],random_state=94)

print(X_train.shape,X_val.shape,y_train.shape,y_val.shape,sep='\n')
# (14175,)
# (4725,)
# (14175,)
# (4725,)

이렇게 진행하여 계층화가 잘 된 것을 볼 수 있다.

 

  • optimizer의 경우 일반화가 조금 더 잘 된다는 AdamW를 사용하였다.
  • Validation Set을 주어서 가장 정확도가 높은 모델을 저장해서 사용한다.
  • epochs=15, batch_size=54,lr=1e-3으로 두고 학습을 진행 하였다.

 

📌 결과

image-20210402194345132

결과를 확인해보면 아직epochs을 15밖에 돌리지 않아서 정확도가 완성되지 않은거 같다.

하지만 f1 score값은 더 증가한 것을 확인 할 수 있다. epochs의 수를 더 증가 시켜서 학습을 진행한 뒤에 결과를 확인해 보려고 한다.

 

 

내일 할 일

  • 스케쥴러에 대한 공부와 활용해 보기
  • 다른 모델들을 학습하고 비교해 보기
  • augmentation기법들 추가해 보기

 

 

'AI > 부스트 캠프 AI tech' 카테고리의 다른 글

[Day43] Model  (0) 2021.03.31
[Day42] Data Feeding  (0) 2021.03.31
[Day41] EDA  (0) 2021.03.29
[Day40] 행렬 분해  (0) 2021.03.19
[Day39] 양자화 & 지식 증류  (0) 2021.03.18
[Day38] 가속화 & pruning  (0) 2021.03.17
[Day37] 시간복잡도 & entropy  (0) 2021.03.16
[Day35] Muti-modal & 3D understanding  (0) 2021.03.12

+ Recent posts