2022.08.11 작성
2022.08.11(목) 부스트캠프 AI Tech 4기 1차 테스트 합격 발표
오늘 오후 6시, 네이버 부스트캠프 AI Tech 4기 1차 테스트 결과가 발표 되었다.
여느 발표와 마찬가지로 여러 사람들의 똥줄을 잔뜩 태운 후에야 결과가 메일로 안내 되었다.
![](https://blog.kakaocdn.net/dn/CcyVK/btrNv9JSf9Z/M3BlrzKJ1Olkv7jekwOVTK/img.png)
1차 테스트 응시 후 걱정이 많았던 것과는 달리 다행히도 합격할 수 있었다.
이제는 8.20(토) 예정된 2차 코딩 테스트를 대비해서 열심히 공부하고 마무리 할 단계이다.
1차 테스트에서 느낀 점이나 시험 난이도에 대한 감상은 이전 후기에서 확인할 수 있다.
네이버 부스트캠프 AI Tech 4기 1차 테스트 응시 후기(BAT)
2022.08.04 작성 2022.08.04(목) 부스트캠프 AI Tech 4기 1차 테스트 오늘은 내 생일이다. 동시에 부스트캠프 1차 테스트를 치른 날이기도 하고. 뭐 생일이야 매년 찾아오지만, 테스트를 내년에 또
chanmuzi.tistory.com
만약 자세한 내용이 궁금하신 분들은 위 게시물에 들어가셔서 체감 난이도는 어땠는지 참고할 수 있겠다.
이번 포스팅에서는 어떤 식으로 1차 테스트를 준비 했는지 공부한 과정과 내용을 다뤄보고자 한다.
물론 내 블로그에 게시된 글들의 순서를 보면 대략 유추는 가능하다.
참고로 1차 테스트의 결과에 자소서도 많이 반영된 것 같다는 의견도 꽤 많다.
관계자가 아닌 이상에야 알 수 없는 것이지만, 합격자의 성적 편차(코딩 문제 풀이 개수)가 큰 경우들이 더러 존재하는 것을 보면 나름 설득력 있는 이야기같다.
1. 부스트코스 Pre-Course 수강
부스트캠프에 지원하면서 위 강의를 듣지 않는 사람은 둘 중 하나일 것이다. 이미 관련 지식이 너무 많거나, 아무 생각 없이 대충 찔러보거나..
1차 심사에서 수강 기록을 인증하면 가산점을 부여한다고 했는데 설마 듣지 않을 생각이라면 (거칠게 표현하자면)때려치는게 나을지도 모른다(정말 뛰어난 수준이 아닌 이상에야..)
나는 기초가 아예 없는 비전공자이기 때문에, 필수 강의를 제외한 강의들도 모두 수강했다.
사실 필수를 제외한 과목들은 난이도가 높아 실질적인 도움이 되지는 않았다.
수록된 강의들을 보면 AI 기초와 딥러닝 기초로 구분되어 있다.
AI 기초에서는 기본적인 수학, 통계학 개념, 인공지능 분야에 사용되는 언어 파이썬, 관련된 라이브러리 및 함수들, 여러 환경들을 세팅하고 활용하는 방법 등을 골고루 배운다.
딥러닝 기초에서는 대표적인 모델들을 순차적으로 폭 넓게 배운다.
이 강의들의 장점은 여러 내용을 최대한 폭 넓게 접해봄으로써 이 분야에 빠르게 친숙해질 수 있다는 점이다. 하지만 그만큼 베이스가 없으면 진도를 따라가거나 내용을 이해하는 것이 불가능하다.
영문학과 출신의 취준생이 듣기에 버거운 내용들이 많아 오랜 시간 고민하고 내용을 이해할 수 있도록 주변의 도움도 많이 받았다. 대표적인 예시로 경사하강법에 편미분이 이용되는데, 애초에 편미분을 해본 적이 없으니 뭘 하라는건지 이해조차 잘 되지 않았었다. 그래서 수학과 출신의 친구나 공대 출신 친구에게 물어봐가면서 설명을 듣고 충분히 이해를 하며 진도를 나갔다.
시험 직전에는 pre-course와 AI 기초 강의에 수록된 quiz 들을 다시 풀어보고 내용을 정리했다.
그럼에도 불구하고 '비전공자' 혹은 '노베이스'가 이 강의를 듣고 충분히 이해하기에는 턱없이 부족하다.
따라서 나는 인공지능과 여러 개념들에 대한 부족한 이해를 끌어 올리기 위해 다른 강의들을 추가적으로 수강했다.
2. 모두를 위한 딥러닝 (Sung Kim 유튜브)
공부를 하다보면 이렇게 귀한 지식들이 유튜브에 무료로 공유되어 있다는 사실에 감탄하게 된다.
비록 수년 전에 생성된 동영상 강의지만 그 퀄리티는 가히 최고라고 할 수 있다.
다시 언급하는 내용이지만 비전공자로서 이해하기 어려웠던 인공지능의 여러 개념들을 이 강의를 통해 정말 많이 이해할 수 있었다.
교수님께서 조곤조곤한 말투로 천천히 설명해주시는데 이를 듣고 나서 보니 pre-course의 내용들이 많이 소화된 느낌이 들었다.
이 강의는 각 개념마다 이론(lec), 실전(lab) 으로 나눠져 있고 TensorFlow v1을 사용한다. 현재는 버전 2가 나왔기 때문에 환경을 똑같이 설정하거나 그대로 사용할 수가 없다.
나는 TF를 불러오고 이 버전을 1로 낮추는 코드를 입력해서 교수님의 강의를 대부분 따라해 볼 수 있었다.
모두를 위한 딥러닝 2도 강의가 수록되어 있기는 한데, 제일 처음 나와있는 도커 환경설정 강의를 따라해보니 도커 버전이 현재는 아예 구할 수가 없는 것으로 변경 되어있고 이를 어떻게 해결할 수 있는지는 애송이 입장에서 도저히 알 수 없어서 그냥 TF 1로 강의를 따라했다.
어쨌든 이 강의를 통해 모델을 구현해보기도 하고 이론적인 부분들도 다시 점검하면서 이해도를 크게 높일 수 있었다.(시험을 보니까 턱없이 부족한 수준이라는 걸 깨닫긴 했지만..)
따라서 BAT를 준비하고 있다면 반드시 들어야 할 강의로 꼭 추천하고 싶다.
3. Khan Academy 선형 대수학
부스트코스에서도 칸 아카데미의 강의로 구성된 코스가 있다.
하지만 문제가 따로 더 있는 것도 아니고 그냥 그대로 강의만 옮겨놓은 것이라 무슨 메리트인지는 모르겠다.
칸 아카데미는 해외 MOOC 사이트로 비영리 교육 집단이다.
Khan Academy
ko.khanacademy.org
나는 여기서 선형 대수학 강좌를 처음부터 수강하며 벡터와 공간에 대한 이해를 높였다.
사실 인문계 전공이라 수학을 접할 일이 전무한데, 벡터는 처음보는 개념이라 신선하고 굉장히 재밌었다.
(어려워지기 전까지는 엄청..ㅎㅎ)
이 사이트에서 필요한 수학 개념들을 배우고 일정량의 퀴즈를 풀어볼 수 있는 것도 큰 장점이라고 생각한다.
예를 들어 벡터 두 개가 주어지고 그 벡터 사이의 거리나 각을 구하는 문제들이 pre-course의 퀴즈에도 있는데, 이를 뭐 혼자서 어떻게 구글링한다고 풀 수 있는게 아니기 때문에 강의가 필요하다.
엄청나게 많은 강의를 들어본 것은 아니지만 각 강의의 길이가 길어봤자 20분 정도여서 듣고 정리하는데도 큰 부담이 없다.(대신 교수님 말씀이 엄청 빨라서 놓칠 때가 종종있다)
내가 생각하는 이 사이트의 최고 장점은 모르는 개념이 나왔을 때 기초가 되는 내용들의 강의를 빠르게 들을 수 있다는 점이다. 예를 들어 위에서 언급한 벡터 사이의 각을 구할 때 필요한 코사인 법칙을 추천해주는 시스템이 있다. 문제를 잘 못풀었을 때 추천되는 강의들이 있는데, 나는 그런 강의들도 수강하면서 부족한 부분들을 채워나갔다.
여기서의 강의를 들으면서 도대체 가중치를 곱한다는게 뭘 의미하는 것인지, 그걸 어떻게 처리하겠다는 것인지를 많이 이해할 수 있게 되었다.
4. 알고리즘 스터디
사실 알고리즘 스터디는 나보다 잘하는 사람의 아이디어를 배울 수 있고, 다른 사람들과 경쟁하는 맛이 있어 도움이 되는 것 같다.
물론 시험이 이렇게 어려울 줄 알았으면 빡센 문제들에 더 많이 도전해봤을텐데 하는 아쉬움도 있었다.
알고리즘 스터디는 2차 테스트를 대비해서 지금도 진행 중이다.
매일 백준을 유형별로 약 세 문제 정도 풀고 있고, 프로그래머스의 level1 문제를 한 두 문제 정도 풀고 있다.(연습문제 제외, 기출 위주)
보통 한 문제를 풀이할 때는 30분 정도를 제한 시간으로 둬서 그 시간 안에 푼 사람이 있으면 그 풀이를 들어보고 배우는 방식으로 진행했다.
물론 다같이 못 풀면 서칭해서 좋은 아이디어나 함수 사용법 등을 공유하기도 했다.
제한 시간 내에 풀어야 하고, 다른 사람들보다 빨리 풀고 싶은 마음에 좀 더 열심히 알고리즘 문제들을 풀이하는 시간인 것 같다.
나보다 잘 하는 사람들에게 자극을 받고, 강제성을 부여해서 꾸준히 공부하고 싶다면 스터디를 적극 권장한다.
참고로 스터디를 진행하는 입장에서 매번 느끼는건데 적극적으로 참여할 생각이 없으면 그냥 빨리 나가주길 바란다.
사람이 다 똑같을 수는 없지만 진짜 사람을 맥 빠지고 짜증나게 만드는 주범들이 여럿 있다.
애기처럼 굴지 말고 다른 사람에게 피해주기 전에 자리에서 빠져 나가는 것이 서로에게 좋을 것이다.
5. 알고리즘 개인 공부
공부하는 시간 비중으로 따지자면 스터디는 전체의 10~20%정도밖에 차지하지 않았다.
그보다 더 중요한 것은 내가 개인적으로 공부하고 실력을 쌓는 것이기 때문이다.
알고리즘 문제들을 풀이하기 시작한 것은 정확히 두 달 전이다.
6.17(금) 부터 CodeUp 파이썬 기초 100제를 풀기 시작했다.
이후 BOJ의 단계별로 풀어보기의 백트랙킹 단계까지 계속해서 문제를 풀었다.
또한 "이것이 취업을 위한 코딩 테스트다 with python"(이코테) 을 유튜브 강의로 들으면서 정리했다.
강의에서 나온 내용들을 BOJ에서 풀게되면 복습이 되면서 개념 이해도를 많이 끌어올릴 수 있었다.
나같은 프로그래밍 초보자는 대부분 여기서 크게 막히지 않을까 싶었다.
재귀 함수 자체가 워낙 생소하고 어려운데 그걸 자유자재로 다뤄야지만 풀 수 있는 문제들을 만나다보니 더이상 단계를 진행할 수 없겠다고 판단했다.
실력이 늘어나면 다시 돌아오겠노라 생각하고, 프로그래머스 1단계로 돌아갔다.
사실 그 정도가 될 때까지 프로그래머스 문제를 하나도 풀지 않았었는데, 이는 level 1 첫 페이지에 있는 "신고 받기" 문제 때문이다.
level 1 중에서도 가장 어려운 문제인데, 나는 level 1의 문제들이 죄다 이런식인줄 알고 '프로그래머스는 무서운 곳이구나' 하면서 나중에 풀려고 생각했었다.
근데 막상 다른 문제들을 풀어보니 풀 수 있는 것들이 많아서 결국 모든 level 1의 문제들을 풀 수 있었다.
결과적으로 1차 테스트를 응시하기 직전까지, BOJ 실버 2단계, 프로그래머스 level 1 모든 문제 풀기 정도를 달성했다.(이전 후기 게시물에서 확인 가능)
블로그의 일기 탭에 올라온 몇 개의 후기들을 보면 아시겠지만, 나는 결과가 나오기 전에도 같은 텐션으로 유지하고 공부할 수 있는 사람이다.(근데 왜 아직도 제대로 된 취준을 시작도 못하고 있는지는 흠..)
이번 기회가 그만큼 나에게 간절하고 소중하기 때문에 꾸준히, 그리고 열심히 달리고 있다.
현재는 백준의 유형별 문제들을 지속적으로 풀이하고, 프로그래머스의 Level 2 문제들을 전부 풀어보고 있다.
2차 테스트가 얼마나 어렵고 버거울지 모르겠으나, 열심히 준비해서 잘 치르고 싶다.
여기까지의 긴 글을 읽은 당신, 얼른 공부하러 가길 바란다.
(이 글은 2차 테스트 후기로 이어질 예정이다.)
![](https://blog.kakaocdn.net/dn/bYVcwx/btrNExu8GHL/AHGW6hxN9rCvpkakEexJo1/img.png)
네이버 블로그에서 작성했던 글을 옮긴 것입니다