강화학습 강의 후기
by Understand언젠가는 강의를 해보고 싶었다.
언젠가 한 번은 강의를 해보고 싶었다. 평소에도 다른 사람에게 아는 것을 전달하는 것을 좋아하기도 했고, 책으로나 주변 사람들의 조언을 통해서 다른 사람을 가르침으로써 배우는 것이 많다고 들었기 때문이었다.
'강의는 언젠가 해봐야지'라는 생각을 의식 저편에 고이 간직하고 있었던 중에 이전 직장 동료가 강화학습 강의를 같이 하자는 제안을 해주었다. 세 명이 3일 동안 하루에 8시간씩 강의를 하는 방식이고, 한 사람이 하루를 전담하는 방식이었다. 실시간이지만 온라인 강의여서 부담이 덜했고, 돈도 받고 원래 해보고 싶다는 생각등 여러 가지 이유로 흔쾌히 수락을 하고 약 4월 초부터 조금씩 준비를 시작했다. 기존에는 5월 중반에 시작이었지만 조금 미뤄줘서 6월 15일에 강의를 하게 되었다.
강의 준비는 생각보다 할일이 많았다.
처음 강의를 하기로 생각했기 때문에 처음에는 3개월이라는 시간이 여유가 있다고 생각했다. 그래서 준비를 매우 천천히 했다. 지금 와서 생각해 보면 쓸데없이 파이썬 프로젝트 매니징 툴과 라이브러리 버전에 대해서 고민하느라 한 달 이상을 사용했다. 강의 날짜가 다가오자 그냥 단순하게 requirements.txt로 설치하는 것으로 합의 보고 빠르게 코드를 구현해야 했다. 그렇게 약 2달 동안 목차를 작성한 것이 준비한 내용의 전부였다.
한 달 정도 남았을무렵, 이제는 강의 준비를 본격적으로 해야지라고 생각했다. 하지만 생각보다 강의를 준비하는데 시간이 많이 들어갔다. 기본적인 논문 5개 정도를 베이스로 해서 더 많은 자료들을 조사해야 했다. 그리고 실습 위주의 강의를 요청했기 때문에 논문에 있는 수식과 증명을 어떻게 쉽게 설명하고 생략할 수 있는지 더 많은 자료들을 찾아봐야 했다. 예를 들어 강화학습의 policy gradient theorem을 사용하지 않고 REINFORCE라는 알고리즘을 설명하고자 했다. 그러면서 각 논문들이 제안한 알고리즘을 실습할 수 있는 코드를 작성해야 했다. 당연히 기존에 작성되어 있는 오픈소스들이 있었지만, 강화학습을 처음 해본 사람들도 이해할 수 있도록 코드 내부에 있는 성능향상을 위한 트릭들을 제거하고 알고리즘에서 제안한 방법을 강조할 수 있도록 코드를 새로 작성해야 했다.
설상가상으로 기존에 10월즈음에 있을 거라고 생각했던 프로젝트 검증날짜가 6월 말로 바뀌었다. 회사 업무가 갑작스럽게 많아지고, 우선순위가 높아지면서 강의 준비를 할 시간이 부족했다. 결국 낮동안은 회사업무에 최대한 전념해서 맡은 업무를 끝맞추고 밤과 새벽동안 강의준비를 하는 일정을 약 3주 동안 지속했다. 결국 이로 인해 간단한 피드백을 주고받는 시간 외에는 제대로 된 리허설을 못해보고 강의를 하게 되었다. 물론 혼자서 강의 연습을 했었다. 하지만 할수록 내용이 부족하다는 느낌이 들어 강의 전날까지 PPT와 코드를 추가, 변경했다. 끝까지 내용이 부족하다는 생각이 들어 당일새벽까지 과연 혼자서 8시간을 이끌고 갈 수 있을지 불안했다.
첫 강의를 시작했다.
당일에서는 긴장을 최대한 이겨내며 강의를 시작하게 되었다. 하지만 곳곳에서 긴장의 표시가 남았다. 온라인 강의인데 마이크를 켜지 않고 10분 동안 말한다거나 설명할 내용을 스킵하고 휴식시간 이후에 관련된 내용을 보충해서 설명하기도 했었다.
분명 강의 제안을 처음 수락할때는 열심히 발표연습을 해서 멋들어지게 강의해야지라는 생각을 했었는데 막상 강의를 할 때는 부족한 부분이 많았다. 그럼에도 불구하고 전달하고자 하는 내용을 시간을 정확히 지켜서 마무리했고, 질문에 크게 문제없이 답변을 드렸다. 이렇듯 어설프긴 했지만 그래도 마무리를 할 수 있었다.
뒤돌아보니 배운건 많았다.
어설픈 강의지만 크게 2가지를 배웠다.
첫째는 '필요한 부분부터 빠르게 준비하자'이다. 불필요한 내용을 고민하느라 원래 일정의 반을 사용했었다. 거기에 설상가상으로 일정의 마지막 1/3은 예상치 못한 프로젝트 검증으로 인해 시간을 많이 낼 수가 없었다. 개발할 때 일단 동작가능하도록 코드를 먼저 개발하는 것처럼 강의를 준비할 때 일단 PPT와 코드가 완성되었다면 이를 보완하는 작업은 상대적으로 쉽게 진행할 수 있었을 것 같다. 그리고 이번처럼 마지막까지 불안하지는 않았을 것 같다.
둘째는 다른 사람에게 설명하기 위해 준비하는 행위 자체로부터 많이 배울 수 있다는 것이었다. 다른 사람에게 강의를 하기전에 먼저 내가 이해할 수 있어야 했다. 강의를 준비하면서 예전에는 이 정도면 충분하다고 생각했던 부분에 대해서 한 번 더 왜 그렇지를 생각하게 되었다. 또한 쉽게 설명하기 위해서 기존과는 다른 관점으로 같은 문제를 보는 경우도 있었다.
어쨌든 강의는 마무리가 되었다. 후련하다.
불만족스러운 부분이 많았지만 다음 강의는 좀 더 잘해야지.
'회고' 카테고리의 다른 글
글또 9기: 글을 쓰는 이유 (0) | 2023.12.10 |
---|---|
2022년 회고 (0) | 2023.01.22 |
2018년에 감사한 일들 (0) | 2018.12.31 |
블로그의 정보
BookStoreDiary
Understand