Neural Networks: Zero to Hero — Andrej Karpathy의 딥러닝 입문 강좌
Neural Networks: Zero to Hero
TL;DR Highlight
Andrej Karpathy(전 Tesla AI 디렉터, OpenAI 공동창업자)가 백프로파게이션부터 GPT까지 코드로 직접 구현하며 가르치는 무료 딥러닝 강좌. 수학 공식 암기 대신 '왜 동작하는지'를 이해하게 해주는 커리큘럼으로 평가가 매우 높다.
Who Should Read
Python은 익숙하지만 딥러닝/LLM 내부 동작을 제대로 이해하고 싶은 백엔드·풀스택 개발자. 특히 LLM API만 써봤고 모델 내부 구조를 한 번쯤 깊이 파고들고 싶은 사람에게 적합하다.
Core Mechanics
- 총 7개 강의로 구성되며 전체 분량은 약 14시간. 고등학교 수준의 미적분과 Python 기초만 있으면 시작할 수 있도록 설계됐다.
- 첫 강의에서는 micrograd라는 초소형 자동미분 엔진을 직접 구현한다. 'loss.backward()' 한 줄 뒤에 어떤 연산이 일어나는지 스칼라 수준에서 낱낱이 뜯어본다.
- makemore 시리즈(강의 2~5)에서는 바이그램 캐릭터 언어모델 → MLP → BatchNorm → WaveNet 구조 순서로 점진적으로 복잡도를 높이며 언어 모델링의 핵심 개념을 쌓는다.
- 강의 6('Let's build GPT')에서 'Attention is All You Need' 논문을 따라 GPT를 처음부터 구현한다. ChatGPT, GitHub Copilot과의 연결고리도 설명해 실제 서비스와의 접점을 이해할 수 있다.
- 강의 7에서는 Tokenizer(BPE, Byte Pair Encoding)를 직접 구현한다. LLM이 보이는 이상한 동작(특정 단어 오류, 숫자 계산 실패 등) 상당수가 토크나이저에서 기인한다는 것을 코드로 확인한다.
- 강의 3에서 BatchNorm(배치 정규화)의 필요성을 activation·gradient 통계를 시각화하며 설명한다. 딥 네트워크 학습이 왜 불안정한지, 어떻게 진단하는지를 실습으로 익힌다.
- 강의 4('Backprop Ninja')에서는 PyTorch autograd 없이 MLP 역전파를 손으로 계산한다. 텐서 수준에서 그래디언트가 어떻게 흐르는지 체득하면 디버깅과 커스텀 아키텍처 설계에 자신감이 생긴다.
- 언어 모델을 중심으로 가르치지만 배운 개념(backprop, normalization, attention 등)은 컴퓨터 비전 등 다른 분야에도 그대로 전이된다고 Karpathy가 명시적으로 설명한다.
Evidence
- 여러 강좌(Coursera, fastai, 대학 수업)를 거친 사람들이 이 시리즈가 '직관 형성' 면에서 압도적으로 좋았다고 평가했다. 특히 '신호 대 잡음비가 가장 높은 콘텐츠'라는 표현이 여러 댓글에서 반복됐다.
- 실제 딥러닝을 업무에 쓰고 있는 개발자가 'gradient descent와 normalization이 왜 동작하는지 직관을 쌓는 데 탁월하다'는 경험을 공유했다. 특히 학습 다이나믹스(training dynamics)를 제대로 이해하게 됐다고 언급.
- 한 댓글에서 'François Chollet(Keras 창시자)의 《Deep Learning with Python》도 비슷한 수준의 명강의'라는 대안 추천이 있었다. 이 책은 2025년 9월 3판이 나왔으며 온라인 무료 공개 버전도 있다고 알렸다.
- 일부는 '99.99%의 사람들은 결국 foundation model(ChatGPT, Claude 등) API만 쓰게 될 텐데, 이 강좌보다 Karpathy의 다른 영상 "Deep Dive into LLMs like ChatGPT"가 더 실용적일 수 있다'는 반론을 제기했다.
- cs231n(Stanford 컴퓨터 비전 강의)을 이미 들은 사람이 'Transformer 내용은 이 강좌에서만 커버하므로 중복이 있어도 들을 가치가 있냐'고 물었고, 커뮤니티는 GPT 구현 파트는 충분히 다른 가치가 있다고 답변했다.
How to Apply
- LLM API를 쓰다가 'attention이 뭔지', 'temperature가 왜 이렇게 동작하는지' 궁금해졌다면 강의 6(GPT 구현)부터 시작해도 좋다. 단, makemore 시리즈를 먼저 보길 Karpathy도 권장하므로 시간이 된다면 순서대로 보는 게 낫다.
- 파인튜닝이나 커스텀 모델 학습을 계획 중인 ML 엔지니어라면 강의 3(BatchNorm, activation 통계)과 강의 4(backprop 직접 계산)를 집중적으로 보자. 학습이 발산하거나 수렴이 안 될 때 원인을 진단하는 능력이 생긴다.
- LLM이 특정 입력에서 이상하게 동작할 때(숫자 연산 오류, 특정 단어 무시 등) 원인을 파악하고 싶다면 강의 7(Tokenizer 구현)이 직접적인 도움이 된다. BPE 동작 방식을 알면 프롬프트 설계 시 토큰 경계를 의식해서 개선할 수 있다.
- 로컬 GPU가 없어도 Google Colab이나 Modal.com을 활용하면 실습 가능하다. 댓글에서 Modal.com으로 nanoGPT를 돌린 경험 글이 공유됐으며, 강좌 Discord 채널을 통해 다른 학습자와 함께 진행하면 막히는 부분을 해결하기 쉽다.
Terminology
backpropagation신경망이 예측을 얼마나 틀렸는지 계산한 뒤, 그 오차를 네트워크 뒤쪽에서 앞쪽으로 전파해 각 파라미터를 얼마나 조정할지 알아내는 핵심 학습 알고리즘.
autogradPyTorch 등의 프레임워크가 제공하는 자동 미분 기능. 개발자가 역전파 수식을 직접 짜지 않아도 loss.backward() 한 줄로 모든 그래디언트를 자동 계산해준다.
BatchNorm배치 정규화. 각 레이어의 입력값 분포가 학습 중에 들쑥날쑥해지는 문제를 막기 위해, 미니배치 단위로 평균·분산을 맞춰주는 기법. 이 덕분에 깊은 네트워크도 안정적으로 학습할 수 있게 됐다.
BPEByte Pair Encoding. 자주 등장하는 문자 조합을 반복적으로 합쳐 토큰을 만드는 알고리즘. GPT 계열 모델이 텍스트를 토큰으로 쪼갤 때 사용하는 방식이다.
autoregressive이전에 생성한 토큰들을 입력으로 받아 다음 토큰 하나를 예측하는 구조. GPT가 글자를 하나씩 이어서 문장을 생성하는 방식이 바로 이것이다.
WaveNetDeepMind가 2016년에 발표한 오디오 생성 모델. 계층적 convolutional 구조를 써서 시퀀스 데이터를 처리하는데, 이 강좌에서는 MLP를 같은 구조로 심화하는 과정에서 등장한다.