AI-GrandChallenge / round-1

14 stars 11 forks source link

[TR-2] [TR-4] Metric 변경 안내 #37

Open hwany-j opened 4 years ago

hwany-j commented 4 years ago

TR-2, TR-4에서의 evaluation.py의 변화가 있어 안내드립니다.

  1. TR-2 음성 인식의 경우, 모델이 모든 파일에 위협구간이 없다고 prediction할 시 mIoU의 정의에 의해서 0.82가 나오게 됩니다.

해당 metric은 본 문제의 목표와 맞지 않아 수정하고자 합니다.

기존: mIoU = 각 파일별 length of intersection / length of union 의 평균. 수정: IoU의 가중치 평균 : 위협파일의 경우는 weight=1로, 위협파일이 아닌 경우는 weight=0.1로 주어 평균을 줍니다. CodeCogsEqn

  1. TR-4의 경우, 버그가 발견되어 수정하였습니다. 버그 수정 후 local에서 산술평균으로 구했을 때에 0이 나오지 않는 것을 확인하였습니다. 평가 metric이 geometric mean이어서 제대로 학습되지 않으면 0이 나올 가능성이 클 수 있습니다.

혼란을 드려 죄송합니다. 빠른 시간 내에 metric은 업데이트될 예정이고, 업데이트 이후에는 leader board가 초기화 됩니다.

dict commented 4 years ago

@hwany-j IoU계산에 대해 질문드립니다. image

  1. IoU를 계산하는 방식은 utils.py 내에 있는 calcuate_iou() 와 동일한가요?
  2. 위의 방법대로 계산할 경우 g.t와 pred의 구간이 전혀 중복되지 않는 경우 점수가 제대로 계산 되나요?
  3. 한 음원 내에 g.t가 2구간 이상 존재하는 경우 위의 함수로 IoU가 제대로 계산 되나요?
bluebrush commented 4 years ago

Metric 변경으로 인하여 Leaderboard 초기화되었습니다. (tr-2, tr-4) 초기화 일시: 00:44 (7/28)

dict commented 4 years ago

@bluebrush 제출 제한 시간도 초기화 됐나요?

hwany-j commented 4 years ago

@hwany-j IoU계산에 대해 질문드립니다. image

  1. IoU를 계산하는 방식은 utils.py 내에 있는 calcuate_iou() 와 동일한가요?
  2. 위의 방법대로 계산할 경우 g.t와 pred의 구간이 전혀 중복되지 않는 경우 점수가 제대로 계산 되나요?
  3. 한 음원 내에 g.t가 2구간 이상 존재하는 경우 위의 함수로 IoU가 제대로 계산 되나요?

위 함수로 calculate_iou가 제대로 계산되지 않습니다. Evaluation.py에는 다른 함수가 들어가 있고, iou를 계산하는 것은 직접 구현하셔야 합니다.

Iou 계산하는 법에 있어 모호함이 있으시면 언제든 코멘트 바랍니다 :)

JeiKeiLim commented 4 years ago

TR-2, TR-4에서의 evaluation.py의 변화가 있어 안내드립니다.

  1. TR-2 음성 인식의 경우, 모델이 모든 파일에 위협구간이 없다고 prediction할 시 mIoU의 정의에 의해서 0.82가 나오게 됩니다.

해당 metric은 본 문제의 목표와 맞지 않아 수정하고자 합니다.

기존: mIoU = 각 파일별 length of intersection / length of union 의 평균. 수정: IoU의 가중치 평균 : 위협파일의 경우는 weight=1로, 위협파일이 아닌 경우는 weight=0.1로 주어 평균을 줍니다. CodeCogsEqn

  1. TR-4의 경우, 버그가 발견되어 수정하였습니다. 버그 수정 후 local에서 산술평균으로 구했을 때에 0이 나오지 않는 것을 확인하였습니다. 평가 metric이 geometric mean이어서 제대로 학습되지 않으면 0이 나올 가능성이 클 수 있습니다.

혼란을 드려 죄송합니다. 빠른 시간 내에 metric은 업데이트될 예정이고, 업데이트 이후에는 leader board가 초기화 됩니다.

내부적으로는 테스트셋(AI Hub 79만장 중 일부)에서 Geometric F1 Score가 제대로 나옵니다. 주최측에서는 AI Hub 데이터만 이용하여 학습 후, 실제 테스트 데이터로 Score 를 확인 하신건지 궁금합니다.

JeiKeiLim commented 4 years ago

Geometric F1 Score 직접 구현해서 확인 중인데 해당 스코어 특성상 한 클래스만 잘못 인식해도 확 떨어지는게 맞지만 아래와 같이 정확도가 65%밖에 안되는 상황에도 값이 나오긴 하네요.

loss: 1.4276 - accuracy: 0.6574 - geometric_f1score: 9.9947e-07
loss: 0.7542 - accuracy: 0.8541 - geometric_f1score: 0.0170