신경망이 곱셈을 하지 않는 이유: 퍼셉트론에서 SwiGLU까지
신경망은 텍스트와 이미지를 생성하는 데 성공했음에도 불구하고, 근본적으로 입력 데이터의 곱셈을 수행하지 않습니다. 퍼셉트론에서는 입력이 선형 결합을 거칩니다: 가중치가 적용되고 합산됩니다. 기본 뉴런의 공식은 다음과 같습니다: $$h = \sigma(\sum w_i x_i + b)$$, 여기서 두 변수 $x_1 \cdot x_2$의 곱은 존재하지 않습니다.
비용(가격 × 수량) 계산과 같은 작업의 경우, 네트워크는 패턴을 기억하여 결과를 근사하지만 직접 곱셈을 계산하지는 않습니다. 은닉층을 추가해도 원칙은 유지됩니다: 각 단계에서 가중치가 적용된 신호의 합만이 관여합니다.
첫 번째 층에서:
$$h_1^{(1)} = x_1 w_{11}^{(1)} + x_2 w_{12}^{(1)}$$
$$h_2^{(1)} = x_1 w_{21}^{(1)} + x_2 w_{22}^{(1)}$$
두 번째 층에서:
$$h_1^{(2)} = h_1^{(1)} w_{11}^{(2)} + h_2^{(1)} w_{12}^{(2)}$$
대입을 통해 보면: $x_1$과 $x_2$는 합에 남아 있으며, 그들의 곱은 발생하지 않습니다. 가중치는 층 사이에서 곱해지지만, 입력은 그렇지 않습니다.
해결 방법: 제곱과 사전 계산
엔지니어들은 곱셈을 시뮬레이션하기 위해 사전에 곱해진 값($x_1 x_2$)이나 제곱을 입력에 추가합니다. 학교에서 배운 공식을 통해 곱을 표현할 수 있습니다:
$$x y = \frac{1}{2} \left( (x+y)^2 - x^2 - y^2 \right)$$
이는 곱셈을 덧셈, 뺄셈, 제곱으로 줄여줍니다. 가상의 활성화 함수 $f(z) = z^2$가 도움이 될 수 있지만, 표준 ReLU, Sigmoid, Tanh는 제곱의 비선형성을 제공하지 않습니다.
실제로는: 이러한 해결 방법은 데모에는 작동하지만, 많은 입력이 있는 실제 작업에서는 필요한 조합을 미리 알아야 합니다.
- 사전 계산: $x_1 x_2$를 입력으로 제공.
- 제곱: $(x+y)^2$, $x^2$, $y^2$ 사용.
- 한계: 확장성이 없으며, 보편적 근사자 특성을 훼손함.
트랜스포머의 돌파구: GLU 변형의 역할
트랜스포머 아키텍처(2017년)는 어텐션을 도입했지만, 중요한 단계는 2020년에 활성화 함수를 Gated Linear Units(GLU)로 대체한 것입니다(Noam Shazeer, "GLU Variants Improve Transformer"). ReGLU, GEGLU, SwiGLU는 수렴 속도에서 ReLU를 능가합니다.
| 활성화 함수 | 오류 |
|-----------|--------|
| ReLU | 2.45 |
| ReGLU | 2.32 |
| GEGLU | 2.25 |
| SwiGLU | 2.24 |
SwiGLU는 속도 때문에 선호됩니다. 공식:
$$\text{SwiGLU}(x) = \text{Swish}(x W + b) \odot (x V + c)$$
여기서 $\odot$는 두 투영의 요소별 곱셈입니다. 이는 2차 의존성을 도입하여 해결 방법 없이 $x_1 x_2$를 모델링할 수 있게 합니다. SwiGLU는 현대 LLM의 FFN 블록에서 사용됩니다.
메커니즘:
- 입력 $x$는 두 경로로 투영됩니다: $xW + b$와 $xV + c$.
- 첫 번째는 Swish를 통과합니다($\text{Swish}(z) = z \sigma(\beta z)$).
- 요소별 곱셈.
모델에 대한 실질적 영향
SwiGLU는 학습을 개선하지만 AI를 정밀한 계산기로 만들지는 않습니다. 생성 모델은 확률적입니다: "2×2=4"는 추론이 아니라 가능성이 높은 토큰입니다. 복잡한 계산을 위해 LLM은 샌드박스에서 Python 코드에 위임합니다.
- GLU의 장점: 더 나은 수렴, 비선형성 모델링.
- 단점: 네트워크가 항상 필요한 가중치를 자동으로 찾지는 않음.
- 많은 양의 데이터가 필요함.
- 확률적 특성은 지속됨.
미래 통합(트랜스포머 내 WebAssembly)은 모델 내에서 네이티브 코드를 실행할 수 있게 할 것입니다.
핵심 요약
- 고전적 퍼셉트론은 입력을 더하지만 곱하지는 않습니다.
- GLU(SwiGLU)는 2차 의존성을 위해 투영의 요소별 곱셈을 도입합니다.
- 게이트 유닛이 현대 트랜스포머에서 ReLU를 대체하여 오류를 5–10% 감소시킵니다.
- 정밀한 계산을 위해 LLM은 외부 도구를 사용합니다.
— Editorial Team
아직 댓글이 없습니다.