nn.Linear — 가장 중요한 layer
nn.Linear(in_features, out_features) 가 affine 변환 y = x W^T + b 적용. weight matrix 는 (out_features, in_features), bias 는 (out_features,). 이 single layer 가 대부분 model parameter 의 90% 가 사는 곳 (Transformer FFN block, classifier head, embedding projection — 다 Linear).
초기화 default
default 로 nn.Linear 가 weight 를 Kaiming uniform (ReLU 계열에 좋음) 으로, bias 를 input fan-in 으로 scale 된 uniform 으로 init. 보통 override 안 하지만 — 존재 안다는 게 'model 이 train 안 됨' 디버깅을 tractable 하게.
MLP idiom
multi-layer perceptron 은 Linear → activation → Linear → activation → ... → Linear. modern variant 는 regularization 위해 Dropout, 안정성 위해 LayerNorm, 매우 깊은 network 위해 skip connection 추가. pattern 은 universal — 모든 Transformer FFN block 이 중간에 non-linearity (보통 GELU) 둔 2-layer MLP.