logo

표현자 정리 증명 📂머신러닝

표현자 정리 증명

정리

인풋 집합input set XX \ne \emptyset양정부호 커널 k:X×XRk: X \times X \to \mathbb{R} 이 주어져 있다고 하자. 학습데이터셋training DatasetD:={(xi,yi)}i=1mX×R D := \left\{ \left( x_{i} , y_{i} \right) \right\}_{i=1}^{m} \subset X \times \mathbb{R} 라 하고, 재생 커널 힐베르트 공간 HkH_{k} 의 클래스 F:={fRX:f()=i=1βik(,zi)βiRziXf<}Hk \mathcal{F} := \left\{ f \in \mathbb{R}^{X} : f \left( \cdot \right) = \sum_{i=1}^{\infty} \beta_{i} k \left( \cdot , z_{i} \right) \land \beta_{i} \in \mathbb{R} \land z_{i} \in X \land \left\| f \right\| < \infty \right\} \subset H_{k} 를 위와 같이 둔다. 임의의 목적 함수 c:(D×R)mRc : \left( D \times \mathbb{R} \right) ^{m} \to \overline{\mathbb{R}}단조증가함수레귤라이저regulizer g:R[0,)g : \mathbb{R} \to [0,\infty) 에 대해 다음과 같이 정칙화된 대상 범함수regulized Objective Functional L:FRL : \mathcal{F} \to \overline{\mathbb{R}} 이 정의되어 있다고 하자. L(f):=c((x1,y1,f(x1)),,(xm,ym,f(xm)))+g(f) L (f) := c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right) 여기서 HkH_{k} \left\| \cdot \right\|kk 의 양정부호성positive Definiteness에 따라 다음과 같이 주어진다. i=1βik(,zi)2:=i=1j=1βiβjk(zi,zj)0 \left\| \sum_{i=1}^{\infty} \beta_{i} k \left( \cdot , z_{i} \right) \right\|^{2} := \sum_{i=1}^{\infty} \sum_{j=1}^{\infty} \beta_{i} \beta_{j} k \left( z_{i} , z_{j} \right) \ge 0


  • R\mathbb{R}실수의 집합이고, R\overline{\mathbb{R}} 은 무한대 \infty 를 포함하는 확장 실수다.
  • RX\mathbb{R}^{X} 는 정의역이 XX 고 공역이 R\mathbb{R}함수를 모아놓은 함수공간이다.
  • 레귤라이저란 데이터에 대한 오버피팅을 방지하기 위한 페널티penalty 함수다.
  • 범함수란 엄밀하지 않게 대충 말하자면 함수 자체를 인풋으로 받아들이는 함수다.

비모수nonparametric

L(f)L (f) 를 최소화하는 함수 fFf \in \mathcal{F} 는 어떤 {αi}i=1mR\left\{ \alpha_{i} \right\}_{i=1}^{m} \subset \mathbb{R} 에 대해 다음과 같은 꼴로 나타난다. f()=i=1mαik(,xi) f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right)

반모수semiparametric

XX 에서 정의된 MM 개의 실함수의 집합을 {ψp:XR}p=1M\left\{ \psi_{p} : X \to \mathbb{R} \right\}_{p=1}^{M} 에 대해 행렬 (ψp(xi))ip\left( \psi_{p} \left( x_{i} \right) \right)_{ip}랭크MM 이라고 하자. 그러면 fFf \in \mathcal{F}hspan{ψp}h \in \span \left\{ \psi_{p} \right\} 에 대해 c((x1,y1,f~(x1)),,(xm,ym,f~(xm)))+g(f) c \left( \left( x_{1}, y_{1}, \tilde{f} \left( x_{1} \right) \right) , \cdots , \left( x_{m}, y_{m}, \tilde{f} \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right) 를 최소화하는 f~=f+h\tilde{f} = f + h 는 어떤 {αi}i=1m,{βp}p=1MR\left\{ \alpha_{i} \right\}_{i=1}^{m}, \left\{ \beta_{p} \right\}_{p=1}^{M} \subset \mathbb{R} 에 대해 다음과 같은 꼴로 나타난다. f~()=i=1mαik(,xi)+p=1Mβpψp() \tilde{f} (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right) + \sum_{p=1}^{M} \beta_{p} \psi_{p} (\cdot)

설명

가능하다면 다음 두 포스트를 먼저 읽어보는 것을 추천한다:

표현자

표현자 정리representer theorem고전적 머신러닝, 특히 서포트벡터머신의 맥락에서 가장 중요한 정리 중 하나로써 주어진 데이터에 대해 우리가 근사시키고 싶은 목적 함수 ff 가 적절한 커널 kk 에 대해 f()=i=1mαik(,xi) f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right) 와 같은 꼴로 나타난다고 하는 강력한 정리다. 여기서 커널의 인풋 중 하나가 xix_{i} 로 픽스된 함수 k(,xi)=ϕ(xi)()Hk k \left( \cdot , x_{i} \right) = \phi \left( x_{i} \right) (\cdot)\in H_{k} 을 표현자representer라 부른다. 이에 따르면 표현자 정리는 ‘재생 커널 힐베르트 공간에서 학습데이터에 적합한fitted 임의의 함수는 표현자들의 유한한 선형결합으로 나타낼 수 있다’고 요약할 수 있겠다. 특히 비선형회귀를 위한 서포트벡터 머신의 커널 트릭은 이에 정확히 부합한다.

데이터 과학의 맥락에서 표현자 ϕ(xi)()\phi \left( x_{i} \right) (\cdot) 는 피쳐 맵feature map이라고도 불리는데, 임의의 데이터 XX 를 우리가 그 특징feature을 알 수 있는 힐베르트공간으로 옮기고 그 유한한 합으로 우리가 원하는 함수를 표현할 수 있다는 말은 그동안 우리가 배워온 많은 머신러닝 기법들이 왜 작동해왔는지를 정당화한다. 물론 수학적 보장이 없더라도 그 기법들은 기법 그 자체로써 유효하지만, 표현자 정리가 있음으로써 그 기법들이 이론적 기반을 다지게 된다는 점에서 아주 중요하다.

목적 함수와 레귤라이저

정리의 스테이트먼트에서는 목적 함수 cc 와 레귤라이저 gg 를 아주 일반적으로 정의했지만, 실질적으로 많은 경우에 cc 는 데이터와 ff 의 적합도를 측정하는 평균잔차제곱, 즉 c=1mi=1n(yif(xi))2 c = {{ 1 } \over { m }} \sum_{i=1}^{n} \left( y_{i} - f \left( x_{i} \right) \right)^{2} 로 보고 gg 는 제곱 세미 놈 페널티 g(f)=λf2g \left( \left\| f \right\| \right) = \lambda \left\| f \right\|^{2} 로 보아도 무방하다1.

주의해야할 점은 이 수식의 모양이나 단어의 의미만 보고 목적 함수와 레귤라이저를 구분해서는 안 된다는 것이다. 표현자 정리의 가장 대표적인 응용이 서포트 벡터 머신인데, 마진에 느슨한 허용을 주는 소프트 마진 SVM에서 다루는 최소화 문제는 다음과 같다. Minimize12w22+λk=1nξksubject tof(xk)1ξkξk0k=1,,n \begin{matrix} \text{Minimize} & {{ 1 } \over { 2 }} \left\| \mathbf{w} \right\|_{2}^{2} + \lambda \sum_{k=1}^{n} \xi_{k} \\ \text{subject to} & \left| f \left( \mathbf{x}_{k} \right) \right| \ge 1 - \xi_{k} \\ & \xi_{k} \ge 0 \end{matrix} \\ k = 1, \cdots , n

여기서 최적화 그 자체만 생각했을 때 목적 함수는 상수 λ0\lambda \ne 0 에 대해 사실 12λw22+k=1nξk {{ 1 } \over { 2 \lambda }} \left\| \mathbf{w} \right\|_{2}^{2} + \sum_{k=1}^{n} \xi_{k} 과 다름 없으며, 이 때는 데이터와의 괴리를 생각하는 k=1nξk\sum_{k=1}^{n} \xi_{k}cc 고 서포트 벡터 머신의 초평면 f(x)=wT+bf (\mathbf{x}) = \mathbf{w}^{T} + b 에서 유도되는 12λw22{{ 1 } \over { 2 \lambda }} \left\| \mathbf{w} \right\|_{2}^{2}gg 로 읽혀야한다. 이 최적화의 의미를 수학에 두느냐 머신러닝에 두느냐에 따라 헷갈릴 수 있는데,

  • 수학의 색이 더 강한 사람은 SVM을 ‘일단 선형회귀를 끝낸 뒤 예외를 두는 것’으로 보기 때문에 w22\left\| \mathbf{w} \right\|_{2}^{2} 를 먼저 최소화하려 하고
  • 데이터과학의 색이 더 강한 사람은 SVM을 ‘우선 데이터를 잘 분류하는데에 성공하고, 그 중에서 가장 마진이 큰 초평면을 찾는 것’으로 보기 때문에 k=1nξk\sum_{k=1}^{n} \xi_{k} 을 먼저 최소화하려고 하기 때문이다.

양쪽 다 충분히 공감할 수 있는 관점이고, 표현자 정리의 응용이 SVM 하나만 있는 것도 아니니 여기서는 뇌새김 암기법 같은 것을 찾으려 하지 말고 문제에 따라 능동적으로 사고하고 받아들여야한다.

증명 2

참고문헌에 있는대로 비모수적 표현자 정리만 증명한다.


Part 1. f=i=1mαiϕ(xi)+vf = \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v

재생커널의 정의: 함수 k:X×XCk : X \times X \to \mathbb{C} 가 다음 두 조건을 만족하면 HH재생 커널reproducing Kernel이라 한다.

  • (i): 표현자representer: 모든 xXx \in X 에 대해 k(,x)H k \left( \cdot , x \right) \in H
  • (ii) 재생 성질reproducing Property: 모든 xXx \in X 과 모든 fHf \in H 에 대해 <f,k(,x)>=f(x)=δx(f) \left< f , k \left( \cdot , x \right) \right> = f(x) = \delta_{x} (f) 특히 모든 x1,x2Xx_{1} , x_{2} \in X 에 대해 다음이 성립한다. k(x1,x2)=<k(,x2),k(,x1)> k \left( x_{1} , x_{2} \right) = \left< k \left( \cdot , x_{2} \right), k \left( \cdot , x_{1} \right) \right>

재생커널 k:X×XRk : X \times X \to \mathbb{R} 에 대해 xk(,x)x \mapsto k (\cdot ,x) 인 (표현자) 함수 ϕ:XRX\phi : X \to \mathbb{R}^{X} 를 정의하자. kk 는 재생커널이므로, xXx' \in X 에서 함수 (ϕ(x))()\left( \phi (x) \right) (\cdot) 의 함수값은 모든 x,xXx, x' \in X 에 대해 (ϕ(x))(x)=k(x,x)=<ϕ(x),ϕ(x)> \left( \phi (x) \right) (x ') = k \left( x' , x \right) = \left< \phi \left( x ' \right) , \phi (x) \right> 이다. 여기서 <,>\left< \cdot , \cdot \right>HkH_{k}내적이다. 주어진 {xi}i=1m\left\{ x_{i} \right\}_{i=1}^{m} 에 대해 임의의 함수 fFf \in \mathcal{F}span{ϕ(xi)}i=1m\span \left\{ \phi \left( x_{i} \right) \right\}_{i=1}^{m} 의 부분과 그에 직교해서 모든 jj 에 대해 <v,ϕ(xj)>=0 \left< v , \phi \left( x_{j} \right) \right> = 0 를 만족하는 vFv \in \mathcal{F} 와 어떤 (α1,,αm)Rm\left( \alpha_{1} , \cdots , \alpha_{m} \right) \subset \mathbb{R}^{m} 에 대해 다음과 같이 나타낼 수 있다. f=i=1mαiϕ(xi)+v f = \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v 우리는 이제 L(f):=c((x1,y1,f(x1)),,(xm,ym,f(xm)))+g(f)=c+g \begin{align*} L (f) :=& c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right) \\ =& c + g \end{align*} 에서 ccvv 에 독립이며, v=0v = 0 일 때 ffL(f)L(f) 를 최소화함을 논할 것이다.


Part 2. ccvv 는 독립이다

함수 f=f()f = f(\cdot) 와 재생 커널 k(,xj)k \left( \cdot , x_{j} \right) 의 내적은 재생 성질에 따라 =<f,k(,xj)>f(xj)=<i=1mαiϕ(xi)+v,ϕ(xj)>=i=1mαi<ϕ(xi),ϕ(xj)>+0 \begin{align*} =& \left< f , k \left( \cdot , x_{j} \right) \right> \\ f \left( x_{j} \right) =& \left< \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v , \phi \left( x_{j} \right) \right> \\ =& \sum_{i=1}^{m} \alpha_{i} \left< \phi \left( x_{i} \right) , \phi \left( x_{j} \right) \right> + 0 \end{align*} 이다. 이는 vv 에 독립이므로, L(f)=c+gL (f) = c + g 에서 학습데이터 DDff 에만 종속된 c=c((x1,y1,f(x1)),,(xm,ym,f(xm))) c = c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right) 역시 vv 에 독립임을 알 수 있다.


Part 3. ggv=0v = 0 일 때 최소화된다

  • (1): vvi=1mαiϕ(xi)\sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) 에 직교하고
  • (2): gg단조함수로 가정했으므로

g(f)=g(i=1mαiϕ(xi)+v)=g(i=1mαiϕ(xi)+v2+v2)(1)g(i=1mαiϕ(xi))(2) \begin{align*} & g \left( \left\| f \right\| \right) \\ =& g \left( \left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v \right\| \right) \\ =& g \left( \sqrt{\left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v \right\|^{2} + \left\| v \right\|^{2}} \right) & \because (1) \\ \ge& g \left( \left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) \right\| \right) & \because (2) \end{align*} 를 얻는다. 보다시피 v=0v = 0 일 때 등식이 성립하며, gg 가 최소화되려면 v=0v=0 이어야 한다. 한편 Part 2에서 vvcc 에 영향을 끼칠 수 없음을 확인했으므로 v=0v = 0 으로 두어도 무방하고, L=c+gL = c + g 를 최소화하는 함수 ff 는 다음과 같은 꼴로 나타날 수 있게 된다. f()=i=1mαik(,xi) f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right)


  1. Wahba. (2019). Representer Theorem. https://pages.stat.wisc.edu/~wahba/ftp1/wahba.wang.2019submit.pdf ↩︎

  2. Schölkopf. (2001). A Generalized Representer Theorem. https://link.springer.com/chapter/10.1007/3-540-44581-1_27 ↩︎