
머신러닝을 올바르게 시작하기 위한 서구권 기술서 5선——일본어 입문서로는 부족했던 부분을 채우다
요약
머신러닝의 기초를 체계적으로 다지기 위해 권장되는 서구권 기술서 5권을 소개합니다. 단순한 코드 실행을 넘어 모델의 원리와 선택 기준을 이해할 수 있는 학습 경로를 제시합니다.
핵심 포인트
- 단편적인 튜토리얼을 넘어 원리 중심의 학습 필요
- ISLR: 통계적 학습의 기초와 모델 선택 기준 학습
- The Hundred-Page ML Book: 핵심 개념의 압축적 정리
- Hands-On ML: Scikit-Learn 및 딥러닝 실무 적용
머신러닝을 시작하려고 하면, 정보가 너무 많아서 무엇부터 손을 대야 할지 모르겠다.
YouTube 튜토리얼, Udemy 강의, Qiita 기사……. 단편적으로 배우는 사이에 "모델은 돌릴 수 있지만, 왜 그렇게 되는지 설명할 수 없는" 상태가 되기 쉽다.
나 자신이 바로 그랬다. scikit-learn의 샘플 코드는 쓸 수 있는데, 상사에게 "왜 이 모델을 선택했나요?"라고 질문을 받으면 대답할 수 없다.
이 상태를 벗어나는 계기가 된 것이, 서구권에서 정석으로 여겨지는 기술서들을 체계적으로 읽은 것이었다. 일본어 입문서가 나쁘다는 것은 아니지만, 영어권에서는 "이 분야를 공부하려면 먼저 이 책"이라는 공통 인식이 확실히 자리 잡고 있어, 그 책을 읽으면 놀라울 정도로 머릿속이 정리된다.
이 기사에서는 머신러닝을 이제 시작하려는 사람, 혹은 "어렴풋이 돌리고 있는" 상태에서 탈피하고 싶은 사람을 위해 5권을 소개한다.
원서 제목: An Introduction to Statistical Learning
저자: Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani
영어권에서 "ML 입문의 첫 번째 책"이라고 하면, 거의 모든 사람이 이 책을 꼽는다.
회귀 (Regression), 분류 (Classification), 정규화 (Regularization), 결정 트리 (Decision Tree), SVM, 비지도 학습 (Unsupervised Learning)까지 폭넓게 다루고 있음에도 불구하고, 수식은 최소한으로 억제되어 있으며 직관적인 설명이 중심이다. Python 또는 R의 Lab 섹션이 붙어 있어, 읽은 직후에 바로 손을 움직여 볼 수 있다.
이 책의 장점은 "모델을 선택하는 판단 기준"을 가르쳐 준다는 점이다. 정확도뿐만 아니라, 편향-분산 트레이드오프 (Bias-Variance Tradeoff), 모델의 해석성 (Interpretability), 과적합 (Overfitting)의 리스크까지 고려한 상태에서 "어떻게 선택할 것인가"를 친절하게 해설하고 있다.
PDF 버전은 저자의 공식 사이트에서 무료로 공개되어 있다. 먼저 읽어보고, 소장하고 싶어지면 종이책을 사면 된다.
이런 사람에게: 머신러닝을 체계적으로 배우기 위한 첫 번째 책을 찾고 있는 사람. 수학에 자신이 없어도 읽을 수 있다.
원서 제목: The Hundred-Page Machine Learning Book
저자: Andriy Burkov
제목 그대로, 머신러닝의 전체상을 약 100페이지로 압축한 책이다. Peter Norvig가 추천사를 쓴 것에서도 그 내용의 밀도를 알 수 있다.
지도 학습 (Supervised Learning), 비지도 학습 (Unsupervised Learning), 뉴럴 네트워크 (Neural Network), 특징량 엔지니어링 (Feature Engineering), 모델 평가까지, 한 차례의 개념이 컴팩트하게 정리되어 있다. 교과서라기보다는 치트 시트 (Cheat Sheet)에 가까운 방식으로 사용할 수 있다.
나는 이 책을 책상에 상비하고 있다. 프로젝트에서 모델의 선택지를 검토할 때, 면접 전에 개념을 복습할 때, "어라, 정규화가 L1과 L2의 차이가 뭐였더라"라고 생각했을 때——빠르게 펼쳐서 확인할 수 있어 편리하다.
첫 번째 책으로는 ISLR을 추천하지만, "시간이 없어서 전체상만 빠르게 파악하고 싶다"는 사람에게는 최적이다.
이런 사람에게: 짧은 시간 안에 머신러닝의 전체상을 파악하고 싶은 사람. 복습 및 면접 대비용으로도 적합.
원서 제목: Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow
저자: Aurélien Géron
실무에서 머신러닝을 사용한다면, 이 책은 피할 수 없다.
전반부는 scikit-learn을 사용한 고전적인 ML 파이프라인 (전처리, 특징량 선택, 모델 학습, 평가, 튜닝), 후반부는 Keras/TensorFlow를 사용한 딥러닝 (Deep Learning). "이론 $\rightarrow$ 구현 $\rightarrow$ 개선"의 사이클을 실제 코드로 체험할 수 있다.
특히 가치가 높은 것은 전반부다. 데이터 전처리, 파이프라인 구축, 교차 검증 (Cross Validation), 하이퍼파라미터 튜닝 (Hyperparameter Tuning) 등 "실제 프로젝트에서 필요하지만 입문서에서는 생략되기 쉬운 부분"이 친절하게 쓰여 있다.
Kaggle에서 상위권에 들고 싶은 사람에게도, 업무에서 ML 모델을 만들고 싶은 사람에게도 와닿는다. 3판이 최신이며, TensorFlow 2계열과 Keras 3에 대응하고 있다.
이런 사람에게: 이론뿐만 아니라 구현까지 일관되게 배우고 싶은 사람. Python 기초 지식은 전제 조건.
원서 제목: Deep Learning with Python
저자: François Chollet (Keras의 제작자)
Keras의 창시자가 쓴 딥러닝 실천서. Goodfellow의 『Deep Learning』이 이론 교과서라면, 이 책은 직접 손을 움직이며 직관을 기르기 위한 책이다.
이 책의 놀라운 점은 난해한 개념을 사용하는 사람의 관점에서 설명해 준다는 것이다. CNN이나 RNN의 수학적 유도보다는 "어떤 데이터에 어떤 아키텍처 (Architecture)를 선택할 것인가", "학습이 잘 되지 않을 때 무엇을 의심해야 하는가"와 같은 실천적인 판단 기준을 가르쳐 준다.
2판에서는 Transformer나 생성 모델 (Generative Model) 장도 추가되었다. "딥러닝을 블랙박스 (Black Box) 상태로 사용하고 있다"는 불안감을 느끼는 사람이 처음으로 읽을 DL(Deep Learning) 서적으로 최적이다.
이런 분께: 딥러닝을 능숙하게 다룰 수 있는 수준이 되고 싶은 사람. 수식보다 코드로 이해하고 싶은 파.
원제: Designing Machine Learning Systems
저자: Chip Huyen
위의 4권이 "모델을 만드는" 책이라면, 이 책은 "모델을 프로덕션 (Production)에서 계속 구동시키는" 책이다.
데이터 수집, 라벨링 (Labeling), 특징량 저장소 (Feature Store), 모델 배포 (Deployment), 모니터링 (Monitoring), 피드백 루프 (Feedback Loop)——모델의 정밀도를 높이는 것만이 ML 엔지니어의 업무가 아니다. 프로덕션 환경에서 모델이 어떻게 동작하는지, 데이터의 분포가 어떻게 변하는지, 언제 재학습할 것인지. 그러한 시스템 설계 (System Design) 지식이 없다면 좋은 모델도 가치를 발휘할 수 없다.
저자인 Chip Huyen은 Stanford에서 ML Systems 강의를 진행했던 인물로, NVIDIA, Snorkel 등에서의 실무 경험도 풍부하다. 학계와 산업계 양쪽의 관점에서 쓰여 있다는 점이 신뢰할 만하다.
일본에서는 아직 "ML 시스템 설계"를 체계적으로 가르치는 책이 적기 때문에, 이 분야에 관해서는 영어권의 책이 한발 앞서 나가고 있다.
이런 분께: 모델을 만드는 것뿐만 아니라, 프로덕션에서 운용하는 책임을 가진 사람. ML 엔지니어/데이터 엔지니어.
| 단계 | 읽을 책 | 얻을 수 있는 것 |
|---|---|---|
| 1. 전체상을 파악하기 | ISLR & 머신러닝 100+페이지 에센스 | ML 분야의 지도 |
| ... |
전부 읽을 필요는 없다. 지금의 자신이 어느 단계에 있는지를 생각하여, 해당되는 1권부터 시작하면 된다.
한 가지만 조언하자면, "ISLR을 건너뛰고 갑자기 딥러닝으로 들어가는 것"은 피하는 것이 좋다. 통계 학습 (Statistical Learning)의 기초가 없으면, 뉴럴 네트워크 (Neural Network)가 마법의 상자 상태로 남게 된다. 돌아가는 것처럼 보여도, 기초부터 쌓아 올리는 것이 결국 가장 빠르다.
다음 기사에서는 이론을 심화하고 싶은 사람을 위해, 더욱 고도화된 5권을 소개할 예정이다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기