평범한 필기장

2달간의 AMI Lab Intern + 논문 작성 후기 본문

Experience/AMI Lab Research Intern

2달간의 AMI Lab Intern + 논문 작성 후기

junseok-rh 2024. 8. 22. 23:05

8월 20일 화요일. 2달간의 랩실 인턴이 끝났다. 원래 인턴 시작하면서 세운 목표는 매주 한주간 뭘 했는지, 뭘 배웠는지, 어땠는지 등을 포스팅하려했지만 정말 정말 정신없고 힘들어서 그럴 여력은 없었다.... 이렇게 끝났을 떄 나마 후기를 작성하려고 한다.

1달 간의 포항 생활

 일단 POSTECH AMI Lab 인턴 생활이 어땠는지부터 정리해보자면 첫 한달은 포항에서 기숙사 생활을 했다. 대부분의 대학원생들이 포항계셔서 랩실은 나름 붐볐다. 랩실 시설은 엄청 깔끔하고 좋았다. 5층에 랩실이 있었는데 4층에 쉬는 공간과 회의실?이 따로 또 있었다. 적응이 끝나고 쉬는 공간에 있는 턱걸이 기구를 종종 이용했다.

 첫 주는 연구 주제 관련된 3d editing 논문들을 쭉 읽고 서버 셋팅하는데 시간을 다 쓴 것 같다. 성격 상 적응하는데 시간이 걸리는 편이고 낯도 많이 가려서 한주 내내 긴장을 많이 했던 것 같다. 첫 주는 거의 논문만 읽어서 그런지 평화롭고 좋았다ㅎㅎ.

 2주차 때부터는 논문의 베이스라인 코드를 짰다. 두 모델을 합치는 단순한(?) 과정이라 생각해서 멘토님들이 전적으로 나한테 맡겼다. 근데 정말x100 쉽지 않았다. 처음에 내 컴맹 이슈로 환경 설정부터 엄청 오래 걸렸다. 두 모델이 필요로하는 버전이 달라서 맡는 버전 찾느라 시간을 거의 다 쓴 것 같다. 그리고 또 nerfstudio를 처음 써봐서 여기서 막히는 부분도 많았다.

 3주차 때는 베이스라인 모델 결과를 뽑아보고 다른 비교할만한 모델들의 결과도 뽑아 봤다. 결과는 우리의 예상과 다르게 정말 안 좋았다. 멘토님들과 나는 당연히 두 모델을 합치면 어느 정도의 결과가 나올 줄 알았다. 그래서 거기에 부족한 부분에 몇몇 최신 기술들을 좀 붙여서 결과를 향상시키려 했지만 그 계획은 무산됐다...

 4주차 때는 어떤 부분 때문에 우리의 예상과 다르게 좋지 못한 결과가 발생했는지를 찾았다. 물론 이 부분도 엄청난 디버깅과 기존 베이스라인 모델들과 우리가 합친 모델의 차이를 분석해서 알아냈다. 결국 포항 생활 내내 만든 베이스라인 코드의 결과가 좋지 못해서 1달을 버린 기분이였지만, 멘토님은 옆에서 '잘 안된 것을 알아낸 것도 좋은 결과다, 이 결과를 바탕으로 개선점을 통해 논문을 쓰면 된다.' 라고 위로를 해주셨고 나름 위로가 됐지만 그래도 너무 아쉬웠다. (이 외에도 정말 항상 칭찬만 해주시던 멘토님... 인턴 기간동안 큰 힘이 됐다...)

 이렇게 빠르게 1달의 포항생활은 끝났다. 나름 포항 생활동안 주말에는 포항 주변을 탐방(?)하면서 이쁜 카페도 가고 바다도 보면서 즐기고 싶었지만... 매주 주말 연구실에만 있었다...ㅋㅋㅋ 내가 부족한 탓에 할 일을 평일에 다 못 끝내서 어쩔 수 없었다. 포항 생활을 하면서 심심하면 어쩌지란 생각을 했지만 정말 정신없이 할 일을 하니 심심할 틈은 없었다. 또 나름 중간 중간 수영도 하고 학교 밖 맛집도 가면서 스트레스도 좀 풀고 그랬다.

 짧았지만 정말 좋은 기회였다. 연구실 사람들도 너무 좋았고 배울 점이 많은 분들이였다. 연구에 진심인 사람들 밖에 없었고 똑똑하고 열심히 사는 분들이었다. 성격도 다들 너무 좋아서 잘 챙겨주셨고 밥 먹으면서 고민 아닌 고민들(?)도 들어주셨다. 빨리 성수 출퇴근을 하고 싶다는 생각을 시작 전에 했지만, 포항에 더 남고 싶다는 생각으로 바뀌었다. 다같이 하는 술자리나 회식 이런게 많지 않아서 얘기를 많이 못 나눈 분들이 있다는게 너무 아쉬웠다. 다음에 또 만날 기회가 꼭 있었으면 좋겠다. 이 글을 그 분들이 읽지 않겠지만 정말 너무 감사하고, 덕분에 너무 행복한 포항 생활이였다고 전해드리고 싶다.

정신 없는 성수 오피스

 포항 연구실 생활이 끝나고 올라와서 성수에 있는 오피스로 출퇴근했다. 내 멘토님은 두 분인데 한 분은 포항, 다른 한 분은 성수에 계셔서 나는 성수 오피스로 출퇴근하게 됐다. 성수 오피스에는 나와 같은 인턴 4명 제외하고 다 고년차 박사 과정 분들만 계신다. 그래서 그런지 포항과는 사뭇 다른 분위기이다. 뭔가 정말 회사에 온 기분...ㅋㅋㅋ 이런 분위기 덕분인지 집중이 정말 잘 됐다.

 이번 주차부터는 진짜 연구 시작이었다. 우리가 생각한 베이스라인 코드의 결과가 안 좋았기에 방향성을 좀 틀었다. 그래서 우리가 생각한 방식에 맞는 새로운 모델을 개발했다. 물론 이 부분은 멘토님이 담당하셨다. 이 새로운 모델을 학습시키기 위해서는 그에 맞는 데이터가 필요했고 그래서 데이터를 직접 제작하기로 했다. 생성모델을 통해서 데이터를 제작하기로 해서 그에 맞는 논문, 모델들을 찾고 그 모델들로 샘플들을 만들어 봤다. 나름 우리가 원하는 방향으로 데이터가 생성되는 것 같아서 본격적으로 뽑기로 했다. 그래서 성수 1-2주차 때는 정말 노가다와 삽질만 했다. Prompt-to-Prompt(P2P)를 통해서 source image와 editing된 target image를 만들어야 하는데, 그래서 그에 맞는 prompt를 대거 만들어야 했다. 그래서 미친듯이 gpt를 이용해서 prompt를 만들고 결과가 좋은 형태의 prompt만 남겨서 그걸 또 gpt를 이용해서 불리고 ... 그렇게 불려진 prompt로 P2P 모델로 이미지들 왕창 뽑고.. 시간이 워낙 오래 걸리는 작업이라 남는 gpu를 다 긁어모아서 생성했다. 그래서 계정 만든 서버만 3개에 총 15대 넘는 gpu로 20만장 정도 뽑아 냈다. 혹시라도 이상하게 input을 넣진 않았을까, 결과가 이상하게 저장되지는 않았을까 하는 걱정들로 스트레스를 많이 받았던 시기였다.

 그렇게 노가다로 첫 2주를 보내고 나니 벌써 랩실에서 진행하는 인턴 최종 발표가 코앞이였다. 처음에는 학습된 모델의 성능이 좋지 않아서 멘토님도 엄청 스트레스를 받으셨던 것 같다. 그래도 최종 발표 직전에 남들에게 보여줄만한 결과가 나와서 발표 때 내가 한 결과들을 전부 보여줄 수 있었다. 3주차에는 새로 만든 모델을 끼워 넣어 우리가 원하는 결과를 만들고 그 결과를 바탕으로 발표 자료 만들고 등등 또 정신 없이 지나갔다. 3주차 금요일에 포항으로 내려가서 교수님 + 포항 랩실 분들 앞에서 인턴들이 발표를 해야하는데 정신없이 할 일을 하다보니 목요일이 돼서 전날 밤에서야 부랴부랴 발표 준비를 했다. 그래서 새벽까지 만들고 피드백 받고 포항가는 기차에서 수정하고 도착해서 피드백 받고 수정하고.. 그렇게 피드백과 수정의 반복을 하다보니 발표시간이 됐다. 발표 순서는 내가 두번째 순서인데 첫번째 순서에서 교수님과 랩실 분들의 무차별 질문 공격으로 오히려 다음 순서인 내가 진짜, 엄청, 극도로 긴장했다. 내 차례가 돼자 인사말 말고는 기억나는게 없었다. 내가 뭐라고 발표했는지, 질문에 어떻게 대답을 했는지 모르게 발표시간이 지나갔다. 발표가 끝나고 엄청 긴장해서 망쳤다라고 생각하는 순간 랩실 다른 박사과정생 분이 '준석님 결과가 엄청 좋아보이는데요?'라고 말씀하시면서 엄지척해주셨다. 정말 정말 기분이 너무 좋았고 긴장이 확 풀리면서 힘이 났다. 그렇게 공식적인 인턴 생활의 마침표를 나름 잘(?) 찍었다. 기차시간 때문에 랩실 분들과 다 같이 회식을 할 기회가 없었던 것이 너무 아쉬웠다. 3주만에 뵙는거라 할 얘기도 많을 것 같고 우리가 발표했던 것들에 대해서 얘기할 수 있는 좋은 기회였는데 정말 정말 아쉬웠다.

 공식적인 인턴 기간은 끝이지만 논문 제출은 정확히 1주일 뒤 금요일이기 때문에 나는 한 주 더 출근해야했다. 물론 거의 재택만 했다. 마지막 주에는 거의 실험만 돌렸다. 나는 writing에 참여하지 않았기 때문에 멘토님들이 요청하신 실험들만 주구장창 돌렸고 결과들 공유하고 그렇게 논문 제출날까지 보냈다. 이 때 정말 잠을 못잤다. 할 일도 많고 결과도 생각처럼 안나와서 스트레스도 받다 보니 늦게 자고 아침 일찍 눈이 떠졌다. 이 기간 동안 포항에 계신 멘토님이랑 전화를 엄청 하면서 어떻게 할 지에 대해 얘기를 나눴다. 논문 제출 이후 supplementary 제출까지 실험 기계마냥 시키는 일들을 했고 나름 결과를 잘 정리해서 제출을 했다.

느낀점 ...

 짧다면 짧은 두달간 랩실 인턴을 하면서 느낀점이라면.... 일단 연구라는게 쉽지 않을 것이라는 것은 당연히 각오하고 있었지만 정말 쉽지 않구나.. 힘들구나.. 라는 생각을 많이 했다. AI 뿐만 아니라 다양한 분야에 계시는 연구원들이 진심으로 대단하다는 것을 느꼈다. 또 내가 주도하는 연구를 하려면 정말 아는게 많아야 할 것 같다. 정말 논문을 많이 읽어야겠다라는 생각... 실험을 하는 중간중간 실수를 종종 했는데 시간이 부족한 짧은 기간에는 이런 실수를 줄여야한다. 그래서 실험 기록을 정말 정말 철저하게 해야겠다. 이 외에도 코딩을 내가 좀 더 잘했다면... 하는 생각도 많이 들었다.

 이번 인턴기간동안 멘토님 한분의 목표는 AAAI에 논문을 내는 것이였다. 나는 당연히 2달이란 짧은 시간에?라고 생각해 불가능할거라고 생각했다. 그런데 포항 처음에 다른 대학원생 분들을 만나서 얘기를 들어보니 '그 멘토님이 그렇게 말한거면 무조건 낼거다 .', '그 멘토님이 그렇게 말하고 안내는 걸 본 적이 없다.' 등등 의 반응을 보여서 설마?라고 생각했지만 정말 제출을 하게 됐다. 나는 연구에 참여하면서 연구라는 것을 경험만 해봐도 이번 인턴은 성공적이라고 생각했는데 탑티어 학회에 논문을 제출하는 경험을 할 수 있어서 정말 정말 영광이고 대학 생활 내에 최고의 방학을 보낸 것 같다. 노력한 만큼 결과도 좋길...

 또 대단한 사람들과 같이 생활하면서 많이 배우고 네트워킹할 수 있는 기회를 가질 수 있어서 너무 좋았다. 각자의 연구에 대해 얘기도 듣고 내 연구를 얘기해주고 또 내 연구에 대해서 다른 사람들의 생각도 듣고... 이 연구실에 진학할 수 있을지 모르겠지만 연구실 분들을 꼭 다시 만나고 싶다.

좋은 점들만 넘쳐났던 인턴 기간이었다.

앞으로 해야할 일

 이제 방학은 거의 끝! 막학기와 대학원 입시를 앞두고 앞으로 뭘 할지도 좀 생각해봤다.

  • 당연히 젤 중요한 건 대학원 입시 (토익 따자..., 연구실 컨택 및 다른 연구실들도 좀 더 알아보자...)
  • 논문 읽기 꾸준하게 (diffusion, image editing, 3d editing, ...)
  • 운동 꾸준히 (연구도 체력이 있어야!)

일단은 이 두 가지를 중점적으로 하면서 마지막 한 학기를 보낼 예정이다. 이번 인턴을 하면서 내가 어떤 연구를 하고 싶어하는지에 대해서도 많은 생각들을 하는 계기가 됐다. 일단 diffusion과 같은 이미지 생성 모델을 기반으로 하는 연구는 무조건 하고 싶은데 여기에 이번 기회를 통해 3d editing, 3d generation에 적용하는 연구들도 해보고 싶어졌다.

 

이렇게 길게 2달간의 인턴 + AAAI 논문 제출 과정을 간단하게 써봤다. 모든 과정이 끝난 시점에서 2달간의 생활을 돌아보면서 글을 대충 끄적여보니 다른 사람이 보기에 열심히 산거 맞아?라고 할 수 있지만, 나는 나름 내 인생에서 이렇게 열심히 한 적이 있나? 싶을 정도로 나름 열심히 연구에 집중했던 것 같다. 정말 엄청 엄청 힘들고 스트레스도 받는 기간도 있었지만 이런 경험으로 성장도 했을 것이라고 믿어 의심치 않는다.