Posts Neural Network from the perspective of Information Geometry
Post
Cancel

Neural Network from the perspective of Information Geometry

건희형이랑 같이 보자고 한 논문 정리

1. Information Geometry of Neural Networks

Author : Shun-ichi Amari

논문 링크 : Information Geometry of Neural Networks

일단 이 논문은 2000년에 나온 아주 고전 중의 고전에 속하는 논문이다. 현재로서 이 논문에서 요약한 방법들과 한계들이 거의 수용되지는 않고 있지만, 재미삼아 읽어볼만은 하다.

먼저 이 논문에서는 introduction에 제일 중요한 개념 하나를 정의하는데, 바로 neuromanifold이다. 이름부터 impressive한 이 대상은 Multilayer perceptron(MLP)의 parameter들 $\theta$를 다 모아놓은 어떤 수학적 대상이고, 논문에서는 이 대상이 manifold를 이루기 때문에 이러한 이름을 붙였다고 이야기한다. 사실 2019년에 와서 MLP가 무슨 실용적인 의미가 있는가 싶기도 하고, 내가 알고있는 MLP의 parameter들이 가능한 집합은 실수 전체의 집합이기 때문에 $\mathbb{R}^N$과 뭐가 다른가 싶지만 일단은 이런 대상을 neuromanifold라고 부르기로 하자. 그러면 이 논문은 AMARI, 1985에서 기술한 neuromanifold의 topological, metrical structure을 다룬다고 이야기한다. 그럼 살펴보자(사실 2019년에 와서 별로 중요한 얘기는 없다.).

Multilayer perceptrons

Input signal $x$를 받아서 scalar output $y$를 내뱉는 classification 문제를 생각해보자. Perceptron이 $m$개의 hidden unit을 가지고 있는 경우, output 각각은 $\varphi(w_{\alpha}\cdot x)$, $\alpha = 1, \cdots, m$으로 주어진다. 이 때 $\varphi$는 sigmoidal output function으로 주어졌다고 가정하자.

임의의 perceptron은 parameter ${w_1, \cdots, w_{\alpha};v}$로 규정된다. 우리는 이 parameter들을 $m(n+1)$-dimensional vector $\theta$로 축약해서 표기하기로 한다. 또한 우리는 이러한 형태의 모든 parameter들을 원소로 갖고 있는 공간 $S$를 MLP의 neuromanifold라고 부르기로 한다(사실 이게 $\mathbb{R}^N$과 뭐가 다른지는 잘 모르겠다. 제약조건이 하나도 없으니$\cdots$.).

이제 잘 생각해보면, perceptron의 output은 $x$에 의존하는 어떤 random variable이다. 따라서, perceptron의 input-output relation은 어떤 조건부확률로 주어지는데 예를 들어서 다음과 같은 관계로 주어지는 것이다.

\[p(y|x,\theta) = \frac{1}{\sqrt{2\pi}\sigma}\exp\bigg(-\frac{1}{2\sigma^2}\{y-f(x,\theta)\}^2\bigg)\]

이 때

\[f(x,\theta) = \sum v_{\alpha}\varphi(w_{\alpha}\cdot x)\]

는 input $x$가 주어졌을 때 $y$의 평균이다. 이제 이것의 로그를 취하면(Maximum Likelihood Estimation 관점에서)

\[l(y|x,\theta) = -\frac{1}{2\sigma^2}\{y-f(x,\theta)\}^2 - \log(\sqrt{2\pi}\sigma)\]

가 되고, (논문에서 나와있지는 않지만)MLE에서 이를 최대화하는것은 loss term인 $(y-f(x,\theta))^2$를 최소화하는것과 동치가 된다!

이제 앞서 정의한 $S$의 topological, metrical structure을 살펴보도록 하자.

Topological structure of $S$

만약

\[p(y|x;\theta_1) = p(y|x;\theta_2)\]

이 성립한다면, 두 parameter $\theta_1$과 $\theta_2$는 같은 input-output relation을 가진다고 말한다. 이 경우에 우리는 $\theta_1 \approx \theta_2$로 표기한다. 이렇게 정의하고 난 equivalence relation $R$로 $S$를 잘라준 집합 $S/R$을 $\tilde{S}$라고 하자.

예를 들어, $S$의 부분집합으로서 $w_{\alpha} = \pm w_{\beta}$를 만족하는 부분공간을 생각해보자. 이를 지금부터 critical subspace라고 부를 것이다. 이 공간은 원래 공간을 $\pm$부호에 따라 같은 원소들로 잘라준 공간이므로, 더 낮은 차원으로 축소된다. 두 점 $\theta = (w_1, \cdots, w_m;v)$와 $\theta’ = (w_1, \cdots, w_m;v’)$는 만약 $v_{\alpha} + v_{\beta} = v_{\alpha}’ + v_{\beta}’$를 만족한다면 같은 점이 된다. 다라서, 이 공간은 $v_{\alpha} + v_{\beta} = c$로 일정한 공간들로 분해되는데, 결국 이것이 함의하는 바는 $\tilde{S}$는 수학적인 manifold는 아니며 singularity를 가진다는 것을 의미한다.

Riemannian sutructure of $S$

1946년 이 논문으로부터 잘 알려진 사실이듯, Kullback-Leibler divergence

\[D(\theta:\theta') = \int p(y|x;\theta)\log\frac{p(y|x;\theta)}{p(y|x;\theta')}p(x)dxdy\]

에서 $\theta’ = \theta + d\theta$의 무한소(infinitesimal)만큼의 차이를 보인다면, KL divergence는 다음처럼 변형된다:

\[D(\theta:\theta+d\theta) = \frac{1}{2}d\theta^TG(\theta)d\theta\]

이 때 $G(\theta)$는 Fisher Information Matrix(FIM)이다.

각 점 $\theta$에서 FIM은 Tangent space $T_{\theta}$의 Riemannian metric을 제공한다. 이 때 가장 자연스러운 $d\theta$의 norm의 제곱은 다음처럼 주어져야 할 것이다.

\[\langle d\theta, d\theta\rangle_{\theta} = d\theta^TG(\theta)d\theta\]

따라서 이렇게 FIM으로부터 norm을 정하고 나면 $S$의 위상적 성질들도 쉽게 관찰할 수 있다. 예를 들어, critical space $S$에서 두 점 $(w_1, \cdots, w_m;v)$와 $(w_1, \cdots, w_m;v’)$가 같다는 것은 $v_{\alpha} + v_{\beta} = v_{\alpha}’ + v_{\beta}’$라는 것을 의미했다. 그러나 이 동치류에서는

\[d\theta^TG(\theta)d\theta = 0\]

이라는 것을 알 수 있다. 따라서 FIM은 이 경우에 degenerate이다.

Learning of multilayer perceptrons

이 논문에서는 우리가 주로 쓰는 backpropagation algorithm

\[\theta_{t+1} = \theta_t - \eta_t\frac{\partial l^{\ast}(x_t,y_{t}^{\ast};\theta_t)}{\partial \theta}\]

where

\[l^{\ast}(x_t,y_t^{\ast};\theta_{t}) = \frac{1}{2}\{y_t^{\ast}-f(x_t;\theta_t)\}^2\]

(단, ${x_i,y_i^{\ast}}$는 훈련과 정답 쌍이고 $f$는 MLP이다.)이 Fisher-efficient하지 않다고 이야기한다. 즉, 지금은 모두가 알고 있듯 saddle point에 자주 걸려서 학습이 느려진다는 단점이 있다고 이야기한다. 이를 극복하기 위해서 이 논문이 나올(2000년) 당시에 최신 기법은 Yang and Amari, 1998같은 것이나 Amari, 1998같은 것이 있었다고 한다(참고로 이 두 논문과 지금 여러분이 리뷰하고 있는 논문의 저자는 동일인이다.). 이를 살펴보자.

Natural graidient learning algorithm

Amari, 1998의 Natural gradient learning algorithm은 다음과 같은 공식을 통해 t번째 step의 parameter $\theta_t$를 업데이트한다.

\[\theta_{t+1} = \theta_t - \eta_t G^{-1}(\theta_t)\frac{\partial l^{\ast}(y_t,x_t;\theta_t)}{\partial\theta}\]

이 때 $\eta_t$는 학습 step $t$에 영향을 받는 learning rate이다.

\[\tilde{\nabla}l^{\ast} = G^{-1}(\theta_t)\frac{\partial l^{\ast}}{\partial \theta}\]

항은 Riemannian manifold위에서 가장 경사지른 경로를 찾게 해준다.

여기서 내 의문) 만약 FIM이 degenerate라면?

Adaptive implementation of natural gradient learning

FIM $G(\theta)$는 실제로 분포를 가정해야 하기 때문에 구하기가 어려울 뿐더러, 역행렬을 구하는 과정 또한 쉽지 않다. 이 논문의 핵심인 이 챕터에서는, 즉각적으로 $G^{-1}(\theta)$를 구하는 방법을 제시한다.

FIM은 다음처럼 정의될 수 있으므로,

\[G(\theta) = \frac{1}{4\sigma^2}\mathbb{E}\bigg(\nabla f(x,\theta)\quad\nabla f(x,\theta)^T\bigg)\]

우리는 다음 과정을 통해 $G^{-1}$를 estimation할 수 있다고 한다. 구체적인 이유는 논문에 나와있지 않다.

\[\hat{G}^{-1}_{t+1} = (1+\epsilon)\hat{G}^{-1}_{t} - \epsilon_t\hat{G}^{-1}_{t}\nabla f_t(\nabla f_t)^T\hat{G}^{-1}_{t}\]

이 때 $\nabla f = \frac{\partial f}{\partial \theta}$이고, $f_t = f(x_t, \theta_t)$이면서 $\epsilon_t$는 충분히 작은 learning rate이다. 이 식과 다음 gradient descent algorithm을 함께 쓰면 loss를 효율적으로 줄일 수 있다고 주장한다.

\[\theta_{t+1} = \theta_t - \eta_t\hat{G}^{-1}_t \nabla l^{\ast}(x_t,y^{\ast}_t;\theta_t)\]

이렇게 논문은 끝을 맺는다.

내 감상평

2000년에는 어땠을지 모르지만, 2019년이 다 지나가는 입장에서는 크게 임팩트있는 논문은 아닌듯 하다. 이 당시에는 GPU 컴퓨팅의 개념도 없었고, Adam과 같은 성공적인 optimizer도 없었던 시기이기 때문이다. 그냥 재미로 읽어볼 정도의 논문인듯 하다.

This post is licensed under CC BY 4.0 by the author.

선형대수, 통계학, 기하적 직관

Anomaly Detection with GANs