기대와 함께 시작한 대학 생활은 고등학생 시절 상상했던 것과는 많이 달랐다. 영화를 너무 많이 봤던 걸까? "학문에 대한 탐구", "끊임없는 사색"... 무언가 있어 보이는 모습을 꿈꿨다. 하지만 현실은 그렇지 않았다. "대학"이란 특별한 공간이라기보다 "학교"나 "학원"의 연장선처럼 느껴졌다.
"지금 배우는 내용을 굳이 대학에서 배워야 할까?"
C Programming
과 Java Programming
은 충분히 독학할 만하다. 막 2학년이 되었을 무렵, 문득 되돌아본 내 모습이 고등학생 시절 상상한 모습과 너무나도 달라서 그만두고 싶다고 생각했다.
군대를 다녀오면 철이 든다던가? 전역하고 학교로 돌아왔을 때, 이전에는 보이지 않았던 것들이 보이기 시작했다. 주변에는 정말 멋있는 사람들이 많았다. 내가 눈앞의 문제에 허덕일 때, 그 너머를 바라보며 열심히 나아가는 무서운 사람들이 많았다. 아쉽다고 생각했던 강의에서도 쉽게 얻지 못했을 지식을 배울 수 있었다. 아는 만큼 보인다는 말이 있다. 스스로 오만함을 깨닫고 열심히 살아야겠다 다짐했다.
1년간의 졸업프로젝트. 멀게만 느껴졌던 일이 내게도 다가왔다. 그리고 대학생다운(?) 일을 하고 싶다는 소망이 자연스럽게 고개를 들었다. 하지만 대부분 졸업프로젝트로 서비스 개발을 진행했기에 나도 그러겠거니 생각했다.
하지만 이게 웬걸? 프로젝트 방향성을 결정하기 위한 첫 모임에서, 팀원들 또한 서비스 개발보다는 연구를 하고 싶어 한다는 사실을 알게 되었다. 그렇게 만장일치로 연구 주제를 생각했고, Computer Vision & AI
분야의 주제를 선정했다. 감사하게도 지도교수님의 도움과 함께 기대를 안은 졸업프로젝트가 시작됐다.
연구하려니 우선 논문을 읽어야 했다. 주제는 정해졌으니 관련 논문을 찾아야겠는데... 막상 하려니 난감했다. 물론 만능 Google 선생님이라면 해결해 주시겠지만, 정말 그래도 되는 걸까? 그래서 처음에는 팀원이 찾아준 논문을 읽었다. 그다음에는 읽은 논문에 인용된 논문을 찾았다. 그러다가 그냥 Google Scholar에서 논문을 검색했다. 어째 처음으로 돌아와 버렸을지도.
지도교수님께 탐색한 논문을 보여드리면 게재 학회와 년도, 저자 이력과 같은 정보를 토대로 좋은(?) 논문을 추려 주셨다. 하지만 나는 학회와 저자 경력을 구별할 능력이 되지 않는다. 그래서 지금은 그냥 읽어보려고 한다. 논문 제목에도 많은 정보가 담겨있고, Abstraction과 Introduction 정도만 읽어봐도 논문에서 주장하고자 하는 바를 파악할 수 있다.
최근에는 Source가 공개된 논문을 찾고 있다. 의외인 점은 생각보다 Source를 공개한 논문이 많진 않았다는 점이다. 3년 이내에 게재된 논문으로 한정해서일까? 찾은 repo도 한 자릿수 star를 가지고 있곤 했다. 물론 분야마다 다르겠지만, 생각보다 개방적인 동네는 아닌가 보다.
프로젝트를 시작하면서 가장 먼저 했던 일은 Google에 "논문 읽는 방법"을 검색한 것이다. 그리고 얻은 조언은 논문을 읽는 순서였다.
처음에는 그냥 읽으면서 중요해 보인다 싶으면 Notion에 기록해 뒀다. 그러던 어느날, 이전에 읽었던 논문을 설명해야 할 일이 생겼다. 그래서 Notion에 접속했지만, 있는 거라고는 부분부분 발췌된 논문뿐이었다. 요약도 없고, 옮겨진 내용도 곳곳이 끊겨있어서 결국 논문을 다시 읽어야 했다. 문제를 느끼고는 정리할 내용에 요약을 기재하기로 했다. 그리고 실패했다. 사실, 논문 내용을 제대로 이해하지 못했던 것이다.
이제는 논문을 읽을 때 영어사전과 번역기를 항시 켜둔다. 논문을 읽으면서 모르는 단어가 나오거나 해석이 애매하다 느껴지면 주저 없이 사전과 번역기의 힘을 빌린다. 읽으면서 중요해 보이는 내용이 있으면 형광펜으로 표시한다. 그리고 무엇보다 이해한 내용을 한글로 정리한다. 안다는 건 설명할 수 있다는 것이다. 물론 설명은 이해하기 쉬워야 한다..
Abstraction을 읽는다. 모르는 용어를 검색해 보지만 여전히 알쏭달쏭하다. Introduction을 읽는다. 이제 뭔가 좀 알 것 같다. Figure를 훑어보면서 Conclusion을 읽어본다. 아! 논문이 말하고자 하는 바를 알았다. 그리고 그게 한계다.
"뭘" 하는지 알았으니 "어떻게" 하는지 알아야 한다. 그래서 Materials & Methods를 쳐다본다. 흰 건 배경이고 검은 건 수식이다. 그러고 있노라면 수학을 경시한 과거의 자신이 정말 밉다. 기반 지식이 너무나 부족하다 보니 Google 선생님도 해결해 줄 수 없다. 대충... 조차도 이해할 수 없었다. 영어라도 잘했으면 그나마 나았을까? 전문 용어가 너무 많다 보니 번역기도 큰 도움이 되지 않는다.
"가 어떻게 결정돼?"
읽어온 논문의 내용을 설명하다 위 질문을 받았을 때, 내가 할 수 있는 말이라고는 "잘 모르겠습니다"가 전부였다. 논문의 수식을 공유할 뿐.
"탐색한 내용을 설명해 줘야지, 우리에게 보여주기만 하면 어떡하니?"
나도 팀의 일원이고 프로젝트에 기여하고 싶다. 하지만 마음같지 않다. 수학을 못한다는 걸 알았지만, 당장 해결할 방법이 없다. 그렇다고 포기해선 안 된다. 연구란 실험의 연속이고, 실험이란 일단 해보고 관찰하는 일이다. 의미란 알기 때문에 찾는 것이 아니라 일단 찾다 보니 발견되는 것이다. 이것저것 다양한 방법을 생각하고, 주어진 data를 이리저리 가공하면서 도움이 될 정보를 찾을 것이다.
DataSet 수집 과정을 설명한 paper(?)를 통해 data를 수집하기 위한 과정을 읽었다. 얼마나 철저하게 변인을 통제하는지, 얼마나 엄격하게 피실험자를 선별하는지, 얼마나 세심하게 data를 가공하는지...
참가자에게 어떠어떠한 약관을 동의받았는지에 관한 내용까지 명시되어 있었다
예전부터 (지금도 약간은) 컴퓨터공학과에 진학한 걸 후회하곤 한다. "타과로 진학하고 컴퓨터는 독학하는게 더 좋지 않았을까?"란 생각이 종종 들곤 했다.
이번에 Research를 진행하면서, 컴퓨터공학이란 분야가 결코 무시할 만한 분야가 아니라는 사실을 느낀다. 잠깐으로는 공부할 수 없는 깊이가 있다.
전역하고 많이 겸손해졌다고 생각했는데 난 아직 멀었나 보다.
"학문에 대한 탐구", "끊임없는 사색" 역시,,,,,