
Tanh MLP Backward Pass [medium]
v1 Tanh MLP 의 forward 가 아래라면:
h=tanh(XW1+b1),y=hW2+b2
이번엔 역전파: upstream gradient ∂y∂L 가 주어질 때 모든 파라미터·입력 gradient 를 구합니다.
핵심 공식
tanh′(z)=1−tanh2(z) 를 이용해 chain rule:
- ∂W2∂L=hT⋅∂y∂L
- ∂b2∂L=∑n∂yn∂L
- ∂h∂L=∂y∂LW2T
- ∂z1∂L=∂h∂L⊙(1−h2)
- ∂W1∂L=XT⋅∂z1∂L
- ∂b1∂L=∑n∂z1,n∂L
- ∂X∂L=∂z1∂LW1T
과제
함수 mlp_backward_tanh(X, W1, b1, W2, b2, dy) 를 완성하세요.
- 반환:
(dX, dW1, db1, dW2, db2) 튜플.
- 각 gradient shape = 대응 parameter shape.
테스트 케이스
| # | 이름 | 검증 |
|---|
| 1 | 반환 shape 일치 | |
| 2 | dy=0 → 모든 grad=0 | |
| 3 | dW2 = h^T · dy | |
| 4 | db2 = dy.sum(axis=0) | |
| 5 | dX 수치 미분 일치 | finite difference |
| 6 | dW1 수치 미분 일치 | |
| 7 | tanh 포화 영역 gradient 감쇠 | |