← 문제 목록/2-Layer MLP (tanh 활성)
문제 해설

2-Layer MLP (tanh 활성)

신경망 · easy

preview

MLP with Tanh

2-Layer MLP(84) 는 ReLU 를 썼죠. 이번엔 tanh 로 교체:

h=tanh(XW1+b1)\mathbf{h} = \tanh(X W_1 + \mathbf{b}_1) y=hW2+b2\mathbf{y} = \mathbf{h} W_2 + \mathbf{b}_2

Tanh vs ReLU

활성출력 범위0 근처 gradient포화
ReLU[0, ∞)1 (양수 영역)음수 영역 0
tanh(-1, 1)크다양끝 포화 (vanishing grad)
  • tanh는 출력이 0 중심 → 다음 층에 친화적 (LayerNorm 없이도 괜찮음)
  • 하지만 깊은 망에서는 포화로 gradient 사라짐 → ReLU가 주류

과제

함수 mlp_forward_tanh(X, W1, b1, W2, b2) 를 완성하세요.

  • 은닉층 활성에 np.tanh 사용.

테스트 케이스

#이름검증
1shape (N, D_out)
2W1=0, b1=0 → h=tanh(0)=0 → y=b2
3음수 은닉값도 통과 (ReLU와 차이)기대 수식 일치
4은닉값 범위 (-1, 1)
5알려진 toy 값
코드 작성
Loading...
실행 결과

코드를 작성하고 Run 을 눌러보세요.