ai-starthon / AI_Starthon2019

60 stars 44 forks source link

13_idet_car Infer시 test_label 관련 문의 #168

Closed heartcored98 closed 5 years ago

heartcored98 commented 5 years ago

안녕하세요!

task13을 하면서 valid_set에 대한 IoU값과 submit시의 IoU 값의 차이가 항상 너무 크게 찍혀 이슈 남깁니다.

현재 local_eval()을 통해 valid_set에 대해 metric을 찍어볼 때는 dataloader_with_split()을 통해 사용자가 만들어진 valid_set으로부터 valid_label 파일을 다시 만들게 되고 해당 파일로 evaluation이 이루어지는 것으로 이해하고 있습니다. (그래서 valid_set metric은 정상적으로 찍히는 것 같습니다)

하지만 Inference를 할 때는 test_label이 test_loader로부터 다시 생성되는 것이 아니라 이미 기존에 계산되어져 있는 파일을 read하여 model의 prediction결과와 비교하는 것 같습니다.

제가 우려되는 부분은 metric계산이 각 파일들로부터 라인 값을 기준으로 bbox 값을 비교하기 때문에 행여나 submit시의 test_loader내의 각 sample들의 순서가 미리 생성해놓은 test_label내 sample 순서와 달라진다면 올바른 metric결과가 나오지 않을 수도 있다는 것입니다.

현재의 test_label 들이 dictionary가 아니라 list의 형태이기 때문에 (각 bbox 값에 key나 ID를 부여하고 있지 않기 때문에) 이런 문제가 발생할?수도 있다고 생각합니다.

따라서 혹시라도 평가 부분을 각 이미지들의 ID를 키값으로 갖는 dictionary형태의 submit에 대해서는 어떻게 생각하시는지, 그리고 혹시 test_loader의 샘플 순서와 test_label의 샘플 순서는 일치하는지 확인 부탁드리겠습니다.

멋진 대회 운영해주시느라 항상 감사합니다 :)

bluebrush commented 5 years ago

@heartcored98 님, 자세한 분석 감사드립니다. 말씀하신 부분의 오류가 확인되어 조치 중에 있습니다. #171 공지되어 조치중에 있습니다. 불편을 드려서 죄송합니다.

heartcored98 commented 5 years ago

감사합니다! 이제 metric이 제대로 찍히네요 :)