2주차 2일차

DONGJIN IM·2022년 5월 3일

ODQA

목록 보기
2/9
post-thumbnail

오늘 할 것

  • Model의 큰 틀을 이해하고, 어떤 부분을 수정하면 좋은 결과를 낼지 생각해보기
  • Hyperparameter 값을 대충이라도 정하기

오늘 한 것

문제점

내가 Baseline Code를 잘 이해하지 못했어서 오류가 왜 발생했는지도 알 수 없었으며, 결과가 나왔을 때 제출했을 때도 EM이 0이 나오는 엄청난 사건을 경험했다.
그래서 하려고 했던 것을 모두 취소하고 Line by Line으로 코드 이해를 우선적으로 하기로 했다.

Baseline Code 변경

현재 Baseline Code의 핵심 부분을 보니, metric이 eval/이 아닌 train/ 부분으로 Wandb상에 들어감을 알 수 있었다.
Huggingface Code를 뜯어보니 self.log 명령어를 통해 내가 원하는 방식으로 Wandb상에 Metric 결과를 보낼 수 있음을 알게 되었다.

따라서, trainer_qa.py파일 중 evaluate 메서드를 살짝 변경시켜 내가 원하는 형식으로 Wandb 상에 찍히게 만들었다.

결과

  • 원래라면 eval과 train으로 나뉘지 않고 train에만 그래프가 그려졌으나, 코드 변경을 통해 eval에도 그래프가 그려지게 변경시켰다.
    • 비교군이 없는게 아쉽다. 앞으로는 비교군도 꼭 저장해놓자.

팀간 회의

이번 Task는 QA(Reader) 부분과 검색(Retreival) 총 2개 Task로 나뉘어져 있다고 생각했다. 따라서, 우리 팀은 2명은 QA를, 2명은 검색을, 1명은 Data Augmentation으로 담당을 나누어 이번 대회를 진행하기로 결정하였다.


느낀점

정말 Code의 이해가 매우 중요하다고 느낀 하루였다. 전에도 그랬었지만 Source Code나 주어진 Code를 이해하지 못하면 성능 향상이고 뭐고 다 부질없다는 것을 깨달았다.
앞으로는 다른 사람보다 조금 늦더라도 무조건! Code를 완벽히 이해하고 일을 시작해야겠다는 생각이 든 하루였다.

profile
개념부터 확실히!

0개의 댓글