개발공부 & 부트캠프/[부트캠프] 회고

[데이터 엔지니어링 부트캠프]11월 2주차 회고

포리셔 2023. 11. 13. 15:04

좋았던 점

  • 큰 틀에서의 시스템 아키텍처와 데이터 플로우를 어느 정도 정립하는 데 성공했습니다. 당연히 초창기 버전이라 모든 부분이 완벽하게 구상된 것은 아니었지만, 그래도
  • 조급하게 모델 선정에만 매달리다가 결국 일을 크게 길을 잃을 뻔해서 눈앞이 아찔했습니다. 그나마 마지막에 가서 정신을 다잡고 우리가 너무 성급하게 앞서 갔고 지금은 기초부터 돌아볼 때라고 메시지를 던져 조원들의 동의를 얻어내고 다시 EDA부터 진행해 작업을 정상 궤도에 올릴 수 있어서 다행이었습니다.

아쉬웠던 점

  • 너무 세부적인 주제에 매몰되는 것을 주의해야겠다는 생각을 했습니다. 이번 주 내내 머신러닝 모델을 선정하는, 어떻게 보면 국지적인 주제에만 매몰되어서 그 모델만 알아보고 다른 작업을 거의 진행하지 못했습니다.
  • 데이터에 대한 이해도와 전처리가 미흡한 상태에서 급하게 학습 과정에 들어가다 보니 테스트 삼아 진행한 모델 학습이 제 성능을 내지 못했습니다.

배운 점

  • 데이터 엔지니어의 태도: 강사님의 조언을 옮기자면, 현재까지는 대부분의 비즈니스 상황에서 AI와 머신러닝/딥러닝 모델을 서비스에 적용하려는 시도는 대부분의 경우 거의 성공하지 못한다고 합니다. 그러니 지금 당장 성공하지 못한다고 해서 크게 자책해서는 안 되고, 대신 머신러닝 모델을 대체할 다른 방안을 생각하는 것이 먼저라고 하셨습니다. 이 점을 저희 조의 파이널 프로젝트 진행 방향 수정에 적용할 필요가 있을 것 같습니다.
  • 옆 조 팀원의 조언: 하도 일이 안 풀리다 보니 다른 조 조원들에게 SOS를 요청했습니다. 조원들 말로는 차라리 하나의 큰 목표를 완전 달성하는 것은 일단 뒤로 미루고, 최소 단위 제품(MVP, Minimum Viable Product)을 만드는 것에 주안을 두어 마일스톤을 새로 수립하는 것이 좋다고 했습니다. 그래서 저희도 아예 최종 목표를 완전히 재현하는 완성된 모델을 만드는 것은 뒤로 미루고 단일 여행지 하나부터 추천하는 모델을 만들고자 계획을 수정하고 마일스톤을 수립하기로 했습니다.

앞으로 바라는 점

  • 정석적인 데이터 탐색(정확히는 EDA)을 거치지 않고 모델만 선정했고, 그 이후의 너무 성급한 진행 때문에 멘탈이 터져버린 탓에 모든 것이 어그러질 뻔했습니다. 현업 경험이 없는 입장에서 이렇게 성급하게 상황 판단을 할 것이 아니었는데, 마음만 급해서 과정 몇 개를 생략하면서 한 주를 통으로 날려버렸습니다. 그나마 주말 중에 EDA와 전처리를 함께 다시 진행하면서 사용할 수 있을만한 지표를 얻어내는 데 성공했으니 이를 기반으로 지금부터라도 밀도 있고 정석적인 과정을 밟아나가야 겠습니다.
  • 이번 한 주는 여러 모로 연구실에서 나오기 전의 가장 고통받았던 그 시기가 떠오르는 기간이었습니다. 근본적인 문제 해결을 위해서는 다시 근본으로 돌아가 데이터 자체에 문제가 없는지 검증하고, 다시 EDA를 진행하고 그 후에 모델의 선정과 튜닝을 진행했어야 하는데, 당시에는 당장의 성과를 요구하는 여러 압박 때문에 그러한 정석적인 해결책을 적용할 수 없었습니다.
    이번 한 주도 조급하게 모델 선정에만 매달리다가 일을 망칠 뻔했다는 점이 비슷했던 것 같습니다. 한편으로는 그 당시와 비교했을 때 또다시 같은 실수를 저지를 뻔했다는 사실에 마음이 너무나도 무거웠습니다. 하지만 일단은 실패를 두려워하지 않고 주어진 데이터로부터 괜찮은 인사이트를 얻을 수 있을지부터 다시 시작하기로 했습니다. 어떻게 보면 "개발자의 숙명은 디버깅, 즉 실패를 알아내고 잘 제어하는 과정"인데 지금 우리는 그 실패를 두려워해서 이론적인 부분에만 매몰되었던 게 아닌가 싶어 뭐라도 만들면서 다시 경험을 쌓아가기로 했습니다. 너무 급하니까 시야가 좁아지고 사고가 경직된다는 것을 느꼈으니, 지금부터는 속도는 높이되 조급해하지 않고 정석적인 방식을 따라가는 것으로 하기로 했습니다.