P Stage가 이번주 월요일부로 시작되었다.

 

사실 부스트 캠프에서 가장 걱정되었던 부분이 나에게는 P Stage였다.

 

올해로 갓 21살의 나이에 대학교 1학년을 마치고 AI 관련 강의를 부스트코스에서 수강하던 와중에 모집 글을 보고, '떨어지는 경험이라도 쌓고 익숙해지자'라는 생각으로 지원했었는데 운이 좋게도 붙어버린 것.

 

실제로 부스트 캠프 내에서도 내가 제일 나이가 어린 것 같았다.

 

Python이 가장 자신 있는 언어라고 해도 (하다못해 전문적으로 자신 있는 것이 아니라 이 때까지만 해도 list comprehension에 익숙해져서 재미 들린 시기) '대학교 1학년 마친 사람이 어떻게 나보다 나이 많은 사람들의 경험을 이길 수 있을까?' 라는 걱정이 앞섰다.

 

특히, 내 경우에는 학교에서 수업시간에 진행한 "팀플"로 2번 프로젝트 해본 경험 및 동아리에서 참여한 KUCIS 프로젝트로 Malware e-mail classification 참여 해 본 것이 전부였다.

 

조금 체계적으로 진행하는 프로젝트는 동아리에서 했던 프로젝트 단 하나 뿐이었으며 더군다나 이것도 내가 적극 참여할 수 없었던 프로젝트였다.

 

그 이유는, 내가 딱 AI에 시작하자마자 신청해본 프로젝트라서 데이터 수집부터 model 생성, train까지 해 본 적이 없는 나에게는 정말 따라가고, 모델 복사해서 파라미터 수정해보는 것이 전부였었기 때문이다.

 

즉, 부스트 캠프에 참여하기 전에 실질적으로 체계적인 프로젝트에 참여해 본 경험은 0에 가까웠다.

 

그렇기에 P Stage가 가장 걱정되었던 것.

 

물론, U Stage가 어렵지 않은 것은 아니었다. 정말 어려웠고, 나에게 첫 AI 교육이기 때문에 나의 것으로 만들고 싶은 내용들을 최대한 만들어보려 했고, 정말 빡셌다.

 

하지만, P Stage를 시작하면서 처음 부딪힌 난관이 "배운 내용을 바탕으로 코드를 어떻게 짜는가?" 였다.

 

U Stage에서 이론을 5주? 6주?간 배우고, 과제로 코드에 빈칸을 채우거나 몇 몇 줄을 짜보는 것 정도는 나왔었지만 (이마저도 나는 매우 매우 매우 힘들어했고, 70% 확률로 스스로 문제를 해결하지 못했었다;;) EDA부터 베이스 라인 코드 작성까지 나는 아무것도 할 수 없었다.

 

이 점이 너무 너무 힘들었다.

 

U Stage를 거쳐가면서 배운 이론과 과제들을 바탕으로 P Stage에서는 내가 어느정도 코드를 조금 다룰 수 있게 되지 않을까 내심 기대했었는데 한 순간에 꽈당했다. (물론, 말도 안되는 생각이긴 하다. 수학으로 따지면 미적분 이론 배우고 바로 수능 29번, 30번 문제 푸는 꼴이니까..)

 

문제는, 다 같이 힘들어 하면 모를까... 부스트 캠프 내에서 정말 날아다니는 캠퍼분들이 많이 존재했다.

 

내가 현재 가지고 싶은 모습들이 다른 많은 캠퍼분들은 가지고 있었던 것.

 

물론, 보이는 캠퍼분들이 전부가 아니라 실제로 나처럼 끙끙대는 캠퍼분들도 존재하겠지만, 너무 gap 차이가 크게 나는 것 아닐까? 하는 생각이 많이 들었다.

 

실제로, 내 팀에서 (한 팀당 인원은 5명) 나를 제외한 4명은 각자가 해당 프로젝트에 기여하는 부분들이 명확하게 존재하거나 무언가 성과를 내는데, 나는 주어진 베이스 코드를 바탕으로 실험해보다가 에러 잡는 것에만 몇시간 투자하고 결국에는 에러를 못잡고 마무리되는 상황들이 존재했다.

 

더군다나 나는 서버를 연동시키는 법을 몰라 주어진 베이스 코드(py파일)을 서버의 jupyter lab에서 실행하고 수정하기 위해서 ipynb로 바꿔가며 시도한지라 다른 팀원분들의 코드를 받아오더라도 작업이 필요해 번거로웠다.

 

결국에 금요일에 idle에 서버를 연동시키고자 3시간정도 투자하였는데 항상 마지막 에러가 잡히지 않아서 멈추고 (시간을 너무 많이 소요한 것 같아) ipynb로 다시 작업을 진행하였다.

 

이러한 과정을 거치다보니 소위 "현타 왔다"라는 말처럼 내 자신에 대해 한숨이 나왔다.

 

'왜 나는 다른 캠퍼분들처럼 실험 하나 제대로 못하는가?'

 

'왜 나는 에러를 못잡고 서버도 연동을 못시켜서 이 모양 이꼴인가?'

 

'프로젝트에서 버스타기 싫어하면서 왜 버스타고 있는 꼴이 되어가는가?'

 

'level 2 팀원 분들을 구할 때는 적극적으로 했으면서 level 2에서도 민폐만 끼치고 싶은가?'

 

등등 온갖 혐오를...

 

너무 힘들었는데 또 포기하고 싶지는 않았다.

 

휴학하고자 수강신청도 안해놨었고.. 더군다나 이렇게 제대로 체계적인 교육을 어렵다고 포기하기에는 나에게 주어진 큰 기회를 내가 못잡는 것 같아서 더 한심할 것 같기 때문이었다.

 

이 시점에 내가 옳게 가기 위해서 조언이 필요한 것 같다는 생각이 들었고 변성윤 마스터님과 많은 캠퍼분들에게, 김태진 마스터님에게 질문을 올렸었다.

 

이 답변들이 나에게 하나의 큰 버팀목이 되어준 것 같다.

 

"처음에는 잘 할 수 없고 일단 나 자신을 위로 해 준다."

 

"내가 코드 작성을 못 하는 부분이 있다면 어떤 부분을 못하는지 분석해보고 그 문제점들을 하나씩 해결해 나간다."

 

"새로 배운 내용, 코드들을 노션에 정리한다."

 

"숲을 보는것보다는 나무 하나 하나를 이해하고 분석해 나아간다."

 

"조급해 하지 말고 우선 순위를 잡아 나아가자."

 

"이론만 보고 코드를 작성하는 사람은 천재다. 그것은 욕심이다." (뜨끔)

 

"원하는 이상치와 현재 상태의 간극을 좁히는 공부를 진행해라."

 

와 같은 정말 좋은 말씀들을 많이 남겨주셨다.

 

해당 내용을 바탕으로 아래 내가 해볼 공부들을 적어보았다.

 

 

아직 우선순위는 정해지지 않았다.

 

프로젝트가 한 4일정도 남아있어서 프로젝트에서 필요한 부분을 먼저 시도해 보지 않을까 생각이 든다.

 

또한, 내가 "왜" 이 코드들을 아직 작성하기 어려워 하는지가 "어떤 흐름으로 작성하고 어떤 기능들을 사용하는지 아직 잘 모르기 때문"이라고 생각해서 이 부분을 다양하고 많은 코드들을 보면서 "flow"를 읽고 한 줄 한 줄 코드가 어떤 기능을 하는지 숙지하면서 프로젝트를 통해 직접 짜보는 것으로 생각하고 있다.

 

 

내 목표는 사람 살리는 인공지능을 만드는 것이다.

 

부스트 캠프는 나의 목표를 이루기 위해 나아가는 첫 시작이 될 것이다.

 

첫 시작이 매우 중요하다고 하였는데, 정말 좋은 곳에서 시작할 수 있게 된 기회를 얻었다.

 

다른 사람들은 21살의 나이에 도전하는 것 자체가 대단하다고 하지만 나는 도전에만 멈추는 것이 아니라 성공하고 싶고 도움을 주고 싶다.

 

내가 이 공부들을 꼭 성공하고 세상에 한 획을 쓰리라!!

 

( + 개인 idle에 서버를 연동시키는 것을 오늘 드디어 성공했다. 운이 조금 작용했는데, 다른 캠퍼님이 올려주신 서버 연동법을 보고 시도를 반복하다가 server의 workspace 폴더에 내가 작성한 코드들이 올라간다는 것을 알게 되었고 CLI에서 성공적으로 실행할 수 있었다!!! 사실 CLI로 train.py를 바로 실행시켰을 때 에러가 많이 났었지만, 앞서 구글링을 통해서, 다른 캠퍼분과 같이 이야기하며 에러를 jupyter 상에서라도 해결했던 것을 메모해 둔 것이 크나큰 도움이 되었다. 역시 구글링과 같이 공부하는 것, 그리고 머리를 식히는 것은 매우 중요하다 ㅋㅋㅋ)

+ Recent posts