안녕하세요 저는 2023년 하계 URP를 이수한 컴퓨터공학과 19학번 박성준입니다. URP를 진행하면서 제가 한 고민과 느낀 점을 솔직하게 후기로 남기며, 이 글을 읽으시는 URP에 지원을 고민하시는 분들에게 도움이 되길 바랍니다.
[지원동기]
저는 공부를 열심히 하는 사람이 아니었습니다. 진로에 대한 고민도 하지 않았습니다. 생각없이 대학교를 다니다 보니 어느새 군대를 다녀오고 2학년 2학기였고, 주변사람들은 진로와 목표를 가지고 공부를 하는 데에 반해 저는 하고 싶은 분야도 없었고, 잘하는 분야도 없었습니다. 제가 가지고 있는 것은 초라한 학점과 무엇이라도 해야 한다는 막연한 생각이었습니다. 그래서 저는 여러가지 경험을 해보고 진로를 정하자 생각을 했고, 그렇게 들어간 인공지능 동아리에서 시각적인 부분을 다루는 Computer Vison에 흥미를 느껴, 인공지능에 관심을 갖게 되었습니다.
저는 새로운 것을 알아가는 과정에서 만족을 느끼는 사람이었고, 때문에 연구자가 되고 싶었습니다. 하지만, 학교 수업만 들으면서 연구가 무엇인지, 대학원이 어떤 일을 하는지에 대해 무지했고, 아무것도 모른 채로 연구자가 되기로 결정하고 싶지는 않았습니다. 지능기전 오픈 랩 행사를 통해 URP를 알게 되었고, 최유경 교수님이 추천해주신 ‘대학원생 때 알았더라면 좋았을 것들’ 책과 RCV연구실의 홈페이지에서 여러 후기글들을 읽어보며 URP가 저와 같은 생각을 갖고 있는 사람들에게 도움이 될 것이라 판단했고, URP를 통하여 연구를 경험해보고 내가 연구자에 더 맞는 사람이라는 확신을 얻고 싶었습니다.
[URP 과정]
저희 기수는 다음과 같은 순서로 URP를 진행했습니다.
1주차: 인공지능 기초 교육 & Object Detection 기초 교육
2주차: SSD 논문 읽기 & PASCAL VOC 데이터셋 원복
3~6주차: KAIST PD 데이터셋 원복 및 성능개선 Challenge
7주차: Camera Calibration
8주차: Camera Grabber & Annotation
저는 다른 분들과 다르게 기계학습, 인공지능 수업을 듣지 않았기에 URP를 시작하기 앞서 최유경 교수님의 인공지능 이론 강의를 듣고 URP를 시작했습니다.
1주차에는 인공지능에 대한 기초 개념을 공부했습니다. 다른 분들에 비해 인공지능에 대한 사전지식이 부족했고 PyTorch도 처음 알았기에 저에게는 굉장히 어려웠습니다. 매일 새벽까지 남아서 공부하면서 제 부족한 부분을 공부해서 간신히 진도를 따라갔던 기억이 납니다.
2주차에는 SSD에 대한 공부를 합니다. 처음으로 논문을 읽어보면서 이해하는 데에 시간이 많이 들었습니다. 반복해서 읽으며 SSD의 구조와 흐름에 대해 감을 잡았고 글로만 봤을 때는 이해가 되지 않던 부분이 실제 코드를 보면서 어떻게 구현되었는지 확인하며 이해할 수 있었습니다.
3주차부터 6주차까지 RGB, Thermal 이미지를 활용한 KAIST PD 데이터셋을 활용하여 원복을 하고 Detection 성능 향상을 하기 위한 Challenge기간이 진행되었습니다. 연구의 과정을 체험하는 기간으로 문제를 정의하고 개선한 후에 성능을 확인하고, 어떤 점이 개선되었는지, 어떤 문제가 남아있는지를 분석합니다. 이때 문제정의는 정량적, 정성적 분석을 통한 다른 사람이 납득할 수 있을만한 논리가 필요합니다. “문제가 주어지고 주어진 문제를 해결하는 것이 아닌, 문제를 만드는 것 그리고 그 문제를 해결하는 것”이 제가 느끼기에 연구에서 가장 중요한 과정이고 짧은 기간이었지만, 연구가 어떤 것인지에 대한 감을 잡을 수 있는 기간이었습니다.
7주차와 8주차는 카메라로부터 데이터를 취득하는 Camera Grabber와 취득한 데이터를 통하여 카메라의 파라미터를 추정하는 Camera Calibration에 대한 공부로 Challenge기간동안 활용했던 데이터들을 취득하는 과정을 알아볼 수 있는 기간이었습니다.
[느낀 점]
URP는 8주동안 진행되는 과정으로 정해진 시간 내에 주어진 task를 완료해야 합니다. 이는 공부를 오래하며 신체적으로 힘들 뿐만 아니라 정신적으로도 압박감이 상당하기 때문에 결코 쉽지 않은 프로그램입니다. 시간내에 정해진 task를 완수해야 하므로 정해진 시간 내에 완수하지 못하는 경우 남아서 공부하는 경우도 많이 생기며, 특히 Challenge기간은 다른 사람은 성과를 올리는 데 반해 자신이 정체되어 있다는 생각이 드는 순간 노력했던 만큼 스트레스를 받고 마인드 컨트롤하기 힘듭니다. 저는 1주차부터 간단한 코드가 구현하기 힘들고, 이론도 잘 모르겠는 상황이 생기면서 남들에 비해 뒤처져 있다는 생각이 들었고 스스로 능력이 부족하다고 생각이 들때마다 스스로에 대한 실망이 컸습니다. 조교님이 늦은 시간까지 제 질문을 받아주고 가르쳐줄 때 속으로 정말 고마우면서도 동시에 죄송했고, 다음 task부턴 그렇지 않게 하리라고 다짐하고 정말 열심히 공부했습니다. 주말에도 열심히 공부해서 따라가려 노력했고, 몰랐던 개념 하나하나 알아갈 때 정말 뿌듯했습니다. 지금 생각해보면 그 뿌듯함과 성취감이 8주를 버틸 수 있는 원동력이 되었던 것 같습니다.
매주 세미나를 진행하며 제가 배운 내용을 남들에게 전달하고 소통하는 일이 쉬운 일이 아니라는 것을 알았습니다. 세미나는 준비하면서 자신이 한주동안 공부한 내용을 복습하며 부족했던 부분에 대해 다시 알아볼 수 있는 기회인 동시에 자신이 이해한 점을 남들에게 전달하는 방법을 배우는 시간이었습니다. 내가 알고 있다고 생각한 부분이 사실은 잘못 알고 있거나 디테일이 부족한 경우가 많았고, 조교님들의 질문을 통해서 제가 놓치고 있었던 부분들을 보완할 수 있었습니다.
URP기간은 동시에 동료들의 중요성을 알아가는 기간이었습니다. 매일 늦은 시간까지 같은 자리에 남아 열심히 하는 동기들의 모습은 서로에게 자극이 되었고, 힘들 때마다 위로가 되어주었습니다. 서로 의지할 수 있는 동기들과 8주간의 여정을 함께해서 수료할 수 있었습니다.
[마치며]
URP프로그램에 만들고, 참여할 수 있는 기회를 주신 최유경 교수님, 항상 질문 잘 받아주시고 최선을 다해 도와주신 조교님들, 모든 과정 함께한 10기 동기분들 모두 감사합니다. 특히, 부족한 저를 멘티로 만나 늦은 시간까지 같이 남아주시고, 개인시간 줄여가며 저에게 도움을 주시고 제가 엇나가지 않도록 방향성을 잘 제시해주신 담당멘토 김도경 조교님 정말 감사드립니다.