boostcampaitech2 / klue-level2-nlp-11

A solution for KLUE Relation Extraction Competition in the 2nd BoostCamp AI Tech by team AI-ESG
4 stars 6 forks source link

Validation fold #25

Closed AmenPark closed 3 years ago

AmenPark commented 3 years ago

작업 내용

-에러까지 수정 완료

주요 로직

스크린샷 (필요시)

-

관련 이슈 ex) Close #1 (이대로 해야 명령어 인식됩니다.)

zerohoon0102 commented 3 years ago

argparse를 통해 val ratio조정하는 train과 k-fold train을 구분할 수 있게끔 수정해주시면 좋을 것 같습니다. :)

AmenPark commented 3 years ago

해당 코드의 경우 val_ratio를 충분히 대체 가능한 k_num과 iter_num이 있습니다. 둘 다 정수만 받을 수 있으며, iter_num이 k_num보다 크지 않도록 조심해야 합니다. k-fold를 하고 싶지 않다면 그것은 iter_num = 1과 동일합니다. iter_num = k이면 전체를 라벨 밸런스를 맞춰 k등분했을 때의 각 조각을 dev_dataset으로 갖는 각 경우에 대해 모델을 생성한 것과 같습니다. 이 경우에 모델이 덮어씌워 저장될 수 있는지 여부의 검증이 추가로 필요합니다. val_ratio는 그 역수를 k_num에 넣는 것과 동일합니다. 단, 이 경우에 label과 무관하게 완전히 random으로 validation dataset을 뽑는 것이 아니라 각 라벨의 비율에 따라서 dev_dataset이 정의됩니다. 역수로 정수만 받는 만큼 0.1, 0.05는 가능해도 0.03과 같은 어중간한 수치는 불가능하지만, 큰 오차는 없을 것입니다.

zerohoon0102 commented 3 years ago

iteration을 한 번만 반복하면 K-Fold가 아닌 것 처럼 작동하니 말씀해주신 것 처럼 7:3 같은 비율만 아니라면 해당 코드로 돌려도 동일하겠네요!