본문 바로가기
Research/논문

[paper]How to Read a Paper

by raphael3 2017. 10. 4.
반응형

                                                                                                                                                         

                                                                                                                                                                                                                   
                                                                                                                                                         
                                                                                                                                                                                                             
                                                                                                                                                                                                          
대학원 생활을 시작한지 이제 2개월 그리고 20일이 지나가고 있다. 랩실 생활을 하면서 논문을 읽을 기회는 딱 한 번 있었는데, 열심히 준비한다고 했는데도 불구하고 세미나때 여러모로 당황했다. 학기가 시작하고나서 접한 본 논문은 나와 같이 이제 갓 석사를 시작하는 아무것도 모르는 그런 학생들에게 도움이 될 것이다. 나는 이 논문을 읽으면서 앞으로 논문을 읽을 땐 어떻게 접근해야하는지에 대한 통찰을 얻을 수 있었다. 지식은 나누면 1/n이 아니라 n배가 된다고 배웠기에 내가 해석한 ‘How to Read a Paper’라는 논문의 해석을 올려본다. 

개요

연구자들은 연구 논문을 읽는데에 굉장히 많은 시간을 보낸다. 반면 논문을 읽는 데에 필요한 기술들은 어디서도 거의 가르쳐주지 않는다. 이 논문은 연구 논문을 효율적이고 실용적으로 읽을 수 있도록 세 가지의 방법을 제시한다. 또한 이 방법들을 문헌 조사 등에 구체적으로 적용할 수 있는 방법도 제시한다. 

소개

연구자들은 다음과 같은 이유들로 논문을 읽어야 한다: 수업이나 학회에 참석하기에 앞서 복습하기 위해, 자신들의 연구분야의 현재 트렌드를 쫓아가기 위해, 그리고 새로운 분야에 대한 문헌 조사를 위해. 연구자들은 이 이유들로 매년 논문을 읽는데에만 수백 시간을 보낸다. 
따라서 논문을 효율적으로 읽는 것은 중요하다. 하지만 그 방법에 대해서는 어디서도 가르쳐주지 않는다. 그래서 대부분은 시행착오를 거쳐가면서 배우게 된다. 학생들의 경우엔 이 과정에서 많은 노력을 들이면서 좌절에 빠진다. 
몇 년 간, 나는 논문을 효율적으로 읽기에 단순한 접근법을 사용해왔다. 본 논문에서 세 가지 접근법(Three-pass Approach)과 함께 문헌 조사로의 구체적인 응용도 함께 설명하고자 한다.

The Three-pass Approach

핵심은 논문을 세 단계로 읽는 것이다. 시작부터 읽기 시작해서 고생고생하면서 끝까지 읽는 대신에 각 section의 첫번째 부분만을 읽어 나가는 것이다.

세 개 단계의 각 단계는 각 단계만의 특별한 목표를 달성하게 되어있으며, 그 이전 단계를 토대로 한다. 먼저 첫 번째 단계는 당신에게 논문에 대한 전반적인 이해를 줄 것이다. 두 번째 단계에서는 논문의 내용 속으로 들어가지만, 디테일한 부분까지 들어가지는 않는다. 세 번째 단계에서야 논문을 깊은 수준까지 들여다 보게 된다.

첫 번째 단계

첫 번째 단계에서는 논문을 빠르게 훑음으로써 마치 새와 같이 전체적인 관점(먼 관점, 숲을 바라보는 관점)을 얻는 것이 목적이다. 이 단계에서 당신이 다음의 단계들을 밟아야 할지 말지를 결정할 수 있다. 시간은 5분에서 10분이 적당하며 다음의 5개의 하위단계로 이루어진다. 

제목(title), 요약(abstract), 소개(introduction)부분을 신중하게 읽는다. 
그리고 각 section에서는 그 내용 전부를 읽지 말고, 앞부분(heading)만을 읽는다. 
그리고 결론 부분을 읽는다.
reference부분에서는 이미 읽은 논문이 있으면 체크해가면서 간단히 훑는다. 
마지막으로 5C에 대해 대답할 수 있는지 점검한다: 
Category: 해당 논문은 어떤 유형의 논문인가? measurement paper인지, 현존하는 시스템에 대한 분석인지, 연구 프로토타입의 description인지를 대답할 수 있어야 한다.(근데 각 타입이 무엇인지 정확히 모르겠다)
Context: 연관된 다른 논문은 무엇인가? 문제(problem)를 해결하기 위해 논문에서는 어떤 이론적인 배경이 쓰였는가?
Correctness: 가정(Assumption)이 분명하게 드러나 있는가?
Contributions: 논문이 주로 기여한 부분은 무엇인가?
Clarity: 논문이 잘 쓰여졌는가? (논문의 형식, 쓰인 표현을 말하는 듯)
이 정보들을 통해, 해당 논문을 더 이상 읽지 않아도 될지를 결정할 수 있다. 특히 저자가 불분명한 가정을 통해 논리를 전개해 나가고 있을 때나 논문을 이해하기에는 해당 분야에 대한 지식이 충분하지 않을 때, 혹은 단지 당신의 흥미를 끌지 못하는 등의 이유들로 그만 읽는 선택을 내릴 수 있다. 첫 번째 단계는 현재 시점에선 당신이 하고 있는 연구 분야와 관련이 없지만 언젠가는 관련이 있을 법한 논문들을 걸러내기 충분하다. 

부수적으로, 당신이 논문을 쓸 때엔 역으로 리뷰어들이나 독자들이 당신의 논문에 대하여 바로 이 첫 번째 단계로 읽어내려갈 거라고 생각할 수 있다. 따라서 section과 sub-section의 제목(title)을 붙일 땐 논리에 맞는 제목을 붙이도록 제목 선정에 신경을 써야한다. abstract 부분도 간결하면서도 전체를 포괄할 수 있도록 작성하는 데에 신경써야 한다. 만약 논문 리뷰어들이 첫 번째 단계의 방식으로 논문을 읽고 난 후에 해당 논문의 요지를 이해할 수 없다면, 리뷰어들은 그 논문을 거절(rejected)할 것이다. 독자들 역시 5분이 지나도록 논문의 요지를 이해하지 못하면 읽지 않을 것이다. 

두 번째 단계

두 번째 단계에서는 첫 번째 단계에서보다는 더 신중하게 읽는다. 다만 증명(proof)같은 디테일한 부분은 신경쓰지 않는다. 여백 부분에 key point를 빠르게 적어내려가거나 간단히 메모를 하는 것도 좋다. 

도표나 그림 같이 논문 상에 나와있는 각종 삽화들을 주의깊게 본다. 그래프에는 더욱 집중을 해야한다. x축 y축과 같은 축(axe)이 적합하게 라벨링 되어있는지 살핀다. 특히 결론(result)부분에 error가 있거나 axe정보가 잘못되어 있다면, 해당 섹션에 있는 결론(conclusion)들이 통계적으로(statistically) 유의미한지를 주의깊게 봐야 한다. 보통 저지르는 실수는 주로 메인 작업으로부터 다소 조잡하면서 서둘러 해야 하는 그런 류의 작업들을 분리해서 수행할 때 일어난다. 
읽어 나가면서 아직 읽지는 않았지만 관련 있는 reference들을 표시하도록 한다.(해당 논문에 대하여 배경지식을 얻을 수 있는 좋은 방법이다.) 
시간은 한 시간 정도는 걸려야 한다. 두 번째 단계가 끝나고나면, 논문의 내용은 이해할 수 있는 상태이어야 한다. 또한 논문이 주로 하고자 하는 말이 무엇인지를 뒷받침하는 증거와 함께 누군가에게 설명할 수 있을 정도로 요약할 수 있어야 한다. 이 정도 수준으로 디테일을 살피는 것은, 관심은 있지만 전문성은 아직 갖고 있지 않는 그런 분야의 논문을 읽을 때 적합하다. 
종종 두 번째 단계를 다 하고 나서도 논문을 이해하지 못할 수 있다. 다루고 있는 주제가 완전히 새로운 것이거나, 약어를 쓰는 등의 생소한 용어들일 경우가 그렇다. 혹은 저자가 어떤 사실을 증명(proof)하려고 할 때나 당신은 잘 모르는 실험 테크닉을 가져다 쓸 때 그렇다. 이런 경우 논문 내용의 대부분이 쉽게 이해가 되지 않는다. 논문이 근거 없는 주장으로 형편 없게 쓰여졌을 수도 있다. 참조할 reference가 매우 많은 경우에도 그러하다. 아니면 그냥 밤이 너무 늦어서 당신이 피곤하기 때문일 수도 있다. 어쨌든 이제 당신에겐 다음의 선택지가 있다: (a) 당신의 성공적인 커리어에 크게 중요한 자료가 아니길 바라면서 한쪽으로 치우기 (b) 배경지식을 제공해 줄 자료를 먼저 읽어본 다음에 다음에 다시 살펴보기 (c) 인내하면서 세 번째 단계로 넘어가기

세 번째 단계

논문을 온전히 이해하려면, 특히나 당신이 논문 리뷰어라면, 이제 나올 세 번째 단계와 같은 접근이 필요하다. 세 번째 단계의 핵심은 가상으로 논문을 다시 구현해보는 것이다. 즉, 저자가 내린 동일한 가정을 참이라고 여기면서 작업을 재수행해보는 것이다. 그 다음엔 이렇게 재수행해 본 결과와 실제 논문을 비교함으로써, 해당 논문이 가지고 있는 참신한 부분뿐만 아니라 암묵적으로 숨겨진 가정과 충분히 발생할법한 실패 상황들도 확인해볼 수 있다. 
특히 세 번째 단계에서는 세부적인 사항들을 주의 깊게 들여다 볼 필요가 있다. 모든 문장마다 그것이 참인지, 실제로 그러한지를 일일이 확인해야하며, 저자가 내리고 있는 모든 가정들을 반드시 의심해보아야 한다. 또한 당신의 경우라면 당신 자신만의 독창적인 아이디어를 어떻게 제시할 것인지에 대해서도 생각해볼 수 있다. 어쨌든 이렇게 가상의 실험과 실제 논문의 결과를 비교해보는 것은 증명(proof)부분을 읽어내려갈 때에 유용한 통찰력을 제공해줄 것이다. 또한 해당 논문이 사용하고 있는 표현 방식(테크닉)에 대한 정보들도 얻을 수 있다. 이런 표현 테크닉들은 당신이 논문을 쓸 때 유용하다. 이런 표현들은 빈 공백같은 곳에 언젠가 작성할 논문에 쓸 표현으로 간단히 정리해보는 것도 좋다.
세 번째 단계는 초보자에게는 4시간에서 5시간 정도가 소요된다. 숙련된 사람은 한 시간 정도가 소요된다. 이 과정을 거치고 나면, 보지 않고서도 논문의 전체 구조를 재구성할 수 있어야 한다. 장단점 또한 말할 수 있어야 한다. 특히 중요한 것은 숨겨진 가정이 무엇인지를, 관련된 작업에 관한 인용을 놓친 부분이 무엇인지를, 실험 테크닉이나 분석 테크닉에 관련된 잠재적인 문제점들을 정확히 지적할 수 있어야 한다. 

Doing a Literature Survey

논문을 읽는 기술은 문헌 조사를 하는 과정에서 특히 시험대에 놓이게 된다. 문헌 조사 영역은 쉽지 않은데, 잘 알려지지 않은 영역의 논문을 포함해서 수십편의 논문을 읽기를 요구하기 때문이다. 그럼 도대체 어떤 논문을 읽어야 할까? 이제 위에서 다룬 세 가지 접근법을 문헌 조사에는 어떻게 적용할지를 알려주겠다. 첫째 방법은, Google Scholar나 CiteSeer와 같은 논문 검색 엔진을 이용한다. 이 때 키워드를 잘 선택해야 하는데, 해당 분야에서 가장 최근의 3개~5개 정도의 논문을 찾기 위한 키워드를 선택해야 한다. 그 다음엔 논문을 읽을지 말지를 결정하기 위해서, 이렇게 선택한 각 논문에 대해 첫 번째 단계를 수행한다.(즉 전체적으로 훑으면서 숲을 본다.) 그러고나서 관련된 섹션을 읽는다. 최근의 논문에 대한 썸네일과 같은 요약을 얻을 수 있을 것이다. 운이 좋다면 가장 최근의 survey paper에 대한 좌표를 얻을 것이다. 그런 survey paper를 발견하면 뭐, 다 된 것이다. 그 survey paper를 읽으면 된다. 
반면 운이 없어서 첫째 방법에서 발견해내지 못하면, 둘째 방법을 써야 한다. 언급된 citation들을 찾아다니면서 반복적으로 나오는 저자의 이름이 무엇인지 살펴야 한다. 그 저자가 바로 해당 분야에서 핵심적인 저자일 것이며 그 저자가 쓴 논문이 유의해야 할 논문일 가능성이 크다. 그런 논문들은 다운로드해서 어딘가에 저장해둬라. 그 다음 해당 저자의 웹 사이트를 방문해서 가장 최근에 어디로 논문을 출고했는지를 본다. 보통 이런 저자들은 가장 큰 학회에 논문을 내기 때문에 그곳이 가장 유명한 학회일 것이다. 
셋째 방법은 해당 학회의 웹사이트에 방문해서 가장 최근에 열린 공식 행사나 기록을 살펴보는 것이다. 살피면서 보아야 하는 것은 최근에 가장 많이 인용된 논문이 무엇인지를 보는 것이다. 이런 논문들이 곧 survey의 초기 단계를 구성한다. 이 논문들이 공통적으로 인용하는 핵심적인 논문이 있다면, 찾아서 읽어라. 그리고 가능하면 반복해서 읽어라. 

Experience

나는 학회 자료를 읽을 때나 리뷰를 쓸 때, background 연구를 진행할 때나 회의에 앞서 빠르게 논문을 리뷰할 때 등 15년 간 이러한 접근법을 사용해왔다. 이런 접근법은 내가 전체적인 관점을 얻기 전에 디테일에 빠지는 것을 막아준다. 또한 논문을 읽는 데 얼마의 시간이 필요할지에 대해서도 어느 정도 측정할 수 있게 해준다. 또한 내게 얼마의 시간이 있고 나의 필요가 무엇이냐에 따라 논문의 깊이를 조절할 수도 있게 한다. 

Related Work

만약 리뷰어가 되고자 논문을 읽는거라면, Timothy Roscoe의 “Writing reviews for systems conferences”라는 논문도 읽어보길 권한다. 반면에 Technical 논문을 쓸 계획이라면, Henning Schulzrinne의 웹 사이트(http://www.cs.columbia.edu/hgs/etc/writing-style.html)와 George Whitesides의 “Whitesides’ Group: Writing a Paper”를 참고하도록 한다.


Reference

반응형

'Research > 논문' 카테고리의 다른 글

논문_작성 팁  (0) 2018.12.18
학회에 대하여  (0) 2018.12.17