2024년 상반기 회고
안녕하세요. 이재찬입니다.
2024 겨울URP를 마치고 긴장 반 설렘 반 경직된 상태로 연구실에 합류한 것이 멀지 않은 순간처럼 느껴지는데, 저는 벌써 4-1학기를 마무리하고 계절은 후덥지근한 여름으로 바뀌었네요.
무언가 힘들었던 것 같기도 하고, 무언가 재밌었기도 하고, 여러 복잡한 감정이 남은 채로 2024년 상반기를 돌아보고 있습니다. 그래도 일단은 지금까지의 시간들을 지나온 이래저래 적응하느라 정신없었던 저 자신에게 상반기동안 수고많았다는 말을 하고 싶네요. 이 더운 여름도 허둥지둥하다가는 금새 지나가버릴 것만 같기에, 회고를 통해 지난 날의 저를 충분히 돌아보고 앞으로의 하반기 다짐을 정리해 보겠습니다. 사건은 주로 24년 초부터 시간순으로 다루되, URP에 대해서는 “URP를 마치며”에 기록해두었으니 생략하고 넘어가도록 하겠습니다!
<2024년 상반기를 돌아보며,,>
2024 상반기는 크게 저의 할 일은 학부공부(특히 캡스톤)과 연구실 기초교육으로 나누어졌습니다.
3월 초, 연구실이라는 새로운 집단에 들어서는 그 설렘은 앞으로의 공부에 대한 걱정을 눌러버릴 정도로 컸습니다. 사실 저는 처음에 학부 수업과 연구실 기초 교육을 병행하는 것에 대해 꽤나 호기로운 자세를 가지고 있었던 것으로 기억합니다. 캡스톤과 딥러닝시스템, 케이묵1개, 싸강1개로 듣는 수업도 적었고, 학부공부와 연구실공부 두 마리 토끼를 다 잡으면서 4-1학기를 무난하게 마무리할 수 있을 줄 알았습니다. 하지만 역시 저를 너무 과대평가했던 것일까요. 사실 캡스톤에 거의 매주 발목이 잡힌 상태로 지내다보니, 한주간의 공부를 토대로 기초교육 세미나를 진행하는 데 있어서 굉장히 버거웠던 기억이 납니다. 염치없게도 기초교육을 진행해주시는 정민, 석준님께 세미나 시간을 늦출 수 있냐고 계속 물어봤던 것 같고, 정민, 석준님은 보통 그런 저를 배려해주시면서 많은 일정조정을 거치며 기초교육을 진행해 주셨습니다.(심심한 감사의 말씀을 드립니다.) 사실 이렇게 기초교육 세미나 일정을 미루는 것이 저에게도, 같이 교육을 진행하는 동기인 현석이에게도 그리 좋은 현상은 아님을 머리로는 너무나도 잘 알고 있었으나, 몸은 캡스톤과 기초교육 두 마리 토끼를 다 잡으려고 아둥바둥 하고 있었던 것 같습니다. 스케줄이 참 쳇바퀴 같았습니다. 몸을 망치는 스케줄이 있다면 딱 내 스케줄이겠구나 생각했습니다. 미리미리 준비하는 효율적인 공부는 온데간데 없었습니다. 매주 금요일에 캡스톤 진행상황 발표가 있었고, 매주 월요일에 기초교육 세미나가 주로 진행되었습니다. 그래서 목요일에 캡스톤 준비로 밤을 새고, 금요일에 잠을 못잔 상태이기에 빠른 퇴근을 하고 저녁에 집에서 자고, 토요일에 다시 캡스톤에 시간을 쓰고 잠시 여자친구를 만났다가, 일요일에 기초교육 세미나를 위해 밤을 새고, 월요일에 세미나하고, 다시 화수목을 기초교육 공부하고,,,, 순으로 쳇바퀴 돌 듯 안 좋은 생활패턴으로 몸도 망가지고 정신도 참 힘들었던 것 같습니다. 그래도 기초교육 내내 똑같이 힘든 상황임에도 밥먹을 때 공부할 때 한번씩 웃게 해주는 현석이와 틈틈이 짬내서 기초교육 지도해주셨던 정민석준님, 본인도 회사다니면서 주말에 잠깐 볼때도 매주 고생한다고 안아주고 힘을 주었던 여자친구, 매주 의무방어전을 하듯이 캡스톤발표를 쳐내지만 그럼에도 기능 하나 구현해 낼 때마다 신나서 떠들던 캡스톤 조원들, 매주 별일없냐며 먼저 안부를 물어봐주시는 목포에 계신 부모님, 같이 자취하면서 나의 연구실 생활을 가장 잘 이해해주고 조언을 많이 해준 박사과정 친형 등 저를 응원하고 저에게 힘이 되어주는 존재가 참 많아서 밤 새서라도 무언가를 자꾸 해내려고 했습니다. 적고보니 참 저의 행보를 응원하는 사람이 있고 없고의 차이가 정말 저에게 크게 와닿았네요. 글로 표현해보니 더 감사하는 마음을 갖게 되고 더 정진하고 싶어집니다.
자 그럼, 이렇게 찡찡거리며 결국 완주했던 캡스톤과 기초교육은 어땠느냐를 좀 돌아보고, 남긴 것은 무엇인지를 좀 되짚어 보겠습니다.
캡스톤.. 시간을 정말 많이 들였던 것 같은데 결론적으로는 A0의 성적을 받고 창의설계경진대회 장려상이라는, 들인 품에 비해서는 다소 아쉬운 성적을 냈습니다. 사실 A0도 잘한 게 아닌가 하고 생각이 들기도 합니다. 왜냐면 프로젝트의 주제 자체가 꽤나 주관적일 수 있는 필요에 의해 선정이 되었고(네컷사진 관리 및 포즈 분석/추천, 미소 이벤트 앱,, 이라는 약간 짬뽕탕같은 앱), 서비스 실사용 관점에서도 UI든 뭐든 부족한 점이 많이 있었기 때문입니다. 저는 모델 부분을 맡아 개발을 진행했는데 pretrained된 모델의 오픈소스나 api를 가져다 쓰는 방식으로만 해결한 부분이 많았고, 해당 모델의 논문을 살펴보면서도 완벽한 이해는 하지 못한 채 느낌만 알고 매주 기능 구현을 위해 가져다 쓰고 output이 잘 나오는 지 실험해보는 경우만이 많았습니다.
모델 기능 중 사람별 클러스터링, 미소탐지 기능은 제가 직접 짠 알고리즘과 제가 찾은 데이터셋으로 학습시킨 모델은 성능이 매우 낮아,, 써먹을 수도 없었을 정도였고 그에 반해 AWS의 Rekognition이라는 다기능 통합모델이 있었는데 이 모델이 제 모델보다 성능이 월~등히 높아서 임기응변으로 해당 모델을 비용을 지불하면서까지 api를 가져다 썼습니다.
포즈분석 및 추천 기능은 초기엔 사람의 관절 key point를 이용한 pose estimation으로 접근해보려 했으나, 네컷사진 속 인물은 상반신 위주로 나오고 상당히 다른 사람들과 occlusion되는 경우가 많았기 때문에 pose의 정확도가 상당히 poor했습니다. 그래서 GPT4o api를 이용해 프롬프트 엔지니어링 방식으로 또 임기응변으로 해결하게 되었습니다.
마지막으로 타인의 네컷사진에 대한 개인정보보호 이미지 비식별처리 기능으로 GAN(이미지 생성형 변환 태스크)과 HAT(image super-resolution 태스크) 방식으로 인물을 애니메이션화 시키는 파이프라인을 만들었는데, 이 또한 pretrained된 모델의 오픈소스를 상당부분 활용해 해결했습니다.
결론적으로는 모두 임기응변식으로만 기능을 구현해냈을 뿐, 그 속의 저의 순수 코딩 및 모델 학습 실력으로 이뤄낸 것이 많지 않았기 때문에 아쉬운 마음이 듭니다. 개발이 이런 임기응변으로만 해결되는 것은 분명 아닐 것이기 때문에, 프로젝트를 어찌저찌 잘 마무리했다는 뿌듯함 속에서도 남는 것이 많았던 개발이었냐를 생각해보면 사실 그렇게 많지는 않았던 것 같습니다. 하지만 또 다르게 생각해보면 오히려 개발보다 연구에 더 마음이 가게 만든 그런 프로젝트같기도 합니다. 역시 모델의 상세 구조에 대해 자세한 이해도 없이 가져다 쓰는 것보단 역시 모델 구조를 뜯어보고 논리적으로 이해가 되야만 저는 무언가를 배웠다고 느끼게 되는 것 같습니다.
이제 그런 논리력을 추구하는 면에서, 기초교육은 정말 제게 많은 도움이 되었습니다.
중간고사 전까지 처음 약 4-5주 동안은 고양이책, BoVW, VLAD 실습, 영상이해 등 CV와 영상처리 전반의 기초적인 개념과 실습들을 진행했습니다. 참 기초를 다지기 좋은 커리큘럼으로 잘 구성해주신 것 같습니다. 학부3학년 때 영상처리 기계학습 인공지능을 모두 수강하였었지만, 해당 4,5주동안은 정말 기초가 부족했구나라고 느끼면서 공부했던 것 같습니다. 왜?에 대한 질문이 참 끝도 없이 피어오를 수 있는 내용이 많았음에도 이런 포인트들을 죄다 놓치면서 보이는 것을 받아들이기만 하는 공부를 하고 있던 찰나에 정민님이 한번 꾸짖으셨던 기억이 납니다. 이런 식으로 논리적인 생각의 흐름이 없이 받아들이는 식으로만 공부를 하게 되면 나중에 스스로 연구하는 데 있어서 커다란 걸림돌이 될 것이다. 이 말이 참 와닿았습니다. 항상 보여지고 주어지는 내용만 공부하던 습관에서 벗어나게 되는 첫걸음이었습니다. 이후부터 기말고사전까지 self-supervised monocular depth estimation 태스크와 관련된 논문들을 읽고 세미나하는 순간까지 이런 논리적인 사고가 부족했던 부분들이 많이도 있었지만, 그럼에도 항상 의식하고 생각하다보니 지금으로썬 생각보다 왜?라는 물음과 더 친해지게 된 것 같습니다. 이런 생각의 전환을 만들어주시려 짬내서 도와주신 정민님께 감사의 말씀을 드립니다.
self-supervised monocular depth estimation 태스크를 간단하게 나마 follow up 하던 것에 대해서는 이 과정에서 얻은 것은 무엇인지 짚어보자면, 어떤 태스크에 있어서 여러 논문들 사이의 차이점과 연관성을 파악하는 방식을 배웠고, 논문의 큼직큼직한 흐름과 구조를 알게 된 것 같습니다. 이전엔 논문의 첫 문단만 봐도 영어로 도배된 내용에 한줄한줄 단어해석하느라 답답하고 버거운 느낌이었는데, 이제는 그래도 논문을 좀 더 크게 쪼개서 abstract, conclusion, method(input, output 위주로 큼직하게), dataset, 등을 naive하게 이해하고 그 다음에 논문과 조금 친해진 상태로 논리적으로 따져보며 읽어보는 능력이 조금은 생긴 것 같습니다.
결론적으로는 기초교육 기간 동안 스스로 공부하는 법을 조금 터득한 것 같습니다. 앞으로의 시간들에서는 더욱 효율적으로 시간관리까지 하며 제 것으로 올바르게 흡수하는 법을 조금 터득하고 싶습니다.
<팀 배정 후,,>
기말고사가 끝나고 난 직후 저는 로보틱스 팀으로 팀 배정이 되게 되었는데, 아직 얼떨떨한 것 같습니다. 저번 한 주 동안은 기존의 OWOD(Open World Object Detection)와 Foundation model을 활용한 FOMO에 대해서 논문을 읽으면서 OWOD 태스크의 가벼운 흐름을 이해했고, 6D pose estimation 태스크의 CNOS와 SAM-6D 논문을 읽고, SAM-6D 는 인퍼런스 코드까지 돌려보고 마무리 하였습니다. 아직 처음 접하는 태스크들이 낯설면서도 동시에 흥미로워서, 재밌으면서도 어려운 그런 양가감정이 드는 요즘입니다. 앞으로 7월 이후 제가 이 팀에서 어떤 역할을 부여받고, 어떤 분야의 공부를 더 깊게 파고들지는 아직 미지수지만, 우선은 주어진 일에 최선을 다해서 팀에 적응하는 것을 먼저 하고 싶습니다.
<방학기간 추가로 이뤄내고 싶은 것>
- 운동 2. 잠 3. 영어 입니다.
우선 원래 저는 마르지만 탄탄한 체형을 가진 편이어서 연구실 들어오기 전에 몸무게가 67kg이었는데, 연구실 들어오고 나서 6kg이 쪄서 현재는 73kg이 되었습니다.. ㅋㅋ… 앉아있는데 뱃살이 접히고 서있을 때는 또 배만 볼록 튀어나오더라고요? 밤샘이 많았으니 몸의 밸런스가 망가져서 그런 것 같긴 한데, 지금 저는 약간의 심각성을 느끼고 퇴근하면 집에서 맨몸운동을 다시 시작하고 있습니다. 저희 아빠가 옛날에는 정말 마르셨는데 40~60세 까지 배불뚝이셨거든요? 현재는 조금 빼셔서 정상체형으로 돌아가셨지만, 제가 아빠의 예전 몸을 닮아가고 있는 것 같다는 생각에 흠칫 놀랐습니다. 아무튼 운동 열심히 해야겠다라는 생각이 듭니다.
다음은 깨어있는 시간과 자는 시간의 밸런스를 잘 지키고 싶습니다. 잠을 잘 못자니까 모든 신체 밸런스가 무너지는 것 같아요. 규칙적으로 일정 시간만큼 자는 습관을 조금 들이고 싶습니다. 밤은 최대한 덜 새고,,,
마지막은 졸업을 위함 겸, 영어 실력을 좀 기르고자 토익 공부를 해볼 예정입니다.
2024년 하반기도 열심히 한번 달려보겠습니다. 화이팅!!