『Deep Learning with Python 3판』이 다시 그린 딥러닝의 지도 — 트랜스포머부터 에이전틱까지

Chollet·Watson의 『Deep Learning with Python』 3판을 통해 어텐션 메커니즘, BERT·GPT 사전학습 패러다임, LoRA, 생성형 AI 아키텍처, ReAct 에이전트 패턴을 정리한다.

2026-08-14 · 최초 발행 2026-05-08

초판·2판 10만 부 스테디셀러가 새로 쓰였다

Keras 창시자 프랑수아 숄레(François Chollet)와 Google의 Keras 핵심 메인테이너 매튜 왓슨(Matthew Watson)이 공동 집필한 『Deep Learning with Python』 3판이 트랜스포머, 생성형 AI, 에이전틱 워크플로우 챕터를 대폭 추가하며 LLM 시대의 딥러닝 교과서로 완전히 재탄생했다. Manning 출판사를 통해 온라인 무료 열람이 가능하며, Keras, PyTorch, JAX, TensorFlow를 망라하는 실전 코드 예제와 함께 브라우저에서 직접 실행할 수 있다.

초판(2017)과 2판(2021)이 합산 10만 부 이상 판매되며 딥러닝 입문 분야의 스테디셀러로 자리잡은 가운데, 3판은 단순 업데이트가 아닌 전면 재집필에 가까운 개정을 거쳤다. 추가된 주요 챕터는 트랜스포머 아키텍처, GPT 유사 LLM 직접 구현, 확산 모델(Diffusion Models)을 이용한 이미지 생성, 에이전틱 워크플로우 설계다. 핵심 철학은 "직관적 이해 → 수학적 기초 → 실전 구현"의 3단계 접근으로, 수식에 앞서 개념의 직관적 이미지를 구축하고 이를 뒷받침하는 수학적 토대를 제시한 뒤 실행 가능한 코드로 구체화한다. 딥러닝 사전 경험이 없는 중급 파이썬 개발자를 대상으로 하면서도 최신 아키텍처의 구현 세부까지 다루는 깊이를 갖췄다.

프랑수아 숄레는 현재 Google DeepMind에서 분리돼 신규 AI 연구 기관 Ndea의 공동 창립자로 활동하며 AGI 기반 원리 연구에 집중하고 있다 — 책이 단순한 도구 설명서가 아니라 아키텍처 설계 원리와 한계에 대한 깊은 통찰을 담은 배경이다.

토큰이 서로를 바라보는 연산, Self-Attention

트랜스포머는 2017년 Google이 발표한 "Attention is All You Need" 논문에서 제안된 아키텍처로, RNN·LSTM 계열 모델의 순차 처리 한계를 병렬 처리 기반의 어텐션 메커니즘으로 돌파했다. 현재 NLP, 컴퓨터 비전, 오디오, 멀티모달 분야를 아우르는 딥러닝의 지배적 아키텍처다.

Self-Attention의 핵심 아이디어는 시퀀스의 각 토큰이 다른 모든 토큰과의 관련성 점수를 계산해, 현재 토큰의 표현을 문맥에 따라 동적으로 업데이트하는 것이다. 이를 위해 각 토큰은 Query(Q), Key(K), Value(V) 세 벡터로 변환된다. 어텐션 스코어 계산 과정은 입력 임베딩에 가중치 행렬을 곱해 Q, K, V를 생성하고, Q와 K의 내적을 계산해 유사도 스코어 score = QK^T / sqrt(d_k)를 산출한 뒤, Softmax를 적용해 합이 1인 어텐션 가중치로 정규화하고, 가중치와 V 벡터의 가중합으로 새로운 표현을 생성하는 순서로 이어진다. 스케일링 팩터 sqrt(d_k)는 내적 값이 너무 커져 Softmax의 기울기가 소실되는 현상을 방지한다. 이 연산은 시퀀스 내 모든 토큰 쌍에 대해 병렬로 수행되므로, RNN의 순차 처리 한계를 극복하고 GPU의 병렬 연산 능력을 최대한 활용한다.

입력 토큰 시퀀스임베딩 레이어위치 인코딩 추가Query 행렬 WQKey 행렬 WKValue 행렬 WV어텐션 스코어: QK^T /sqrt(d_k)Softmax 정규화가중합: Attention(Q,K,V) =softmax(QK^T/√d_k)V멀티헤드 어텐션 결합피드포워드 네트워크Layer Normalization + 잔차연결다음 레이어 또는 출력

순서 정보를 주입하고 여러 관점을 동시에 보기

트랜스포머는 순서 정보를 내재적으로 처리하지 못하는 구조적 특성이 있다. Attention 연산은 순열 불변(permutation-invariant)이므로, 토큰의 위치 정보를 명시적으로 주입해야 한다.

사인/코사인 위치 인코딩은 원래 논문에서 제안된 방식으로, 각 위치에 고정된 주기 함수 값을 임베딩에 더한다. 위치 pos와 차원 i에 대해 PE(pos, 2i) = sin(pos/10000^(2i/d_model)), PE(pos, 2i+1) = cos(pos/10000^(2i/d_model))으로 계산되며, 절대 위치와 상대 위치 모두를 표현할 수 있다. RoPE(Rotary Position Embedding)는 최신 모델들이 채택하는 상대 위치 인코딩 방식으로, 어텐션 스코어 계산 시 쿼리와 키에 위치에 따른 회전 행렬을 적용해 상대 거리 정보를 자연스럽게 인코딩한다. Llama 계열 모델들이 RoPE를 사용하며, 긴 시퀀스 외삽(extrapolation) 성능이 우수하다.

멀티헤드 어텐션(Multi-Head Attention)은 단일 어텐션이 한 가지 관점에서만 토큰 관계를 파악하는 한계를 극복한다. H개의 어텐션 헤드가 각각 독립된 Q, K, V 가중치를 학습해 서로 다른 측면의 관계를 포착하고, 결과를 연결(concatenate)해 최종 표현을 만든다. 한 헤드는 문법적 관계를, 다른 헤드는 의미적 관계를, 또 다른 헤드는 코어퍼런스(대명사 지시 관계)를 전문적으로 파악하는 방식으로 학습이 이뤄지는 식이다.

양방향으로 읽을 것인가, 다음 토큰을 예측할 것인가

대규모 언어 모델의 사전학습은 두 패러다임으로 수렴했다. BERT 패러다임(마스킹 언어 모델링, MLM)은 입력 시퀀스의 일부 토큰을 마스킹하고 해당 토큰을 예측하는 방식으로 학습한다. 전체 시퀀스를 양방향으로 참조하는 인코더 아키텍처를 사용하므로 문맥 이해와 분류 태스크에 강점을 보이며, BERT·RoBERTa·DeBERTa 계열이 이 패러다임을 따른다. GPT 패러다임(자기회귀 언어 모델링, CLM)은 이전 토큰들을 기반으로 다음 토큰을 예측하는 방식으로 학습한다. 디코더 전용 아키텍처를 사용하며 텍스트 생성과 지시 수행에 특화된다 — GPT 계열, Llama, Claude, Gemini가 이 패러다임을 따른다.

3판은 GPT 유사 소형 LLM을 처음부터 직접 구현하는 챕터를 포함한다. 토크나이저 구현, 트랜스포머 블록 스태킹, 자기회귀 사전학습, 텍스트 생성 루프까지 단계별로 구현하며 LLM 내부 작동 원리를 심층 이해하는 과정이다.

전체를 다시 학습시킬 것인가, 일부만 건드릴 것인가

사전학습된 모델을 특정 태스크나 도메인에 적응시키는 파인튜닝 방법론은 세 가지로 분류된다. 전체 파인튜닝(Full Fine-Tuning)은 모델의 모든 파라미터를 레이블된 데이터셋으로 업데이트하는 방식으로, 가장 강력한 성능을 보이지만 GPU 메모리와 계산 비용이 크고 소규모 데이터셋에서 과적합(catastrophic forgetting) 위험이 있다. 파라미터 효율 파인튜닝(PEFT)은 모델 파라미터의 일부만 업데이트해 계산 효율을 높이는 방법군이다 — LoRA(Low-Rank Adaptation)는 원본 가중치 행렬의 업데이트를 낮은 랭크의 행렬 분해로 근사해, 학습 가능한 파라미터를 전체의 0.1~1%로 줄이면서 전체 파인튜닝에 근접한 성능을 달성한다. 지시 조정(Instruction Tuning)은 LLM을 지시문을 따르는 어시스턴트로 변환하는 파인튜닝 방식으로, RLHF(인간 피드백 강화학습)나 DPO(직접 선호 최적화)를 통해 모델이 유용하고 안전한 응답을 생성하도록 훈련한다.

잠재 공간에서 이미지를 빚어내는 방식들

3판은 생성형 AI의 세 주요 아키텍처를 비교 분석한다. VAE(변분 오토인코더)는 입력을 잠재 공간(latent space)의 확률 분포로 인코딩하고 이 분포에서 샘플링해 디코딩하는 구조다. 잠재 공간이 연속적이고 구조화돼 있어 새로운 샘플 생성이 가능하지만 생성된 이미지가 다소 흐릿한 경향이 있으며, 인코더가 μ(평균)σ(표준편차)를 출력하고 재파라미터화 트릭을 통해 역전파를 가능하게 하는 구조가 핵심이다. GAN(생성적 적대 신경망)은 생성자(Generator)와 판별자(Discriminator)의 경쟁적 학습을 통해 실사에 가까운 이미지를 생성한다 — 생성자는 판별자를 속이도록, 판별자는 실제와 가짜를 구별하도록 훈련되며, 날카롭고 사실적인 이미지 생성이 가능하지만 모드 붕괴(mode collapse)와 불안정한 학습이 도전 과제다. 확산 모델(Diffusion Models)은 현재 텍스트-이미지 생성의 지배적 아키텍처로, 노이즈 추가(정방향 과정)와 노이즈 제거(역방향 과정)의 마르코프 체인으로 작동한다. 역방향 과정에서 U-Net이 각 타임스텝의 노이즈를 예측하고 제거함으로써 점진적으로 이미지를 복원하며, CLIP 기반 텍스트 컨디셔닝을 추가해 텍스트 설명에 부합하는 이미지를 생성하는 텍스트-이미지 파이프라인을 구성한다.

생성형 AI 아키텍처 비교VAEGAN확산 모델연속 잠재 공간이미지 보간 가능생성 품질: 보통적대적 학습날카로운 이미지불안정한 학습노이즈 제거 마르코프 체인텍스트 컨디셔닝(CLIP)SOTA 텍스트-이미지 생성Stable Diffusion, DALL·E 3

3판은 확산 모델을 직접 구현하는 챕터를 포함하며, DDPM(Denoising Diffusion Probabilistic Models)의 핵심 수식과 노이즈 스케줄러 구현을 단계별로 다룬다.

LLM을 완성 엔진에서 행동 주체로

3판의 가장 새로운 챕터 중 하나는 에이전틱 워크플로우 구현이다. LLM을 단순 완성 엔진에서 자율 행동 주체로 변환하는 설계 패턴을 다룬다.

도구 호출(Tool Use)은 LLM이 외부 함수·API·데이터베이스를 호출해 결과를 컨텍스트에 통합하는 기본 에이전틱 능력이다. 모델은 언제, 어떤 도구를, 어떤 인자로 호출할지 판단하고 도구 결과를 다음 추론의 입력으로 사용한다 — 책에서는 Python 함수를 도구로 정의하고 LLM 응답을 파싱해 도구를 실행하는 단순 에이전트 구현부터 시작한다. ReAct 패턴(Reasoning + Acting)은 에이전트가 "생각(Thought) → 행동(Action) → 관찰(Observation)"의 반복 루프로 복잡한 태스크를 처리하는 프롬프팅 전략이다. 각 단계에서 에이전트는 현재 상태를 평가하고, 다음 행동을 결정하며, 행동 결과를 관찰하고, 다시 추론한다 — 단일 도구 호출로 해결할 수 없는 다단계 문제에서 강력한 성능을 보인다. 멀티 에이전트 조율은 단일 LLM의 컨텍스트 용량과 전문성 한계를 극복하기 위해 여러 에이전트가 협력하는 아키텍처다. 오케스트레이터(Orchestrator) 에이전트가 태스크를 분해하고 전문 에이전트에 위임하며 결과를 통합해 최종 응답을 생성한다 — 책에서는 계획 에이전트, 코드 실행 에이전트, 검색 에이전트가 협력하는 연구 어시스턴트 시스템 구현 예제를 제공한다. 평가 루프(Evaluation Loop)는 에이전트가 자신의 출력 품질을 자체 평가하고 기준에 미달할 경우 재시도하는 자기 개선 메커니즘이다. LLM-as-judge 패턴을 사용해 출력물을 평가 기준에 따라 점수화하고, 임계값 미달 시 피드백과 함께 재생성을 트리거한다 — 단순 반복보다 일관적으로 높은 품질의 출력을 달성한다.

『Deep Learning with Python』 3판은 트랜스포머, 확산 모델, 에이전틱 워크플로우라는 현대 AI의 핵심 패러다임을 직관적 설명과 실행 가능한 코드로 통합한 교과서다. 숄레의 특기인 개념적 명확성과 실용적 구현의 균형이 LLM 시대에도 그대로 유지되며, Keras·PyTorch·JAX를 아우르는 다중 프레임워크 예제는 특정 생태계에 종속되지 않는 폭넓은 이해를 가능하게 한다. 에이전틱 워크플로우 챕터의 추가는 딥러닝 교육이 모델 학습을 넘어 시스템 설계로 확장되고 있음을 보여주는 신호다.

Sources

트랜스포머 아키텍처어텐션 메커니즘사전학습 패러다임LoRA생성형 AI 아키텍처