본문 바로가기

공부방/Upstage AI Lab 4기

패스트캠퍼스 Upstage AI Lab 부트캠프 4기 | 과정 종료 회고

2025. 02. 14

7개월의 부트캠프 과정이 종료됐습니다. 벌써 회고를 쓸 시간이 됐다니, 늘 느끼는 거지만 정말 시간 빠르네요.
부트캠프 과정을 전반적으로 되돌아보면서, 뭘 배웠고 어떤 것들을 해왔는지 굵직하게 한번 정리해보겠습니다. 

저는 "패스트캠퍼스 Upstage AI Lab 부트캠프 4기" 과정으로 7월 16일에 개강하고, 2월 14일 수료식으로 마무리를 했습니다. 개강 후부터는 줌 수업부터 온라인 강의로 쭉쭉- 달리기 시작했는데요. 전반적인 과정 내용을 기억나는대로 정리해보았습니다. 

스타트!

이제 안녕~~ 매일 들어갔던 슬랙이랑 출첵 시간마다 울렸던 알람도 모두 끝이다! 알람을 삭제하니 조금씩 실감이 난다. 

 

Computer Science

일주일 정도를 '컴퓨터 공학 개론'이라고 해서 줌 강의와 온라인 강의를 병행했습니다. 솔직히 일주일만에 컴퓨터공학개론을 전부 훑는다는 게 말이 되나요? 당연히 안된다는 거 알죠. 그래도 일단 우겨넣어 봅니다. 강의 내용이 이해가 되건 되지 않건, 한번 들어봤다는 게 중요하다- 이런 마인드로 그냥 듣습니다. 그런 거 치고, 줌 강의는 좋았습니다. 강사님께서 일주일은 무리라는 걸 아시면서도 최대한 많은 걸 가르쳐주시려고 노력하는 진정성이 느껴졌거든요. 

Python

이후에 10일 정도는 파이썬 강의가 이어졌습니다. 파이썬 기초부터 가르쳐주셨는데, 저는 과정 시작 전에 미리 제공해주신 강의를 들었던 게 도움이 많이 됐습니다. 비전공자가 AI를 처음 공부하기 시작한다면 아마 이 부분이 가장 중요한 것 같습니다. VS code를 제대로 깔고, 가상환경 세팅도 하면서, 서버에 접속하고 파일을 이리저리 옮기는 것, 이런 가장 기본적인 부분이 시작되는 지점이 파이썬이였던 것 같습니다. 파이썬의 기본 개념들을 익히고 어떻게 동작하는지를 알게 되면, 나중에는 클로드나 챗지피티가 짜주는 코드를 보면서 계속해서 공부하는 게 일상이 되었습니다. 어쨌든 과정 중에 가장 중요한 관문이 파이썬입니다. 솔직히 말해서 10일은 좀 오바인 것 같고, 한 달은 넉넉히 투자해서 파이썬 공부를 열심히 해놓는 게 그 다음 공부를 해나가기 위해 가장 필요한 일이라고 생각합니다. 

GIT

이후에 3일 정도 Git을 공부하는데, 이 강의도 매우 도움이 됐습니다. git에 대한 기본적인 개념과 어떻게 써야하는지를 익히고, 프로젝트를 하면서 사람들과 git으로 협업하는 방식을 맛보기 수준으로 해볼 수 있거든요. 깃을 처음 배울 때는 너무 난해하고 어려운 느낌인데, 한 3번 정도 해보니 약간 감이 잡히는 것 같았습니다. 솔직히 할 때마다 어렵고, 자꾸 에러가 나서 때려치우고 싶을 때도 많았는데. 최근에 포트폴리오 챗봇 만들기를 해보니, git으로 버전관리하는게 얼마나 다행(!)인지를 깨닫게 됐습니다. 믿고 써보세요! 분명 나중에 git에 감사의 절을 올리고 싶을 때가 옵니다. 

랭체인 프로젝트

다음 일주일은 바로 랭체인 프로젝트입니다. 솔직이 이때는 뭐가 뭔지도 하나도 모르겠는데, 일단 만들라고 하니까 강의보고 그냥 똑같이 베껴쓰기 해보는 정도(?) 지금 생각하니 허접하기 그지없습니다. 첫 프로젝트였고, 저는 굉장히 겁을 먹고 있었습니다. 특히 이때는 5명이서 조가 편성됐다가 2명이 중간에 사라지는 바람에 저를 포함해 3명이서 하게 됐는데요. 프로젝트 자체는 이해했어도, 팀원들과 어떻게 얘기를 해야할지, 각자 어떻게 역할을 분담해서 해야할지 모르겠더라고요. 그 당시 적막... 떠올려보면 아득하네요ㅋㅋㅋㅋㅋ 각자 알아서 공부하고 각자 전부 다 만들어보는 식으로 했습니다. 그리고 나중에 합쳤죠. 이게 맞나... 싶었지만, 어찌어찌 제출은 했다는 안도감으로 끝났던 프로젝트였습니다. 

수학

프로젝트 이후 4일 정도는 뜬금(?)없이 수학을 공부했습니다. 진짜 수학과 강의를 하시는 강사님께서 나오셔서 증명하는 방법부터, 함수의 정의... 뭐.. 너무너무 기본적이라는 내용을 알려주셨는데 교양수업이라 생각하고 듣기에는 너무 좋았습니다. 하지만 그 강의도 딱 3일뿐이였기 때문에, 그냥 안내서를 한번 훑어본 느낌이였고. 선형대수를 꼭 공부하라는 말을 남기고 사라지셨습니다. 이후 깊은 인상을 받아, 선형대수 강의를 들으려고 북마크를 해두고, 블로그에도 수학이라는 카테고리를 생성했지만.. 이후에 한번도 수학 공부를 하지 못했습니다. 하하 이제 부트캠프 과정이 끝났으니, 진짜 해봐야죠! 

여기까지가 인공지능을 공부하기 위한 기초 과목들이였다면, 이후부터는 본격적인 전공 과목처럼 들어갔습니다. 

온라인 강의

머신러닝

인공지능의 기반이 되는, 그리 오래되지 않았지만 지금처럼 급격한 속도를 비춰보면 고전(?)처럼 보이게 되버린 '머신러닝'으로 스타트를 끊었습니다. 머신러닝 베이직과 심화 강의가 있었고, 베이직 강의는 처음에 워낙 쉽게 설명해주려고 하셔서 그런지 대충 잘 이해가 되는 것 같았습니다. 물론 정확히 무슨 뜻인지는 모르겠지만, 한국말로 설명을 해주니 그런가보다~ 이렇게 넘어가는 수준이였지만요; 그리고 이때부터는 플젝을 위한 팀을 짜줬는데, 팀원들과 함께 온라인 강의 진도를 체크하기도 하고 각자 공부한 부분 중에 어려운 내용을 얘기하기도 하면서 많은 도움을 받았습니다. 물론 어쩌다 보니 그냥 수다도 많이 떨었어요. 제 기억에 가장 분위기도 좋았고, 기억에 많이 남는 팀이였어요.

강의는 베이직 강의 일주일, 심화 강의 일주일을 들어서 2주 정도를 강의를 듣는 시간으로 배분되어 있었는데요. 놀랍게도 심화강의를 듣는 일주일 기간부터 경진대회가 곧바로 시작이 되기도 했어요. 그래서 경진대회 기간이 총 2주이긴 했지만 앞의 1주는 심화 강의를 들으면서 경진대회를 진행하느라 조금 정신이 없었던 것 같아요. 이때 했던 경진대회가 '아파트 가격 예측하기'였습니다. 그리고 이때까지만 해도 '학습'을 시키고 '평가'를 한다는 것에 대한 개념이 부족해서 끝나는 순간까지 많이 헷갈렸던 기억이 있어요. 그래도 팀원들 덕분에 어찌어찌 따라가면서 "이렇게 하는 거구나~"에 대한 감을 잡을 수 있었습니다. 이렇게 한번 프로젝트를 하고 나니까, 강의를 다시 들어보니 그제서야 이해가 되는 부분도 많았어요. (역시 사람은 직접 경험을 해봐야..) 

MLOps

MLOps 강의는 개인적으로 매우 힘들었어요. 코딩을 시작한지 얼마 되지 않은 상태에서 갑자기 실무자가 와서 화려한 쇼를 아주 쉽게 보여주면서 이렇게 하면 된다고 하는데, 나는 하나도 모르겠고. 괴로운 시간들이였지만... 많은 걸 듣고 눈치껏 볼 수 있었던 것 같습니다. MLflow랑 FastAPI, Airflow까지는 어쩌어찌 따라가봤는데 도커 설치하고 AWS에 올리고 그런 건 중간에 막힌 이후로 해보지 못했습니다.. 그리고 줌 강의가 끝나고 프로젝트를 했는데 이때 했던 프로젝트가 '손글씨 숫자 입력이 들어오면 숫자로 변환해서 데이터베이스에 저장하고 다시 학습에 이용하는 사이클을 가지는...' 그런 걸 만들었는데 Airflow가 제대로 돌아가지 않고 좀비문제에 가로막혔는데 제 의지력(?)과 시간 부족으로 해결하지 못하고 그냥 넘어갔던 아쉬운 프로젝트로 기억됩니다.. 에어플로우... ㅂㄷㅂㄷ... 맛보기를 했다가 매워서 뱉어버린 셈이네요. 언젠가 필요할 때가 온다면 다시 맛봐주겠어...! 

딥러닝, 파이토치 강의

두 개의 연달은 프로젝트에 지쳐있던 시기에 단비와 같은 '온라인 강의' 기간. 이때 정말 마음 잘 다잡아야 합니다.. 조금 흐트러지면 강의는 안듣고 놀기만 하게 되거든요. (제 얘기...) 굉장히 중요한 걸 배우는 시기인데 파이토치는 제대로 배우지 못하고, 딥러닝 강의는 좀 열심히 들었던 것 같아요. 이때 들었던 딥러닝 강의가 머신러닝부터 최근 모델의 발전까지 역사적으로 잘 설명해주셔서 굉장히 큰 도움이 됐습니다. 

Computer Vision

이제 AI의 세부 분야로 들어가서 AI를 적용해서 할 수 있는 여러 태스크들을 공부하는 시간입니다. 그 중 첫번째가 CV였는데 이것도 머신러닝때와 마찬가지로 2주를 공부를 하고 2주는 프로젝트를 하는데 그중 1주일은 강의와 프로젝트를 병행했습니다. CV도 강의만 들을 때에는 이게 대체 무슨 말이야?! 싶었는데 프로젝트를 하면서 조금씩 감이 잡히더라구요. 프로젝트는 이미지를 분류하는 모델을 만드는 것이였는데, 데이터 어그멘테이션을 하고 데이터 양과 질을 어느 수준으로 만들어야 하는건지, 그리고 실험 세트는 어떻게 만들지에 대해(작은 실험을 여러번 할 것인가, 큰 실험을 몇 번을 할 것인가) 등을 고민했던 기억이 나네요. 다른 팀원들과 다양한 모델들을 실험하면서 내용을 공유하고 가설도 세워보며 검증해보면서 처음으로 '재미'라는 걸 느꼈던 프로젝트였습니다. 이때 희망이 생겼죠. 이 길로 계속가도 괜찮겠다는 희망.

지금까지 진행했던 경진대회

NLP

이어지는 NLP 강의와 프로젝트! NLP는 제가 가장 관심이 있던 분야였라서 강의도 열심히 듣고 프로젝트도 이전 프로젝트들에서 여러 경험이 쌓이면서 더 적극적으로 다양한 것들을 시도해봤던 프로젝트였어요. 대화문을 요약하는 대회였는데, 평가지표가 조금 난해했었습니다. 요약문을 더 잘 만들게 하기 위해 다양한 모델들을 사용해보면서 허깅페이스에서 모델을 다운로드해보고, 다른 모델과 토크나이저를 탐색하기도 하고, 모델에 맞춰서 코드도 바꾸고... 그 과정에서 무수히 많이 나오는 에러들 하나하나 때려잡아가면서, 힘들었지만 정말 많은 걸 배웠던 프로젝트였습니다. 여러 시도를 했지만, 결국 챗지피티 파인튜닝한게 제일 잘나와버려서, 오 이런게 자본의 힘인가를 느끼기도 했고요. (덕분에 1등 했습니다.ㅋㅋㅋ)

LLM, 데이터센트릭 강의

NLP 프로젝트가 끝나니, 뭔가 열심히 했다가 탁! 풀리는 느낌이 들면서 쉬고 싶고 놀고 싶고 그렇더라고요. 솔직히 이때 강의는 설렁설렁 듣고 놀기도 했던 것 같아요. 그래도 데이터센트릭 강의는 재밌었습니다. 데이터를 어떻게 만들어내고, 관리하는지를 듣는 건 원고를 모으고 관리하는 것과 비슷한 면들이 있더라고요. 

IR 프로젝트

IR 프로젝트도 저한테 너무나 잘 어울리는(!) 너무너무 관심있는 주제였어요. 과학 질문과 답변이 데이터베이스로 주어지고, 이걸 쿼리를 던졌을때 RAG로 관련있는 질문과 대답을 뽑아서 답변을 만드는 것이였거든요. 과학과 RAG라니 완전 제 취향이잖아요!! (잘 만들면 궤도AI 같은 걸 RAG로 만들어낼 수 있겠다 싶었던.ㅋㅋㅋ) 어쨌든 너무 재밌는 주제였는데 팀 편성이..ㅋㅋㅋ 저희 팀은 딱 두 명이였습니다. 하지만 2명이였지만(그것도 비전공자 두 명...), 저희는 각자 다른 방향을 잡아서 서로 방향에서의 결과를 공유하면서 조화를 이뤄갔습니다. 저는 엘라스틱서치를 사용해보고, 다양한 리트리버를 만들어보거나 조합해보는 방법을 택했는데 그분은 한방에 LLM을 사용해보는 방법을 쓰셨죠. 결과적으로 아주 큰 성공!(왜냐면 2등을 했으니까.ㅋㅋㅋ) 게다가 두 명이라서 리더보드에 결과를 눈치 안보고 여러번씩 올려볼 수 있어서 좋았습니다. 아, 그리고 솔라 임베딩으로 결과가 엄청 좋게 나왔던 것도 인상적이였어요. 태스크에 따라서 거기에 잘 어울리는 임베딩이 각기 다를 수 있다는 걸 느꼈습니다. 

AD/OCR/Recsys 중 택 1 프로젝트

저는 이건 다른 사정이 있어서 패스를 했습니닷.. 연말에 진행됐던 프로젝트라서 약간 어수선한 분위기에서 진행됐던 것 같았어요. 

기업연계프로젝트

대망의 마지막!!! 프로젝트!! 기업연계 프로젝트가 약 3주간 진행됐습니다. 중간에 설 연휴가 껴있었고, 특히 이번 설에는 임시공휴일도 있고 막 앞뒤로 연차 붙여서 놀러가신 분들 정말 많았잖아요! 저는 일을 했습니다. ㅋㅋㅋㅋ 데이터셋을 클렌징하고, 아예 다시 만들려고 LLM을 사용해보기도 하고.. 여러 방법들을 썼더랬죠. 제 기억에 한 4500개 정도의 숫자 - 한글 발화 데이터셋을 1:1 구성으로 만들었는데, 이걸 만든 뒤에 제대로 만들었는지 검사하는 것까지.. 완전 노가다였습니다. 이번에 깨달은 건, 현실의 데이터는 정말 다르구나. 그리고, LLM도 노가다는 잘 못하는구나...를 깨닫게 됐습니다. 물론, 모델의 힘은 강력했습니다. 아마 현실에서는 더한 데이터셋도 많겠죠.. 어쨌든 실무에서 일을 하면 어떤 느낌일지 간접체험할 수 있는 좋은 경험이었습니다.

 


총 소감

부트캠프는 끝났지만 이제 진짜 시작이다! 정말 많은 걸 배웠고, 느꼈던 후회없는 선택이였다. 앞으로도 잘하자!