딥러닝의 수학적 근거, 시벤코 정리 증명
정리
$\sigma$ 가 연속 시그모이달 함수라고 하면 $$ S := \left\{ G(x) = \sum_{k=1}^{N} \alpha_{k} \sigma \left( y_{k}^{T} x+ \theta_{k} \right) : y_{k} \in \mathbb{R}^{n} \land \alpha_{k} , \theta_{k} \in \mathbb{R} \land N \in \mathbb{N} \right\} $$ 는 $C\left( I_{n} \right)$ 에서 균등 조밀하다. 달리 말하자면, 모든 $f \in C \left( I_{n} \right)$ 과 $\varepsilon > 0$ 에 대해 다음을 만족하는 $G \in S$ 가 존재한다. $$ \left\| G - f \right\| < \varepsilon $$
- 다음을 만족하는 함수 $\sigma : \mathbb{R} \to \mathbb{R}$ 을 시그모이달 함수라 한다. $$ \sigma (t) \to \begin{cases} 1 & \text{as } t \to + \infty \\ 0 & \text{as } t \to - \infty \end{cases} $$
- $I_{n} := [0,1]^{n}$ 는 $n$차원 유닛 큐브로써, $n$ 개의 단위폐구간 $[0,1]$ 에 데카르트 곱을 취한 것이다.
- $C \left( I_{n} \right)$ 은 연속함수 공간의 클래스다.
- $y^{T}$ 는 $y$ 의 전치행렬로써, $y^{T} x$ 는 $x$ 와 $y$ 의 내적 $\left< x, y \right>$ 와 같다.
딥러닝은 왜 되는가?
시벤코 정리는 이른바 보편 근사 정리universal approximate theorem로 불리는 아주 중요한 정리로써 히든레이어가 하나인 딥러닝, 다시 말해 인공신경망이 왜 돌아가는지에 대한 이론적인 근거가 된다. 이 정리는 1989년에 시벤코에 의해 증명되었으며, 2020년대 들어 SOTA(State Of The Art)를 찍고 있는 수많은 딥러닝 기법을 간접적으로 지탱하고 있다. 이는 거꾸로 말해 지금 딥러닝 기법들이 말도 안되는 퍼포먼스를 내고 있음에도 그 이론적 근거는 약하다는 뜻이기도 하다.
수식에서 $x \in I_{n}$ 은 인풋 데이터, $y \in \mathbb{R}^{n}$ 은 가중치, $\theta \in \mathbb{R}$ 은 바이어스로 볼 수 있다. 그렇다면 시그모이달 함수 $\sigma$ 는 다름아닌 활성화 함수로 볼 수 있을 것이다. 활성화 함수의 아이디어 자체가 역치의 모방이라는 점을 생각해보면 신호가 전달되느냐 전달되지 않느냐는 일종의 구분―차별discrimination이며 측도론적으로 중요한 차별 함수에 대한 논의로 이어진다. 시벤코 정리를 쉬운 말로 풀어보자면, 우리가 원하는 어떤 $f$ 든 적절한 가중치와 바이어스를 찾아 차별 함수의 유한한 선형 결합으로 비슷하게 나타낼 수 있다는 것이다.
머신러닝의 맥락에서 $f$ 은 우리가 진정으로 찾고 싶은 함수, 그러니까 우리가 원하는 일을 하는 함수다. 그 함수는 사진을 인풋으로 받아서 개인지 고양이인지를 판별하거나 한국어 문자열을 받아서 영어로 돌려주거나, 더 어렵고 신기한 함수일 수 있다.
시벤코의 논문에서는 이후 몇가지의 정리가 더 증명된다. 우리가 흔히 생각하는 분류 문제, 혹은 근사 시키려는 함수에 불연속성을 허용하는 등이다. 이에 대해서는 굳이 다루지 않겠지만, 이 포스트에서 소개된 시벤코 정리의 증명을 이해할 수 있다면 그 결과들을 이해하는 것도 어렵지 않을 것이다.
증명 1
전략: 길고 어려운 보조정리 1의 증명과 보조정리 2의 증명을 먼저 숙지해야한다. 이 보조정리들의 증명에는 함수해석학과 측도론, 바나흐 공간에 대한 사전 지식이 필요하기 때문에 수학과 학부 수준의 전공자도 증명을 이해하기 어려울 수 있다. 보조정리만 증명되었다면 시벤코 정리 자체는 그 둘을 취합하는 것에 불과하다. 연속 시그모이달 함수가 측도론적으로 좋은 성질을 가지는 차별 함수임을 보이고, 차별 함수의 선형 결합이 $f \in C \left( I_{n} \right)$ 에 근사시킬 수 있음을 함수해석적으로 보이면 된다.
보조정리 1: 시그모이달 함수의 차별성유계 가측 시그모이달 함수는 차별 함수다.
시그모이달 함수가 연속이면 가측이고, 그 정의에 따라 유계여야하므로 곧 차별 함수다.
보조정리 2: 차별 함수의 균등 조밀성$\sigma$ 가 연속 차별 함수라고 하면 $$ \displaystyle S := \left\{ G(x) = \sum_{k=1}^{N} \alpha_{k} \sigma \left( y_{k}^{T} x+ \theta_{k} \right) : y_{k} \in \mathbb{R}^{n} \land \alpha_{k} , \theta_{k} \in \mathbb{R} \land N \in \mathbb{N} \right\} $$ 는 $C\left( I_{n} \right)$ 에서 균등 조밀하다. 달리 말하자면, 모든 $f \in C \left( I_{n} \right)$ 과 $\varepsilon > 0$ 에 대해 다음을 만족하는 $G \in S$ 가 존재한다. $$ \left\| G - f \right\| < \varepsilon $$
연속 시그모이달 함수가 차별 함수이므로 차별 함수의 성질에 따라 $\overline{S} = C\left( I_{n} \right)$ 이다.
■
G. Cybenko. (1989). Approximation by Superpositions of a Sigmoidal Function p6. ↩︎