최소 2번 이상은 읽게 만드는 칩 후옌의 방대한 ML 지식 섭취 후기
“한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”
이번 도서는 내게 무척 의미가 있고, 특이한 책이다.
사실 회사에서 팀원들과 매주 2회, 한 시간씩 ML 스터디 모임을 갖고 있는데 이번 도서 리뷰 대상 책에 “머신러닝 시스템 설계”가 있었고, 해당 책이 당연히 선정될 꺼라 생각을 안했기 때문에 (워낙 인기가 있는 책이다 보니, 당연히 다른 도서가 올 거라 굳게 믿고(?) 있었다.) 먼저 종이책으로 사서 스터디를 진행했다.
먼저 이 책에 대해 한 줄로 평가를 내리자면, 그야말로 “ML 분야에 입문부터 현업에서 하게 될 모든 일에 대해 안내하는 가이드” 같은 책이다.
무엇보다 이 책을 저술한 칩 후옌 이 분이 스탠포드에서 ML 쪽 강의를 해 본 경험이 있어 남들에게 어떤 방식으로 지식을 전달해야할지 어느 정도 이해하고 있는 분으로 보이기도 하고, AI 기반 대기업부터 스타트업까지 다양한 규모의 기업에서 근무를 해본 경험 덕분에 기업의 단계별로 어떤 ML 프로덕트가 적용되고 있는지 깊이 이해하고 있는 것으로 보인다.
솔직히 책 구구절절 다 옳은 말만 해서 ML 쪽 업무 뛰는 분들이면 모두 다 읽어봐야한다고 생각하는 좋은 책이다.
그런데 내 학습 방법은 회사 동료들과 함께 하면서 다음과 같은 스텝으로 학습을 했다.
1. 원문과 비교하면서 책 내용에 정리
강의 영상은 없었지만 (아마 별도로 녹화는 안한 모양이다.) 다행히 강의 노트와 케이스 스터디 내용은 모두 이렇게 정리해서 제공하고 있어서, 원문과 실제 내용이 다른 부분은 있는지, 해석이 잘못된 부분은 없는지 꼼꼼하게 봤다.
아무래도 영문 원서와 직접 비교하는 상황은 아니다 보니, 슬라이드라던가 일자별 강의 사항이 조금씩 다른 부분은 존재했는데, 그래도 읽는데 많은 영향을 주지는 않았다.
2. 강의에 있는 참조 링크들 별도 레포에 정리 중
이 글을 쓰는 시점에는 아직 정리가 안되었는데, 머신러닝 시스템 설계에 워낙 다양한 논문과 블로그, 케이스 스터디 등의 링크가 첨부되있어서, 이걸 내 개인 레포에 별도로 정리 중이다.
칩 후옌의 깃헙에 어느 정도 정리는 되어 있는데 (https://github.com/chiphuyen/dmls-book/blob/main/resources.md) 책에 있는 챕터 전체의 레퍼런스는 다루고 있지 않아서, 일단 정리하고, 나중에 칩 후옌에게 링크드인으로 연락해서 별도 PR을 시도해봐야겠다.
(대략 챕터별로 최소 15개 이상의 레퍼런스 링크가 있다)
학습에서 제일 중요한 게 interactive한 학습 방식이지 않을까 싶다.
학습에 있어 피드백과 배우는 사람의 학습 태도가 무척 중요하다는 생각을 다시 하게 된다.
3. 칩 후옌 스탠포드 세미나 자료 참고
칩 후옌 이 워낙 유명한 사람이라 텐서플로우 & 스탠포드 등 유튜브 채널에 이사람이 세미나 뛰는 영상이 꽤 많다.
학습하면서 저자의 생각을 충분히 이해할 수 있는 자료는 많은 것 같고, 책에서 학습을 멈추기에는 저자와 소통할 수 있는 방법도 많고 (트위터 & 링크드인) 책이 AI 모델 만드는 것만 다루는 게 아니라 MLOps 생태계 전체를 다루는 사항이라 구석 구석 자료 조사를 해 볼 틈이 많았다.
4. 프로젝트 해 볼 것 서칭
책 읽는 것으로 학습이 끝나면 안되고, 개발하는 입장에서 볼 때 코드로 구현하는 것이 무척 중요한데, 책 1회독이 마무리된 시점에서 크게 3가지를 더 해봐야한다고 생각한다.
- 책 1회 더 정독하기
- 레퍼런스 링크 다 읽어보고 내용 정리하기
- MLOps 프로젝트 수행
책에 수학적 지식을 요구하는 부분이 군데군데 언급되는데, 수학적 부분에 대해 깊은 내용을 요구하는 부분은 거의 다 생략되어 있고 이 부분들이 모델 만들 때 중요한 부분들이라 책을 한 번 더 정독하면서 풀뿌리 지식들 정리가 필요해보인다.
레퍼런스 링크도 논문부터 블로그, 개인 정리 글까지 다 다시 한 번 읽어봐야겠다.
특히 논문도 마찬가지로 수학적 사고가 필요한 부분들이 많다.
마지막으로 MLOps 프로젝트 수행 좀 해봐야겠다.
지금 개인적으로 데이터 사이언스 포지션 지식이 많이 약하다는 생각을 하는 중인데 여길 집중적으로 공략해야겠다.
최근에 국내 MLOps 커뮤니티에서 진행한 모임을 참여했는데 대체로 데이터 사이언스로 근무하는 분들이 MLOps 업무를 같이 보는 것을 알게 되었다.
데이터 관련 작업 + 모델 생성까지 관여하시는 것으로 보이는데 소프트웨어 엔지니어링 지식이 부족하셔서 어려움이 주로 많았던 것 같았는데 나의 케이스와는 정반대였다.
ML 쪽이 gpu 리소스가 필요해서 일반 엔지니어링과는 다르게 접근하기가 쉽지 않은 분야인데, 다행히 회사의 mlops 인프라를 구축하고 모니터링하는 것도 내가 하다 보니, 틈틈히 리소스 여분이 있을 때 학습 목적으로 사용해봐야겠다.
5. 가장 많이 공감되는 부분
모니터링과 데이터 시프트 관리하는 부분이 MLOps 인프라를 관리하는 입장에서 제일 공감되었다.
주식 데이터의 경우, 사람들 심리에 따라 거래가 이뤄지는 것이 다수라서 경기 침체, 경제 위기, 도산 같은 이슈가 발생하면 갑자기 거래량이 출렁이기 때문에 데이터 시프트 발생이 다반사이다.
이 부분을 어떻게 처리할지가 꽤 크리티컬한 포인트인데, 이게 프로덕션 사이드에서 다룰 수 밖에 없는 기업은 그냥 일상이라고 하는 부분이 무척 이해가 될 수 밖에 없었고, 모델 성능 관련 모니터링이나 훈련할 때 디버깅하는 작업이 쉽지 않은 점들이 사실상 사람의 노동력을 요구하는 부분들이라 공감이 될 수 밖에 없었다.
ChatGPT를 OpenAI에서 만들 때 데이터 라벨링 작업은 남미 사람들에게 값싸게 외주 줘서 진행했다는 얘기를 들었는데, 선진국 노동력 사용하려 했다면 몇 배는 비용이 더 투입되지 않았을까 싶고, 지금도 운영에 있어서 하루에 9억 조금 넘게 사용된다는 기사를 봤었다.
(쿼리 단위로 보면 400원씩 들어간다고 한다. 기업에서 수익화를 위해 사용한다고 가정하면 AWS 비용들과 비교했을 때 현재 나가는 비용의 1,000 ~ 10,000배는 더 저렴하게 제공되어야하지 않을까 싶긴하다)
AI 모델 만드는 게 “소잡는 칼”에 가깝다. 닭을 잡는 일에 소 잡는 칼을 쓰기가 많이 아까운 일에 해당한다.
AI로 문제를 해결할 수 있어도, 사람에 의해 해결하는 것이 가능한 것이 최적의 솔루션일 수 있다는 멘트도 챕터 1에서 언급하는데 이건 국내의 파이콘에서도 한 번 언급된 적이 있다.
6. 후기: 문명같은 책이다
작년에 구매한 플레이스테이션5 게임 중 문명6라는 게임이 있다.
게임 타이틀을 6개 정도 구매했는데 문명만 주구장창해서, 플스 돌린 게임 시간의 99%를 문명에만 할애했다.
이 책은 문명같은 책이다.
1회만으로 공략했다고 보기 너무 어렵고 몇 번씩 공략해야 직성에 풀릴 것 같다.
최대한 모르는 내용 없이 이 책을 보다보면 ML 관련 풍부한 지식이 갖춰지지 않을까 기대하고 있다.
이번 책이 지난 1년 6개월 동안 진행한 한빛미디어 리뷰 중에 제일 만족도가 높은 것 같다.
Ryan