반드시 알아야 할 가장 단순한 신경망
MLP는 간단히 말해 선형층 → 비선형 활성화 → 선형층 → 비선형 활성화 → 선형층으로 이어지고, 마지막 선형층이 로짓을 만들어. 이 퀘스트에서 다루는 모든 아키텍처는 이 틀을 특정 목적에 맞게 바꾸거나 다듬은 형태야. CNN은 이미지에 맞는 합성곱으로 선형 연산을 대체하고, Transformer는 어텐션을 추가하며, 순환 신경망은 매 타임스텝마다 같은 MLP를 재사용해.
표 형태 데이터와 단순한 회귀·분류 문제에서는 은닉 유닛 64–256개로 이루어진 2-3층 MLP에 적절한 활성화 함수(ReLU/GELU)를 쓰는 구성이 합리적인 출발점이야. 잘 튜닝된 그래디언트 부스팅 모델을 이기는 경우는 드물지만, 이 분야의 나머지 내용을 배우기에는 올바른 구조야.
MLP를 지나는 텐서 크기
층을 지날 때마다 텐서 크기를 추적해. 입력은 x: [B, in_dim], 첫 번째 은닉 표현은 h₁: [B, hidden_dim], 두 번째 은닉 표현은 h₂: [B, hidden_dim], 출력은 y: [B, out_dim]이야. PyTorch 표기 방식에서 두 층을 잇는 가중치 행렬의 크기는 [out, in]이고, 편향의 크기는 [out]이야.
깊이와 너비가 바꾸는 것
너비는 층마다 유닛을 더 두어 하나의 추상화 수준에서 더 많은 특징을 병렬로 다루게 해. 깊이는 층을 더 쌓아 여러 추상화 사이에 더 풍부한 조합 구조를 만들게 해. 제대로 된 신경망에는 둘 다 필요해. 표 형태 데이터 문제는 대부분 적당한 너비(128–512)의 은닉층 2-3개면 충분하지만, 이미지와 텍스트에서는 깊이와 목적에 특화된 아키텍처가 더 큰 영향을 미쳐.