귀퉁이 서재

고려대학교 AI 야간대학원 첫 학기를 마치며 본문

회고

고려대학교 AI 야간대학원 첫 학기를 마치며

Baek Kyun Shin 2024. 1. 11. 23:55

'고려대학교 AI 야간대학원 면접 후기'에 관해 쓴 지난번 포스팅에 이어 이번에는 첫 학기 수강 경험에 대해 기록해 보겠습니다. AI 특수대학원(야간대학원) 생활이 어떤지 궁금한 분들을 위해 작성했습니다. 


직장과 병행하며 대학원을 다니기 힘들지 않나요?

힘들지 않았습니다. 대학원 다니기 전에도 어차피 전 퇴근 후 집에서 공부를 하든 프로젝트를 하든 무언가를 항상 했습니다. 그걸 집에서 하느냐 학교에서 하느냐만 달라진 상황이라 저는 별로 힘들진 않았습니다. 그렇지만 집에 늦게 들어온다는 심리적 피로감이 살짝 있긴 합니다. 2교시 수업까지 끝나고 집에 오면 11시가 넘기 때문이죠. 야근 끝나고 집에 오는 느낌을 매주 한두 번씩 느낄 수 있죠.

수업 시작 시간과 관련해서는 퇴근 후 6시 45분까지 고려대 강의장에 도착할 수 있다면 큰 무리 없이 다니실 수 있습니다. 지난 포스팅에서도 썼다시피 첫 수업 시작 시간이 저녁 6시 45분입니다. 많은 분들이 6시 40분~45분에 딱 맞춰오더군요. 45분이 조금 넘어서 허겁지겁 오는 분들도 몇 분 계셨고요. 교수님께서도 직장인이기 때문에 어쩔 수 없다는 걸 아셔서, 정확히 45분까지 와야만 출석 인정을 해주는 건 아니었습니다. 출석 체크에 대한 융통성은 있는 편입니다.

주제에서 벗어난 얘기지만, 매주 수업 시작 전에 과학도서관에서 대학(원)생들 사이에 같이 끼어 잠시 공부를 하는데 그때 상황이 재밌으면서도 좋더라고요. 대학생 때 생각도 나고, 그 분위기가 참 좋습니다. 치열한 학구열 사이에서 전 약간 느슨한(?) 마음가짐으로 관망하며 공부하는 여유를 갖곤 하죠. 


평소에 과제하거나 공부하는 데 시간을 얼마나 투자해야 하나요?

배경지식이 얼마나 있는지에 따라 다르겠습니다. 이미 코딩도 잘하고 AI를 많이 아는 분이라면 그리 부담스럽지 않을 겁니다. 최근 5~6년 내에 컴퓨터공학과를 졸업한 분이라면 수월할 거에요. '적당히 졸업할 정도만 해야지'라고 생각하시는 분도 뭐 적당히 졸업할 정도로만 시간을 투자하면 되겠죠. 만약 비전공자이거나 배경지식이 조금 부족한 분이라면 따라가기 제법 벅찼을 거라고도 생각합니다.

뭐든 상대적이겠지요. 저는 공부하는 데 많은 시간을 투자했어요. 필수는 아니지만, 다시 말해 시험과는 관련 없지만 개인적으로 궁금해 이거 저거 찾아보며 공부하느라 시간을 꽤 썼습니다. 


한 과목당 몇 명 정도 수강하나요?

당연하게도 과목마다 다릅니다. 제가 들은 세 과목별 인원수는 약 70명, 40명, 40명이었습니다. 70명이 들은 수업은 인기가 많은 과정이고, 평균 30~40명 되는 것 같습니다. 10명 정도 수강하는 과목도 있긴 합니다.


학업 외적인 요소들은 어떤가요?

학생회에 들어야 모든 행사나 네트워킹에 참여할 수 있습니다. 단톡방도 학생회끼리 만들기 때문에 학생회를 들지 않으면 '완벽한' 아웃사이더가 됩니다. 아웃사이더가 되기 두렵다면 학생회에 드시는 걸 추천해요. 그래야 인맥도 쌓고 모르는 게 있으면 물어보며 도움을 얻을 수 있거든요. 그래서 상당수가 학생회에 참여하는 것 같습니다.

저는 학생회에 참여하지 않았어요. 신입생 오티 때 학생회장님께서 학생회에 들면 좋은 점들을 설명해주셨는데, 한 10가지가 되더군요. 각종 회식, MT, 선후배와의 만남, 단체 야잠 제작, 다른 학교와의 네트워킹, 졸업 사진 촬영, 과목별 카톡방 개설 등이었습니다. 카톡방 빼고는 다 제가 원하는 활동들이 아니라 자발적으로 학생회를 들지 않았습니다(미가입자에게는 학생회에 가입할 걸 권장한다는 연락이 학생회장단으로부터 세 차례 정도 옵니다). 그래서 전 동기가 누군지, 심지어 몇 명인지도 모릅니다. 카톡방도 당연히 없고요. 카톡방이 없는 건 좀 아쉽습니다.

순전히 공부가 목적인 사람이라면 저처럼 학생회를 들지 않아도 전혀 상관이 없습니다. 그렇지만 학교 생활을 다이나믹하게 하고 싶다거나 네트워킹에 관심이 있다면 참여하시는 것도 좋겠죠?


다닐만한 가치가 있다고 보나요?

검색해서 이 글을 발견하신 분이라면 이미 특수대학원을 가야겠다는 마음을 어느 정도 먹은 분일 겁니다. 이미 마음속으로 결정을 하셨겠지만, 첫 학기를 마친 소감으로는 스스로 어떻게 임하느냐에 따라 가치가 천차만별일 거라고 생각합니다. 야간대학원 특성상 어영부영 다니면 정말 어영부영 학기가 지납니다. 다닐만한 가치가 있는지 없는지는 학교도 교수님도 정해주지 못한다고 봐요. 정해진 커리큘럼 속에서 그 가치를 얼마나 최대화할지는 학습자 스스로에게 달린 것 같습니다. 어쨌든 저는 특수대학원을 다닐만한 가치가 충분히 있다고 봅니다.

참고로, 제가 맨 처음 특수대학원을 가기로 한 까닭은 아래와 같았어요(지난 포스팅에서 쓴 글입니다).

AI를 더 깊게 다지고 싶어서 지원을 했어요. 석사 타이틀이 필요한 것도 아니었습니다. 정말 공부가 하고 싶었습니다. AI 관련 책도 쓰고 실무 프로젝트도 해왔지만, 그와는 별개로 '학문'에 대한 갈망(?)이 있었습니다. 요즘은 뭐 해외 유수 대학 석학들의 강의도 온라인으로 들을 수 있는 좋은 환경이어서 혼자서도 충분히 깊게 '학문'을 할 수 있겠지만, 제도화된 '교수-학생 간 강의'에 대한 열망이 있었죠.

추측건대 순전히 저와 같은 목적으로 특수대학원에 지원하는 경우가 많을 것 같진 않습니다. 학문을 향한 갈망보다는 좀 더 실용적인 목적을 가지고 진학하시려는 분이 더 많지 않을까 싶습니다. 그러니 참고만 해주세요. 


특수대학원도 논문이 필수인가요?

요즘 특수대학원은 논문 없이 졸업하는 트랙이 많은 것 같습니다. 고려대학교는 논문 트랙과 교과 트랙으로 나뉩니다. 논문 트랙은 논문을 쓰는 대신 과목을 상대적으로 적게 수강하는 트랙입니다. 교과 트랙은 논문을 쓰지 않지만 대신 과목을 더 많이 들어야 하는 트랙입니다. 둘 중 원하는 트랙을 선택할 수 있어요. 본격적으로는 3학기 즈음부터 선택하게 됩니다. 다만 일반대학원과 달리 소속 연구실이 없고, 지도교수님도 특수대학원생을 세심하게 케어해 주기 어려운 환경이다보니 감안하셔야 합니다. 그래도 IT 업종 재직자이거나 회사 업무와 관련해서 논문을 쓰실 수 있다면 얼마든지 가능하겠죠. 그런데 제가 1학기만 수강한 상태라서 아직까지는 자세한 건 잘 모르겠네요. 

저는 지원동기에도 썼다시피 제도화된 교육을 많이 듣고 싶어서 지금까지 생각으로는 교과 트랙을 선택할 예정입니다. 


과목별 후기

첫 학기로 고급기계학습, 확률과 통계, 텍스트마이닝을 들었습니다. 각 과목별 후기를 간략히 적어보겠습니다.

고급기계학습

고급기계학습은 과목명과는 좀 다르게 컴퓨터 비전만 배우는 과목이었습니다. 오히려 좋았습니다. 이것 저것 다루기보다 한 가지만 파는 게 나으니까요. 게다가 전 컴퓨터 비전도 좋아하거든요. 

이번 학기에 수강한 세 과목 가운데 가장 마음에 드는 과목이었습니다. 교수님께서 Computer Vision의 기법과 모델 아키텍처를 설명하는 걸 넘어 더 상세히 강의해 주셨습니다. 기본적으로 어떤 기법이나 모델 아키텍처를 자세히 설명해 주었습니다. 이어서 그 기법이나 모델의 장점과 단점을 짚어주었고요. 그 단점(한계)을 극복하기 위해 만든 모델은 무엇인지 이어갔죠. 이런 방식으로 AlexNet부터 NeRF까지 설명을 해주셨습니다. 개별 모델이나 기법에 대한 독립적인 지식을 터득하는 걸 넘어, 딥러닝 컴퓨터 비전의 역사 흐름에 따라 모델이나 기법의 논리적인 탄생 목적까지 알게 된 거죠. 매 수업마다 1시간 반 동안 쉴 틈 없이 빠른 속도로 필기를 했습니다. 거의 매일 2~3개씩 질문도 했고요. 그러다보니 강의 노트에 필기가 빼곡히 되어 있었습니다. 정말 재밌고 의미있는 수업이었어요.

배운 내용은 아래와 같습니다. 기법들까지 하나하나 적으면 너무 많으니 모델 중심으로 적었습니다.

  • Model Architecture : AlexNet, VGG, ResNet, seqence-to-sequence with RNN, 어텐션, 셀프 어텐션, 트랜스포머, ViT(Vision Transformer), Swin-Transformer
  • Object Detection : R-CNN, Fast R-CNN, Faster R-CNN, YOLO, DETR
  • Segmentation : Semantic Segmentation, Instance Segmentation, Panoptic Segmentation, Mask R-CNN, MaskFormer
  • Self-Supervised Learning : SimCLR, Memory Bank, MoCo, SimSiam, SiT, BEIT, MAE(Masked AutoEncoder), CLIP
  • 3D Computer Vsion : Monocular Depth Estimation, PointNet, Pixel2Mesh, Mesh R-CNN, NeRF

필수는 아니었지만, 시간이 될 때마다 위 모델들의 논문을 읽어봤습니다. 세어 보니 10개 가량 본 것 같습니다. 트랜스포머 논문인 Attention is all you need을 비롯해서 ViT, Swin Transformer, DETR, SimCLR, MAE(Masked AutoEncoder), BEIT, pixel2mesh, SAM(Segment Anything) 등의 논문을 읽었습니다. 

일주일에 1시간 반 수업을 들어서 뽑을 수 있는 최대치를 얻은 수업이었다고 생각합니다.

확률과 통계

과목명은 확률과 통계지만 통계보다는 확률 이론을 주로 다루었습니다. 

저는 대학교 2학년 때 공학통계 I, II를 두 학기 동안 배웠습니다. 공학통계라서 실용적인 과목이었죠. 어떤 확률 분포를 따르는 어떠한 현상이 있을 때 그 현상에 대한 현황/결과/예측을 수식으로 풀어내는 방법을 배웠습니다. 대부분의 학부생과 마찬가지로 저도 학점에 연연했기 때문에 '왜(Why)'에는 별 관심이 없었고, '어떻게(How)'에만 관심이 있었죠. 이 개념이 왜 이렇게 되는지, 이 이론은 왜 이런 특성을 갖는지에는 관심이 없었어요. 그냥 문제를 잘 풀어 답을 맞히는 기계였죠. 그래서 당시 공학통계 수업이 재미없었습니다. 학부생 때도 '왜(Why)'에 관심을 기울였다면 질문도 많이 하며 재밌게 들었을 텐데 말이죠. 

이번 확률과 통계 수업은 계산보다는 원론적인 내용 위주로 강의가 진행됐습니다. 학부 때 배운 공학통계에 비해 실용성은 떨어지죠. 같이 수업 듣는 누군가에게는 재미없고 지루한 수업일 수도 있겠다는 생각이 들었습니다. 그런데 제겐 흥미있는 수업이었습니다. 평소에 접하기 힘든 확률에 대한 '원론'을 배울 수 있었기 때문입니다.

첫 수업 시간에 교수님께서 아래와 같은 질문을 하셨습니다.

확률(Probability)이란 무엇인가요? 
랜덤 변수(Random Variable)란 무엇인가요? 
랜덤 프로세스(Random Process)란 무엇인가요?
등등... 

대부분 명확하게 답하지 못했어요. 막연하게는 알더라도 엄밀한 정의를 설명하긴 어렵죠. 그러면서 교수님께서 "이 물음에 명확하게 답하면 확률을 제대로 이해한 것입니다.", "학기가 끝날 때는 이 질문에 명확하게 답할 수 있을 거에요."라고 하셨죠.

확률 수업이라면 응당 첫 번째 수업 때 확률이 무엇인지 알려주기 마련입니다. 그런데 이 수업에서는 확률이 무엇인지를 학기가 1/3 정도 지난 시점에 알려주었습니다. 왜냐하면 확률을 이해하려면 집합론(Set Theory)과 측도론(Measure Theory)을 알아야 하기 때문이었어요. 밑바닥부터 차곡차곡 기반을 쌓아 올린 뒤, '그래서 이게 확률이다!'라고 한 겁니다.

혹시나 위 질문의 답이 궁금한 분이 있을 것 같아 설명하자면 이렇습니다.

확률(Probability)이란 표본 공간(Sample Space)의 시그마 필드(Sigma Field) 내에서 정의된 정규화된 측도(Normalized Measure)입니다.

처음부터 이렇게 설명하면 하나도 이해를 못하죠. 그래서 집합(Set)이란 무엇이고, 그 집합에서 정의된 시그마 필드(Sigma Field)란 무엇이고, 측도(Measure)란 무엇이고, 표본 공간(Sample space)이란 무엇인지 등을 알아가야 하는 겁니다.

이런 원론적인 내용은 제 흥미를 돋우었죠. 물론 일주일에 1시간 반씩 한 학기 배우는 거라 엄청 깊게 배우거나, 많은 분량을 배우는 건 아닙니다. 그래도 확률에 이렇게 수학적으로 엄밀한 개념이 있다는 사실을 알게 돼 꽤 재밌게 들었습니다. 관심이 있다보니 매주 예습/복습을 했고, 수업 때마다 질문을 3~4번 이상씩은 했었습니다. 

텍스트 마이닝

텍스트 마이닝의 단편적인 기법들을 배운 수업이었습니다. 실망스러웠어요. 위 두 수업과 비교해 남은 게 별로 없었죠. 그래도 수업을 열심히 듣고 과제도 성실하게 했지만, 결과적으로는 기대에 못미치는 수업이었습니다. 기록으로 남길 게 없네요.


'회고' 카테고리의 다른 글

고려대학교 AI 야간대학원 면접 후기  (16) 2024.01.08
Comments