Relation Extraction 프로젝트를 마치고 이번주는 RE task의 데이터 제작 프로젝트를 진행중에 있다.
우리나라 대통령이라는 도메인의 위키 데이터셋을 가지고 RE task 데이터 제작을 하고 있는데 데이터 제작 프로젝트는 생각보다 더 어렵다는 것을 몸소 체험하고 있다.
relation_map을 1차적으로 설정하고 파일럿 태깅 과정을 통해서 relation_map을 수정하면서 annotation 가이드라인을 작성했다. 그러나 이를 기반으로 Entity를 annotation을 하는 과정에서 모호한 부분도 너무 많았고 고려해야할 부분이 끊임없이 생겨났다.
annotation의 기준을 세울 때 비슷한 연구의 robust한 다른 데이터셋을 근거로 삼아서 기준을 세워보면 좋을 것 같다.
RE task 프로젝트에 대한 피드백도 받았다.
이번 RE task에서는 Entity들간의 관계를 잘 분류하는 것이 이번 프로젝트의 가장 큰 목표였다.
그리고 이 큰 목표를 이루기 위해 작은 목표들을 리스트업해나가는 것이 중요하다.
목표를 리스트업하기 위해 역시 가장 중요한 것은 우리가 해결하고자 하는 문제를 정확히 인식하기이라는 것을 항상 명심해야겠다.
좀 더 고민하고 발전해야할 부분은
- 정의한 문제를 해결하기 위해 어떤 방법론을 왜 선택했는지 고민하기
해당 방법론의 장점을 선택한 이유로 설정하는게 아니라
내가 왜 이 방법론을 써보고 싶은지, 이 방법론으로부터 어떤 목적을 달성하고 싶은지를 고민하는 노력하기
- 결과를 분석하기
이번에 Confusion matrix를 구현은 했는데 분석할 때 사용해보지 못했다.
다음번에는 이런 분석도 꼭 진행하기
- 위에서 진행하는 실험 가설부터 결과까지를 팀원들에게 공유할 수 있도록 문서화 작업하기
- 다음번 Wrap-up 리포트에는 가설에 대한 Reference를 잊지말고 추가하기
멘토님께서 방법론을 적용하는 측면에서 논문을 읽는 법에 대해서도 가르쳐주셨다.
전까지는 그냥 처음부터 끝까지 읽었는데 읽는게 익숙하지 않기도해서 시간이 너무 오래걸렸었다.
대회를 진행할 때는 방법론을 적용하는 측면에서 아래와 같이 논문 읽는 습관을 기르도록 해야겠다.
1. 우선 논문에서 구현 코드를 제공해주는지 아닌지 체크한다.
논문에서는 방법론에 대해서 자세하게 설명하지 않기 때문에 되도록이면 구현 코드를 제공해주는지를 확인해보고 읽을지말지를 결정하자.
2. Introduction 1) 논문이 다루는 task, input, output에 대한 파악
2) 해당 task의 기존 연구의 한계점
연구하는 입장에서 이 부분은 중요하나 단순히 방법론을 적용해보고자 하는 입장이라면 가볍게 읽고 지나가자
3. 실험 및 결과
예를 들어 RE에 AEDA를 적용해볼까해서 AEDA 논문을 읽어보고자 한다고 하자.
그러면 이제 실험 및 결과 부분을 살펴보고 이 실험에서의 Dataset이 Relation Extraction task에서 사용하지 않았다는 것을 확인할 수 있을 것이다. 이렇게 비슷한 데이터셋의 실험결과를 보고 이 방법론을 사용할지 말지 선택하는 것이 중요하다!
예를 들어 논문에서 5점이 올랐다면 우리의 데이터셋에서는 그대로 5점이 오르지는 않을 것이다. 보통 40% 정도의 효과를 볼 수 있을 것이니까 이런 것을 고려하여서 해당 방법론을 사용할지 말지 선택하자.
즉, 우리가 하는 task랑 비슷하면서 효과를 볼 수 있을 것 같다면 그 때 제안방법론을 읽어라.
4. 제안 방법론
메서드에서 이해가 가지 않는 부분은 코드를 통해 확인하는게 가장 정확하다.
+ Related work는 연구하고자 하는 목적이라면 정말 중요한 부분이다! 적용하고자 하는 측면에서 읽는다면 읽어보면서 넘어가기.
논문 읽다가 모르는 단어나 메서드를 체크하고 그런 단어나 메서드가 다른 논문에서도 또 나온다면 그 때 그 부분을 공부하자.
5. 논문을 읽고 느끼는 점을 적도록 하자! (어떤 부분이 어려웠는지 등) 그리고 나만의 결론을 내리는 것이 중요하다.