해당 글은 앤드류 응 교수님의 ML/DL 커리어 경력과 논문 읽기와 관련된 조언에 대한
포스팅을 기반으로 간단하게 요약하였습니다.
Introduction
앤드류 응 교수님께서 해주신 조언은 크게 두 개의 카테고리로 나뉩니다.
1. 연구 논문 읽는 방법에 대한 조언
- 딥러닝에서 매년 셀 수 없을 정도로 많은 논문이 나옵니다. 이에 맞게 앤드류 응 교수님께서 새로운 연구 논문을 읽기 위해 사용하는 효율적인 기술에 대해 알려줍니다.
2. ML/DL 커리어를 위한 조언
- ML/DL 엔지니어로서 어떤 역량을 갖추고 어떤 커리어를 쌓아가야 할지에 대한 조언을 해줍니다.
그 중 1편에서는 연구 논문 읽는 방법에 대해 먼저 포스팅 하겠습니다.
1. 연구 논문 읽는 방법
회사에서 프로젝트를 진행할 때 해당 프로젝트를 구축하기 위해 ,
딥러닝에 대한 최신 지식들을 얻고 트렌트를 파악하기 위해
연구 논문들을 효율적으로 읽고 응용하기 위해 해야 할 사항들은 다음과 같습니다.
1-1. 논문 목록 작성
- Notion, Tistory, Medium 등등에 우리가 기록할 수 있는 사이트에 연구 논문 리스트를 작성해야 합니다.
1-2. 논문당 읽을 내용 줄이기
- 연구 논문을 병렬 방식으로 읽어야 합니다.
- 한 번에 여러개의 논문을 다루는데, 이 때 빠르게 훑기만 하고 전부 이해하려고 노력하지 말아야 합니다.
- 논문의 10% ~ 20%를 읽으면 논문에 대한 높은 수준의 이해를 할 수 있기에 이를 통해 내 프로젝트에 맞지 않는 논은 과감하게 제거하는 것이 중요합니다.
위 두가지 방법을 통해 논문을 읽었을 때,
논문 읽은 편수를 통해 해당 도메인 지식을 어느 정도 이해하였는지 대강 알 수 있다고 합니다.
- 5~20편의 논문을 읽었다
: 내가 하려는 특정 도메인의 시스템을 구현하기에는 충분한 지식을 얻지만, 더 나아가 연구하거나 최신 기술들을 이 해 하기에는 충분하지 않은 편 수입니다. - 50~100편의 논문을 읽었다
: 내가 하려는 특정 도메인의 응용에 대해 잘 이해하고 있는 편 수입니다.
그렇다면 논문을 효율적으로 빨리 읽기 위해 어떻게 내용을 줄여야 할까요?
처음부터 순서대로 정독하며 읽지 말고 앞서 말했 듯이 논문의 10 ~ 20% 정도만 읽기 위해 다음과 같은 방법들로 논문을 축약합니다 (축약해서 읽는 대신 여러 번 반복해서 읽습니다)
1. Title, Abstract, Figures를 먼저 읽습니다.
Title, Abstract, 중요한 네트워크 아키텍쳐 Figures와 실험 섹션을 먼저 읽음으로서 논문의 개념에 대한 일반적 이해를 합니다. 딥러닝 분야에서는 본문을 한개 또는 두개의 Figures로만 요약한 논문들이 많기 떄문입니다.
2. 그 다음 Introduction + Conclusions + Figures 를 읽고 나머지는 훑어봅니다.
Introduction, Conclusions, Abstract 는 해당 논문이 출판용으로 승인되어야 하는 이유를 주의 깊게 요약하려고 하는 곳 입니다. 해당 부분을 이해하려고 노력하고 그 외에 논문과 연관 되어 있는 연구들은 괜찮다면 생략하세요.
3. 논문은 읽지만 수식은 생략합니다.
4. 이해가 안되는 부분은 생략합니다.
결과적으로 논문을 읽었는데 그 중 일부가 이해가 되지 않는 경우 훑어보는 건 괜찮지만, 매우 많은 시간을 할애할 필요는 없습니다.
논문을 읽은 후 다음과 같은 질문을 본인에게 해봅시다.
1. 저자는 무엇을 성취하기 위해 논문을 작성하였나요?
2. 이 연구의 접근에서 중요한 요소는 무엇이었나요?
3. 이 논문을 통해 당신은 무엇을 사용할 수 있나요?
4. 당신은 이 논문과 연관된 어떤 레퍼런스들을 이해하고 싶나요?
이 질문들에 대답할 수 있다면 논문에 대해 잘 이해하고 있다는 것입니다.
더 많은 논문들을 연습을 통해 읽을수록 더 빨라지게 될 것입니다.
( why? 많은 저자들이 일반적인 형식을 통해 논문을 작성하기 떄문)
논문을 이해하는 데 시간이 얼마나 걸리나요?
ML에 익숙하지 않은 사람들이 쉬운 논문을 읽더라고 한 시간이 걸릴 수 있습니다.
그러나 연관되어 있는 레퍼런스가 많거나 개념들이 축적된 ML/DL 논문이라면 상당한 시간이 걸릴 수 있습니다.
특정 도메인의 논문을 찾을 때 도움이 되는 사이트
1. https://paperswithcode.com/
원하는 도메인의 논문을 찾아보기 쉽고, 논문을 구현하기 위한 코드도 공유되어 있는 경우가 많습니다.
Papers with Code - The latest in Machine Learning
Papers With Code highlights trending Machine Learning research and the code to implement it.
paperswithcode.com
2. https://www.reddit.com/r/MachineLearning/
Machine Learning • r/MachineLearning
reddit: the front page of the internet
www.reddit.com
3. 중요한 ML/DL 컨퍼런스 : NIPS/ICML/ICLR
논문의 수식을 이해하기 위해서 어떻게 해야 하나요?
처음부터 계산을 손으로 해봅시다. 어렵지만 이해하는데 많은 도움을 줍니다.
논문을 토대로 코딩을 연습하는 방법
1. 오픈 소스 코드를 다운받아 실행해봅니다.
2. 처음부터 해당 코드를 구현해봅니다.
지속적인 공부를 통해 꾸준히 발전하는 것이 중요합니다.
원본 강의는 앤드류 응 교수님의 CS 230 강의입니다. (출처 : https://youtu.be/733m6qBH-jI)
강의를 보기 좋게 정리 해주신 Mohamed Ali Habib 연구원님의 글을 토대로 해당 게시글을 작성하였습니다.
두 번째 조언인 ML/DL 커리어를 위한 조언은 다음 포스팅에 정리하겠습니다.
감사합니다.
'AI_Column' 카테고리의 다른 글
[AI_Column] ML/DL 커리어를 경력을 위한 조언 (4) | 2023.01.19 |
---|