딥러닝 기초 (0) - 시리즈 소개
이 시리즈가 누구를 위한 글인지, 앞선 머신러닝 기초 시리즈와 어떻게 이어지는지, 그리고 신경망 기초부터 CNN·RNN·LSTM·Transformer까지 열일곱 편의 진행 순서를 정리한 0편입니다.
딥러닝의 기초 개념과 대표 아키텍처를 정리하는 시리즈의 0편입니다. 시리즈 소개와 진행 순서를 다루며, 본문은 1편부터 시작합니다.
누구를 위한 시리즈인가
이 시리즈는 다음에 해당하는 분들을 대상으로 작성한 글입니다.
- PyTorch 예제나
model.fit()은 돌려봤지만 신경망 안에서 무슨 일이 일어나는지는 설명하지 못하는 사람 - CNN, RNN, Transformer라는 이름은 들어봤지만 각각이 무슨 문제를 풀려고 나왔는지 흐릿한 사람
- 라이브러리 사용법보다 아키텍처의 뼈대와 그것이 등장한 이유를 먼저 잡고 싶은 사람
머신러닝의 일반 개념(지도학습, 손실, 과적합 등)이 처음이라면 머신러닝 기초 시리즈를 먼저 보는 것을 권합니다. 딥러닝은 그 위에 얹히는 한 갈래입니다.
이 시리즈의 위치
이 블로그의 데이터·모델 관련 글은 몇 개의 층으로 나뉩니다.
- 도구(라이브러리) — NumPy·Pandas 기초로 데이터를, PyTorch 기초로 딥러닝 프레임워크를 다루는 도구들.
- 머신러닝 기초 — ML 기초. 모델이 데이터에서 무엇을, 어떻게 배우는가.
- 딥러닝 기초 — 이 시리즈. 신경망을 밑바닥부터 파고, 대표 아키텍처까지.
- 적용 — NYC 택시 수요 예측 파이프라인. 개념을 실제 파이프라인으로 옮긴 프로젝트.
딥러닝은 머신러닝의 부분집합입니다. ML 기초가 “모델이 배우는 원리”를 폭넓게 다룬다면, 이 시리즈는 그중 신경망을 깊이 파고들어 오늘날의 주력 아키텍처인 CNN·RNN·Transformer까지 잇습니다.
어떻게 진행하는가
열일곱 편(0–16)으로 진행합니다. 신경망의 토대에서 시작해, 깊은 망을 학습시키는 장치들, CNN, 그리고 시퀀스와 Transformer로 이어지며 각 주제를 한 편씩 다룹니다.
신경망의 토대
| 편 | 주제 |
|---|---|
| (1) | 신경망 기초: 퍼셉트론에서 MLP, 순전파 |
| (2) | 활성화 함수: 비선형성과 ReLU·GELU |
| (3) | 손실과 출력층: softmax와 교차 엔트로피 |
| (4) | 역전파: 연쇄법칙과 계산 그래프 |
깊은 망을 학습시키기
| 편 | 주제 |
|---|---|
| (5) | 최적화: SGD, 모멘텀, Adam, 학습률 스케줄 |
| (6) | 가중치 초기화: Xavier와 He |
| (7) | 정규화 계층: Batch Norm과 Layer Norm |
| (8) | 과적합과 규제: 드롭아웃, weight decay, 조기 종료 |
CNN
시퀀스와 Transformer
| 편 | 주제 |
|---|---|
| (12) | 시퀀스와 임베딩 |
| (13) | RNN: 순환 구조와 BPTT |
| (14) | LSTM과 GRU: 게이트로 장기 의존성 |
| (15) | seq2seq와 어텐션 |
| (16) | Transformer: self-attention과 그 너머 |
각 편은 개념을 먼저 세우고 최소한의 코드로 확인합니다. 아키텍처는 앞선 것의 한계를 풀며 등장하는 순서로 배치했습니다 — RNN의 기울기 소실이 LSTM을, seq2seq의 병목이 어텐션과 Transformer를 부르는 식입니다. 각 편이 공개되면 위 표에 링크를 답니다.
실습 환경
이 시리즈(이론편)는 원리를 드러내는 데 집중하므로 코드는 전부 NumPy와 의사코드로 씁니다. 딥러닝 프레임워크인 PyTorch는 여기서 다루지 않고, 도구로서 PyTorch 기초 시리즈에서 따로 익힌 뒤 실제 데이터로 모델을 학습시키는 실습편에서 사용합니다.
실습은 Google Colab으로 통일합니다. 별도 설치 없이 브라우저에서 실행할 수 있고 numpy가 이미 설치되어 있습니다. 환경 준비가 처음이라면 NumPy·Pandas 기초 0편의 실습 환경 절을 참고하세요.
준비가 됐으면 1편부터 시작합니다.