게시물 목록

Tuesday, December 10, 2019

[Review] Predicting PDE systems with Machine Learning

[리뷰] 기계학습을 통한 편미분방정식 시스템의 예측

1. 논문 소개: Quasi-Newton optimizer를 이용하여 system snapshot을 바탕으로 governing equation의 계수를 fitting하기

  이 문단에서 소개할 문헌([1], arXiv 링크)에서는 Burger's equation, KdV equation, Kuramoto-Shivashinski equation, Nonlinear Schrodinger's equation, Navier-Stokes equation 등의 다양한 편미분방정식에 대하여, governing equation의 꼴을 알고 있는 상황에서 데이터가 주어졌을 때 그 계수를 예측한다.

  보다 구체적으로 서술하자면, 이 논문에서 수행하는 task는 어떤 특정 시각에서의 system의 snapshot에서 수십 개의 data point를 임의 추출하고, 아주 짧은 시간이 지난 후의 snapshot에서 수십 개의 data point를 임의 추출(그 추출 위치가 앞과 같을 필요는 없다)하여 그 둘을 비교함으로써 governing equation의 각 term의 계수를 맞추는 것이다. 그 방식은 target time 근방에서 PDE를 선형 연산자로(비선형 방정식이라면 선형화하여) 표현한 뒤 Gaussian prior를 latent solution으로 설정한 뒤, parameter들을 조절해 가며 error function을 줄여 나가는 방식이다.

  그 결과는 대체로 성공적이다. 여기에서 사용된 optimization method는 deep하지 않은, 비교적 간단한 전통적 machine learning method인 L-BFGS이다. 이는 governing equation의 꼴을 알고 있음으로 인하여 문제의 탐색 범위가 상당히 축소되는 것을 고려했을 때 아주 magical한 결과까지는 아니다.

  그럼에도 불구하고, snapshot의 full data를 사용하는 것이 아니라, 지극히 일부에 해당하는 수십 개의 점들만으로 전체의 dynamics를 적은 오차로 복구해 낼 수 있다는 것은 큰 의의가 있는 것으로 생각된다.

  그러나 한편으로는, Kuramoto-Shivashinski equation과 같이 chaotic한 system의 경우 계수가 아주 약간만 달라도 큰 오차가 발생하기 때문에, long-term evolution을 예측하기는 어렵다는 한계점 또한 존재한다.



2. 논문 소개: Deep Neural Network를 이용하여 governing equation의 꼴을 모를 때 데이터를 바탕으로 시스템의 evolution을 extrapolation하기

  이 문단에서는 위에서 소개한 문헌 [1]과 같은 저자의 후속 논문([2], arXiv 링크)에 대해 소개한다. 이 블로그의 앞선 글(Why is artificial neural network successful?: explanation based on spectral ergodicity)에서 언급하였듯, 비선형의 활성함수를 갖는 인공신경망이란 결국 수많은 동일한 비선형 함수들이 scaling, biasing되고 서로 합성됨으로써 만들어진 하나의 함수일 뿐이며, 어떠한 매우 복잡한 함수를 근사적으로 표현하고자 하는 것이다.

  본 문헌[2]에서도 이러한 관점에서 접근하여, 2개의 신경망을 학습시킴으로써 PDE의 evolution을 예측하고자 한다. 앞선 문헌[1]과의 차이가 있다면, 여기에서는 시스템의 특정 시각 t까지의 솔루션을 알고 있으나 governing equation은 그 계수뿐만 아니라 꼴에 대해서도 알지 못할 때, 특정 시각 t 이후의 솔루션이 어떻게 될지를 extrapolation하여 예측하는 것이다. 탐색 범위 자체가 [1]에 비해 많이 넓을 것이라고 예상해 볼 수 있다.

  먼저, 저자가 제시하는 한 선행 연구에서는 편미분으로 표현되는 가능한 모든 candidate term을 나열해 둔 뒤 그 계수들을 예측한다. 이러한 방법은 결과가 interpretable하다는 점에서 큰 장점이 있으나, (i) numerical differentiation이 제대로 되지 않을 수 있다는 것, (ii) task의 크기가 커짐에 따라 필요한 candidate term의 수가 기하급수적으로 늘어나며, \( \sin( \alpha u(x)) \)와 같은 특수한 꼴의 term이 들어가 있을 경우에는 parameter를 예측하지 못한다는 것 등의 단점이 있다.

  따라서 저자는 솔루션 \( \mathcal{U} \)와, 편미분방정식을 연산자 형태로 간단하게 표현했을 때 그 연산자에 해당하는 \( \mathcal{N} \)라는 두 함수를, universal approximator로서의 neural network로 근사시키는 방법론을 택하기로 한다. 이 때 저자는 솔루션 \( \mathcal{U} \)의 도함수를 구하기 위해 통상적인 numerical differentiation 대신에 automatic differentiation이라는 방법을 도입한다. 이 방법은 우리가 수행하고자 하는 task에 부합하는 동시에, numerical differentiation에 비해 더 적은 data point를 필요로 하기도 한다. 따라서 위 선행 연구의 단점 (i)이 극복된다.

  또한, 편미분방정식에 해당하는 연산자 \( \mathcal{N} \)을 특정한 몇 개의 candidate term들의 조합만으로 표현하고자 시도하기보다는, neural network를 이용하여 근사시킨다면 더욱 넓은 범위를 탐색하게 되므로 general하게 높은 성능을 기대할 수 있다. 이렇게 위 선행 연구의 단점 (ii)이 극복된다.

  이러한 setting 하에서 loss function(error function)을 다음과 같이 정의하고, Tensorflow를 이용하여 학습시킴으로써, 시스템의 특정 시각까지의 evolution system의 future evolution을 predict할 수 있다. 먼저 Deep hidden physics model \(f\)를 \(f = \mathcal{U}_t - \mathcal{N}(t, x, \mathcal{U}, \mathcal{U}_x, \mathcal{U}_{xx}, ...) \)로 정의하면, \(f\)가 0에 가까울수록 주어진 PDE를 정확하게 따르게 된다. 또한 이렇게 학습된 \( \mathcal{U} \)가 실제 training data \( \mathcal{U}^i \)와 가까워야 한다. 만약 두 조건 중 후자만 있다면 overfitting이 발생할 것으로 생각해 볼 수 있다. 결과적으로 loss function을 다음과 같이 정의한다.
\[ \sum_{i=1}^{N}{ ( | \mathcal{U}(t^i, x^i) - \mathcal{U}^i |^2 + |f(t^i, x^i)|^2 ) }\]
이러한 loss function을 줄여 나가는 방식으로 training시키면 \( \mathcal{N}, \mathcal{U} \) 양쪽 모두에 대해 학습이 일어나게 되며, 따라서 system의 evolution에 대한 예측이 가능해진다.

  그 결과는 대체로 성공적이다. 그러나 Kuramoto-Shivashinski equation에 의해 지배되는 system의 경우에는 이러한 방법론으로 제대로 된 학습이 이루어지지 않았으므로 저자는 이를 후속 연구 과제로 남겨두고 있다. 이 equation에 대한 model-free prediction은 reservoir computing을 활용해서 연구한 다른 그룹에 의해 성공적으로 이루어졌다[3].

[1] Raissi, Maziar, and George Em Karniadakis. "Hidden physics models: Machine learning of nonlinear partial differential equations." Journal of Computational Physics 357 (2018): 125-141.

[2] Raissi, Maziar. "Deep hidden physics models: Deep learning of nonlinear partial differential equations." The Journal of Machine Learning Research 19(1), 932-955.

[3] Pathak, Jaideep et al. "Model-free prediction of large spatiotemporally chaotic systems from data: A reservoir computing approach." Physical review letters 120.2 (2018): 024102.

Wednesday, November 27, 2019

Coupled Oscillator and Kuramoto Model

하단에 embed된 Coupled oscillator 및 Kuramoto model에 대한 자료는 2019-2 서울대학교 전기정보공학부 <비선형제어특론(심형보 교수님)> 강좌에서 발표 진행을 위해 정리한 자료로, Francesco Bullo의 책 <Lectures on Network Systems>의 제17 장의 내용을 정리한 결과이다.

(추후 LaTeX documentation 예정)

Tuesday, October 22, 2019

Ensemble Approach of Statistical Mechanics: dealing with a conceptual confusion

통계역학에서의 앙상블 접근: 개념적 혼동의 해소

  물리계는 그 내부 구조에 따라 microstate의 configuration을 다양하게 가질 수 있으며, 그 내부 구조가 복잡할수록(크게 다르지 않은 표현으로, 물리계의 구성 요소의 갯수가 많을수록) 그러한 configuration의 가짓수는 급격하게 증가하게 된다.

  시스템의 구체적인 내부 구조를 잠시 고려하지 않고, 그 configuration에 따라 시스템이 가질 수 있는 energy level 값들에만 집중하여 그것을  \(r\)로 인덱싱하고, 그 에너지 값을 \(E_r\)로 나타내자. 서로 다른 microstate들이 같은 에너지 값을 가질 수 있으므로, 가능한 configuration의 총 수는 가능한 energy level의 갯수보다 더 크게 된다. 에너지 \(E_r\)에 대응되는 microstate의 수를 \(g_r\)로 나타내자.

  이 때, 시스템이 그 microstate configuration에 따라 가질 수 있는 snapshot들의 collection을 생각하되, snapshot들의 평균 에너지가 어떠한 상수 값 \(\mathcal{U}\)으로 고정된다는 constraint를 준 것을 Canonical ensemble(정준 앙상블, 바른틀 앙상블)이라고 한다. 전체 \( \mathcal{N} \)가지의 시스템 snapshot 중에 에너지 \(E_r\)을 갖는 시스템 snapshot의 갯수를 \(n_r\)로 표시할 때, 다음과 같이 쓸 수 있다.
\[ \sum_{r}{n_r} = \mathcal{N} \\
    \sum_{r}{n_r E_r} = \mathcal{N} \mathcal{U} = \mathcal{E} \]
 라그랑주 승수법(Lagrange multiplier method), 혹은 복소 적분과 안장점 근사(saddle point approximation)을 통해 \(n_r\)을 구할 수 있으며 그 결과는 다음과 같다. 여기서 파라미터 \(\beta\)는 \( \beta = 1/k_{B}T \)로서, 물리적으로 온도와 관련이 있는 양이다.
\[ n_r = \frac{g_r e^{-\beta E_r}}{\sum_{r}{g_r e^{-\beta E_r}}}, \mathcal{Z} = \sum_{r}{g_r e^{-\beta E_r}}  \]
  이 때 분모에 들어가는 normalization factor \( \mathcal{Z} \)를 분배 함수(partition function)라고 한다. 이 분배 함수를 involve시킨 몇 개의 technical한 계산을 통해 열역학적 양들을 얻어내는 것이 바로 통계역학이 하는 일이라고 할 수 있겠다. 그 세부는 생략한다.

  이상의 내용을 그림으로 나타내면 다음과 같다. 주지하였다시피 아래의 그림에서 붉은색 체크 표시는 시스템 속 1개의 particle을 의미하는 것이 아니며, 1개의 체크 표시는 시스템 속 각 particle들의 state가 합쳐져서 만드는 combined state 1개를 나타낸다.


fig1. Canonical ensemble의 일반론.


  위 식들에서 \( \mathcal{U} \)는 전술한 것과 같이 시스템의 평균 에너지로서, real world에서 관찰할 수 있는 에너지와 직접적으로 결부될 수 있는 값이다. 반면, 여기에 총 microstate의 가짓수 \( \mathcal{N} \)을 곱한 값인 \( \mathcal{E} = \mathcal{N} \mathcal{U} \)는 당연하게도 매우 unphysical한 값이다. 이는 real world에서 시스템은 매 순간 하나의 snapshot을 보이는 방식으로 존재하지, 결코 잠재적으로 가능한 모든 snapshot들이 각각 나열되어 있는 방식으로 존재하지 않기 때문이다.

이 글에서는 내가 통계역학을 처음 공부하면서 겪었던, 이와 관련된 몇 가지 개념적 혼동에 대해 다룬다. 몇 가지 작은 argument를 놓침으로 인해, 이 부분을 clear하게 이해하기 어려웠다.




  먼저 \(N\)개 기체 입자를 가진 시스템을 예로 들어 보자. 이 시스템에서 각 기체 입자들의 상태에 따라, 전체 시스템이 가질 수 있는 에너지 레벨의 값은 상당히 많을 것이며, 그 에너지 레벨에 assign되는 microstate들의 개수 \(\mathcal{N}\)은 더욱더 많을 것이다(대문자 \(N\)(입자 개수)와, 대문자 필기체 \(\mathcal{N}\)(microstate 개수)의 구분에 주의하라).

이 때 microstate의 개수 \(\mathcal{N}\)은 입자의 개수 \(N\)보다도 훨씬 더 큰 값이다. 단적으로 말해서 입자 \(N\)개 각각이 들어갈 수 있는 phase space 상의 격자가 \( s \)개 만큼 있다면, \(\mathcal{N} = s^N \)의 관계가 성립하여 그 크기는 비교할 수조차 없다.

  그런데, 각각의 입자가 서로 상호작용하지 않아서 독립적일 경우에, 우리는 각각의 입자를 하나의 시스템으로 취급할 수 있다. 원래 시스템을 \(N\)개로 잘개 쪼개는 것이다. 이 경우 문제는 완전히 달라지며, \(N\)개 기체 입자로 된 시스템의 가능한 모든 snapshot \(\mathcal{N}\)개 상에서가 아닌, 기체 입자 1개로 된 시스템의 \(N\)개짜리 copy 상에서  \( p(E) \propto e^{-\beta E} \)가 성립하게 되고, 따라서 Maxwell-Boltzmann 분포가 직접적으로 정당화되게 된다. 이에 대한 언급이 Wikipedia에 있다([1], 링크, Boltzmann distribution (separable system) 부분).

fig2. N개의 (상호작용하지 않는) 기체 입자로 된 시스템을, N개의 single-particle system으로 separate하기.


  쪼개기 전과 후에 문제의 설정이 어떻게 달라지는지를 위와 같이 그림으로 표현해 보았다. 이렇게 separable system에 대한 argument가 선행됨으로써 문제의 설정 자체가 바뀐다는 것을 이해하여야 한다. 이러한 설정에서는 particle 1개가 곧 system 1개이므로, 붉은색 체크 표시 하나가 곧 gas particle 하나를 나타낸다고 할 수 있다(전술하였듯, particle 단위로 separate되지 않은 일반론적인 경우에는 이것은 전혀 사실이 아니다!).




  다음으로는 가장 간단하다고 할 수 있는 2-level system(예를 들어 upward, downward 상태를 가질 수 있는 electron spin)에 대해 살펴보면서 이 문제를 더욱 clear하게 이해하도록 하자. \(N\)개의 서로 상호작용하지 않는 electron으로 된 시스템에서 가능한 모든 snapshot의 가짓수는 \( \mathcal{N} = 2^N \) 개이다.

  통계역학에서 이 문제는 일반적으로 위의 기체 예시에서처럼 separation을 하여, electron 1개로 된 간단한 시스템의 \(N\)개짜리 copy가 있는 상황으로 취급하여 풀이한다. 그 결과, 각 시스템의 평균 에너지 \( \mathcal{U}_1 \)뿐만 아니라, 그 평균 에너지에 \(N\)을 곱한 값 \( N \mathcal{U}_1 \)도 얼마든지 physically meaningful하게 된다. 이는 맨 처음에 \( \mathcal{N} \mathcal{U} = \mathcal{E} \)가 unphysical하다고 했던 것과는 다르다(재차 강조하자면, 대문자 \(N\)(입자 개수)와, 대문자 필기체 \(\mathcal{N}\)(microstate 개수)의 구분에 주의하라).

fig3. N개의 2-level system (after separation) 


  이러한 풀이에서는 위에서 언급한 \( \mathcal{N} = 2^N \)라는 숫자는 딱히 쓰이지 않는다. Electron spin의 moment가 \(\mu\)이고 자기장이 upward \(H\)로 걸려 있을 때 총 평균 에너지는 다음과 같다.
\[ \text{(total energy)} = N\mathcal{U}_1 = - N \mu H \tanh (\beta \mu H) \text{  (physical)} \]
  그렇다면, N개의 electron으로 된 시스템을 1개씩 separation하지 않고, 통째로 취급하여 이 문제를 풀이할 수는 없을까? 어렵지 않게 그렇게 할 수 있다. 그리고 그 결과도 위의 풀이와 일치해야 할 것이다. 이하에 그 풀이를 제시한다.

fig4. N개의 2-level system (before separation)


  이 시스템의 가능한 최소 에너지는 모든 spin이 upward 방향일 때의 \(-N \mu H\)이고, 가능한 최대 에너지는 모든 spin이 downward 방향일 때의 \( +N \mu H\)일 것이다. 그리고 electron 1개의 spin이 뒤집힐 때 총 에너지 값은 \(2 \mu H\)만큼 바뀌므로, 가능한 energy level의 수는 -\(N\)부터 \(N\)까지 2개 간격으로 세어, 총 \( N + 1 \)개이다.

  \(N\)개의 spin 중 \(j\)개가 upward일 때, 시스템의 energy level은 \(E_j = (N - 2j) \mu H \)라고 할 수 있다. 그리고 이러한 configuration의 수는 총 \( _{N} C_{j} \)개이다. Canonical ensemble의 microstate configuration이 \( n_r \propto g_r e^{-\beta E_r} \)임을 고려할 때, 이 시스템의 평균 에너지는 다음과 같이 나타난다.
\[ \mathcal{U}_2 = \frac{ \sum_{j=0}^{N}{\mu H (N-2j) _NC_j e^{-\beta \mu H N} e^{2 \beta \mu H j}}}{ \sum_{j=0}^{N}{ _NC_j e^{-\beta \mu H N} e^{2 \beta \mu H j}} } \]
  이를 binomial theorem을 통해 계산하면 다음과 같다. \( x = e^{2 \beta \mu H j} \)라고 하자. 분자와 분모에 있는 \( e^{-\beta \mu H N} \)를 약분해 준 뒤 분모의 식을 directly evaluate하면 \( (1+x)^N \)이 된다. 다음으로 분자에 있는 식 중 \(N - 2j)\) 항에 분배법칙을 사용하면, 앞쪽의 항은 분모에서와 같은 원리로 \( N \mu H (1+x)^N \)로 된다. 뒤쪽의 항은 조금 더 복잡한데, \( 2 \mu H \sum_{j=0}^{N}{ j _NC_j x} \)에서 \( \Sigma \) 기호 속의 첫 번째 항이 0이 됨을 고려하고 combination들을 factorial을 이용한 정의대로 expand하여 계산해 보면 그 결과는 \(2 N \mu H x (1+x)^{N-1}\)이 된다. 이를 종합하면 다음과 같다.
\[ \mathcal{U}_2 = N \mu H \frac{(1+x)^N - 2x(1+x)^{N-1}}{(1+x)^N} = N \mu H \frac {1 - x}{1 + x} = - N \mu H \tanh (\beta \mu H) \]
  이렇게 풀이한 결과(아래첨자 2)는 앞에서 system을 separation하여 풀이하였을 때(아래첨자 1)와 같은 결과이며, 다음의 관계가 성립한다.
\[ \mathcal{U}_2 = N \mathcal{U}_1 \text{  (physical)} \\
\\ \mathcal{E}_2 = \mathcal{N}\mathcal{U}_2 = 2^N \mathcal{U}_2 \text{  (unphysical)} \]
  이로써, 통계역학의 ensemble approach를 학습하는 과정에서 개인적으로 발생한 개념적 혼동에 대해, system을 각 구성 요소별로 separate해서 보는지의 여부에 따라 문제 상황의 설정이 바뀌는 것 때문에 그러한 혼동이 발생함을 기체 시스템 및 electron spin system의 예시를 통해 살펴보았고, 특히 후자의 경우에서 통상적인 간단한 풀이와 달리 separate되지 않은 상태에서도 동일한 결과가 나온다는 것을 보임으로써 발전된 이해를 도모하였다.


[1] https://en.wikipedia.org/wiki/Canonical_ensemble

Friday, October 11, 2019

[Review] Entropy Production and Information Transfer of Stochastic Dynamical Systems

[리뷰] 확률적 동역학 시스템에서 엔트로피 생성과 정보 전달

0. 개요

  State vector \( \vec{x} \)에 대한 미분방정식으로 표현되는 동역학 시스템(dynamical systems)의 이론은 응용수학의 한 갈래로서 물리학, 그리고 공학에서의 제어 이론(control theory) 등 다양한 분야에 활용된다. 특히 비평형 계를 다루는 비평형 통계물리학에서는 종래의 평형 통계역학에서와 같이 앙상블(ensemble) 접근을 통해 분배 함수(partition function)를 정의하여 물리량들을 유도하는 방법론을 적용하기 어려우므로 noisy term \( \vec{\xi}(t) \) (주로 stationary Ornstein-Uhlenbeck process with zero characteristic time)를 포함하는, 확률변수들의 벡터(random vector) \( \vec{X} \)에 대한 확률미분방정식(SDE)을 적극적으로 활용하여 시스템을 표현하고 해석한다.

  이 게시물에서는 확률미분방정식으로 표현되는 시스템(특히 Langevin 시스템)에서 이 시스템의 솔루션이 가지는 확률분포함수 및 그것이 따르는 Fokker-Planck 방정식 등을 바탕으로 하여 시스템의 엔트로피 생성(entropy production) 및 정보 전달(information transfer) 등을 정량적으로 다루고자 하는 일련의 논문들([1]-[4])을 소개하고, 관련된 몇 가지 이슈에 대해 생각해 본다.


1. 논문 소개: 선형 랑주뱅 시스템에서의 엔트로피 생성

  이 문단에서는 <Entropy production in linear Langevin systems>(Gabriel T. Landi et al., Journal of Physics A: Mathematical and Theoretical, 2013)에 대해 개괄한다([1], arXiv 링크). 이 논문에서는 엔트로피에 대한 물리학적 배경 설명 및 수학적인 전개가 상당히 rigorous하고 충실하게 기술되어 있으므로, 본 문단은 이 게시글 전체를 대표하는 표준적 논의라고 할 수 있다. 논문은 먼저 열역학에 대한 일반적인 논의로 시작한다.

  시스템이 상태 A에서 상태 B로 변화할 때 그러한 변화가 가역적(reversible)이라면, 시스템이 겪는 엔트로피 변화는 \( \Delta S = \int \frac{dQ}{T} \)로 나타내어진다. 반면 이 변화가 비가역적이라면 위의 등식은 성립하지 않으며, 다음과 같은 부등식이 성립한다. 이 때 \( S_{prod} \)가 바로 entropy production으로, 우주 전체에서 기존에는 없다가 새롭게 생성된 만큼의 엔트로피라고 볼 수 있다.
\[ \Delta S - \int \frac{dQ}{T} = S_{prod} \geq 0 \]
  이 식의 양변을 시간 \( \Delta t \)로 나누고 극한을 취해 주면 다음과 같이 된다. 여기서 \( \Pi (t) = \frac{dS_{prod}}{dt} = \frac{dS}{dt} + \frac{d}{dt}\int{\frac{dQ}{T}} \)는 entropy production rate, \( \Phi (t) = \frac{d}{dt} \int{\frac{dQ}{T}} \)는 계에서 외부로의 entropy flux rate가 된다. 위에서 살펴보았듯 비가역성에 기여하는 term은 바로 \( \Pi (t) \)로, 항상 non-negative하다.

\[ \frac{dS_{prod}}{dt} = \frac{dS}{dt} - \frac{d}{dt} \int{\frac{dQ}{T}} \geq 0 \]
이항하면, 
\[ \frac{dS}{dt} = \frac{dS_{prod}}{dt} ( \geq 0) - \frac{d}{dt} \int{\frac{dQ}{T}} = \Pi (t) - \Phi (t) \]

  이렇게 하면 계의 entropy 생성과 출입에 대해 다음과 같이 intuitive한 식을 쓸 수도 있다.
\[ S = \int_{0}^{t}{dt' (\Pi(t') - \Phi(t'))} \]

  한편, 저자는 random vector \( X = (X_1, ... , X_n) \)가 따르는 랑주뱅 방정식(Langevin equation) \( \dot{X} = f(X, t) + B\dot{\xi}(t) \), 그 중에서도 특히 \( f(x, t) = -Ax + b(t) \)인 선형 랑주뱅 방정식과, 그에 대응되는 Fokker-Planck 방정식 \( \frac {\partial P }{ \partial t} = -\frac {\partial g }{ \partial x } \) (단 확률흐름(probability current) \( g(x,t) = f(x, t) P(x, t) - D \frac {\partial P }{ \partial x } (x, t) \))으로써 우리가 관심 있는 시스템을 정의한다.

  여기서 diffusion tensor \(D\)는 \(D = \frac{1}{2} {B} {B^T} \)로 정의되며, \(B\)가 full row rank를 가진다면 \(D\)는 positive definite(그렇지 않다면 positive semi-definite)가 된다. 이 positive definiteness 성질이 이하의 main formalism에서 중요하게 쓰이게 된다.

  다음으로 저자는 시스템에 대한 구체적인 지식 없이도 비가역성과 가역성에 대해 성공적으로 취급할 수 있도록 하기 위한, 본 문헌의 첫 번째 핵심적인 논의를 다음과 같이 clever하게 전개한다. 시스템을 이루는 상태변수들 중에, 시스템에 시간 되짚기(time reversal) 대칭을 시행했을 때 부호가 변하는 상태변수(odd variables), 그렇지 않은 상태변수(even variables)를 구분하기 위해 indicator \( \epsilon_i = \pm 1 \)을 정의한다. 이어서 odd variable끼리, even variable끼리 묶이도록 상태변수들의 순서를 rearrange하여 \(x = {\begin{bmatrix} x_{even} &  x_{odd} \end{bmatrix}}^T \)로 쓰고, 대각행렬 \( E = diag (\epsilon_1, ... , \epsilon_n ) \)를 사용하면 다음과 같이 쓸 수 있다.
\[ Ex = E{\begin{bmatrix} x_{even} &  x_{odd} \end{bmatrix}}^T = {\begin{bmatrix} x_{even} &  -x_{odd} \end{bmatrix}}^T \]

  먼저 주어진 랑주뱅 시스템이 다음과 같이 비가역 부분과 비가역 부분으로 나눠짐에 주목하자.
\[f(x,t) = f^{irr}(x,t) + f^{rev}(x,t) = Ef^{irr}(Ex, t) + (- Ef^{rev}(Ex, t)) \]
  이렇게 하면 확률흐름 \(g\)가 다음과 같이 비가역 부분과 가역 부분으로 나뉘게 되며 두 부분은 매우 주목할 만한 차이가 있다.

\[ g^{irr}(x, t) = f^{irr}(x, t) P(x, t) - D \frac{\partial P}{\partial x}(x, t)
\\ g^{rev}(x, t) = f^{rev}(x, t) P(x, t) \]

  다음으로 저자는 확률적 동역학 시스템의 엔트로피를 정의하는, 본 문헌의 두 번째 핵심적인 논의를 전개한다. 시스템의 엔트로피는 다음과 같이 정의된다.
\[ S = -\int P \log P dx \]
  가능한 상태공간 전체에 대해 \( - P \log P \)를 evaluate해서 적분해 주는, 익숙한 식이다. 여기서 \(P = P(x, t) \)이므로 적분의 결과인 엔트로피 \(S\)는 시간의 함수가 됨에 주목한다. 엔트로피를 시간에 대해 미분해 주되 앞에서 소개한, 시스템의 비가역적 요소와 가역적 요소를 나누어서 생각하는 philosophy를 도입해 주면 다음과 같다.

\[ \frac{dS}{dt} = \int (g^{irr})^T D^{-1} g^{irr} \frac{dx}{P} - \int (g^{irr})^T D^{-1} f^{irr} \frac{dx}{P} \]
  여기서 첫 번째 항의 피적분함수는 quadratic form이고, 앞서 강조하였듯 diffusion tensor D가 정의상 positive (semi-)definite하므로 이 quadratic form은 non-negative하다. 이를 맨 처음의 열역학적 논의와 비교하면 아래의 수식과 같이 결론내릴 수 있다. 이로써, Langevin 방정식(및 대응되는 Fokker-Planck 방정식)으로 기술되는 확률적 동역학 시스템에서의 entropy production과 entropy flux를 explicitly 유도하였다. 

\[ \Pi (t)  =  \int (g^{irr})^T D^{-1} g^{irr} \frac{dx}{P}, \]
\[ \Phi (t) = \int (g^{irr})^T D^{-1} f^{irr} \frac{dx}{P}   \]

  논문의 나머지 부분에서는 entropy production rate \( \Pi (t) \)를 (i) integral fluctuation theorem을 따르며 non-adiabatic한 부분, (ii) integral fluctuation theorem을 따르며 adiabatic한 부분, (iii) integral fluctuation theorem을 따르지 않는 부분으로 나눈다. 다음으로 선형 Langevin 방정식으로 국한하여 논의를 특수화시켜, 행렬과 벡터만을 사용한 선형대수학적 형태로 그러한 각 부분을 표현한다. 이 단계에 이르면 Fokker-Planck 방정식의 해인 확률분포함수 \(P\)가 식에 드러나지 않는다.

  다음으로 저자는 간단한 응용의 시도로서, noise term을 추가해 준 전기 회로(RL, RLC)에 대해 entropy production rate의 각 부분((i), (ii), (iii))을 계산해 본다. 시간이 지남에 따라 inductor L은 asymptotic하게 short처럼 작동하고, capacitor C는 asymptotic하게 open처럼 작동함을 고려할 때 이러한 회로들은 시간이 지남에 따라 단순히 resistive한 회로처럼 작동하면서 일정한 전력을 소비하게 되는데, 이는 논문의 FIG. 1.과 FIG. 2.에서 보듯이 entropy production rate가 asymptotically constant하게 계산되는 것에 의미적으로 부합하는 결과이다. 또한 초반의 transient한 상태에서는 계의 엔트로피도 증가하나, 시간이 무한대로 지남에 따라 asymptotically 도달하는 steady state에서는 계의 엔트로피는 고정되고, 생성되는 엔트로피가 모두 계의 외부로 전달됨을 알 수 있다.




2. 논문 소개: 확률적 동역학 시스템에서의 정보 전달

  이 문단에서는 이차 시스템(2차원 시스템)에서의 변수 간의 정보 전달에 초점을 맞춘 연구 논문 <Information flow within stochastic dynamical systems>(X. San Liang, Physical Review E, 2008)을 소개한다([2], arxiv 링크). 벡터 \( \vec{x} = {\begin{bmatrix} x_1 & x_2 \end{bmatrix}}^T \)와 미분방정식 \( d\vec{x} / dt = f(\vec{x}, t) \)로 표현되는 동역학 시스템에 대하여, 위의 논문 [1]과 동일한 방식으로 joint entropy \(H = -\int \int \rho \log \rho dx_1 dx_2 \)가 정의된다. 여기서, 결정론적 시스템임에도 불구하고 entropy가 정의될 수 있는 이유는, initial condition을 달리함에 따라 서로 다른 무수히 많은 trajectory들이 발생하므로 이들을 모아서 생각할 수 있기 때문이다.

  이 때 joint entropy \(H\)는 다음의 미분방정식을 따름이 알려져 있다.
\[ \frac{dH}{dt} = E[\nabla \cdot f] \]
  그러나 standard Wiener process \(\vec{w}\)를 이용하여 stochasticity가 도입된 확률적 동역학 시스템 \( d\vec{x} = f(\vec{x}, t)dt + B(\vec{x}, t)d\vec{w} \)에서는 위처럼 entropy가 만족하는 미분방정식을 state할 수 있는 elegant form이 없다고 한다(엔트로피의 정의는 같다). 따라서 \(dH_1/dt\)를 evaluate하기 위해 \(\rho\)와 marginal distribution \( \rho_1, \rho_2 \)가 따르는 Fokker-Planck 방정식을 활용해야 한다. 한편, \(x_2\)가 frozen된 조건 하에서의 엔트로피 \(H_{1,2}\)에 대해서는 \(dH_{1,2} / dt\)를 evaluate할 때 Fokker-Planck 방정식으로 할 수 없으며, 보다 fundamental하게 미분의 정의로 돌아가서 계산을 해야 한다. 해당 계산이 이 논문의 첫 번째 핵심적인 논의라고 할 수 있을 것이다.

  이렇게 \(dH_1/dt\)와 \(dH_{1,2} / dt\)를 계산하고 나면, 다음과 같이 정의되는 정보 전달률(rate of information transfer)를 계산할 수 있게 된다. 상태변수 2에서 상태변수 1로의 정보 전달률 \(T_{2 \rightarrow 1}\)는 다음과 같이 정의된다.
\[ T_{2 \rightarrow 1} = \frac{dH_1}{dt} - \frac{dH_{1,2}}{dt} \]
  위에서 evaluate한 엔트로피 표현식을 바탕으로 이를 계산해 주면 다음과 같다(여기서 \(g_{ij}\)는 시스템의 stochastic perturbation을 나타내는 텐서의 각 성분으로, [1]의 diffusion matrix에 해당하는 것이다). 엔트로피를 바탕으로 상태변수들 사이의 정보 전달률을 계산하는 식을 만드는 이 부분이, 본 문헌의 두 번째 핵심적인 논의라고 할 수 있을 것이다. 여기서 연산자 \(E_{i|j}\)는 확률분포 \( \rho_{i|j} \) 위에서 evaluate되는 conditional expectation을 의미한다.
\[ T_{2 \rightarrow 1} = - E_{1|2}[ \frac{\partial(F_1 \rho_1)}{\partial x_1}] + \frac{1}{2} E_{2|1}[ \frac{\partial ^2 ( g_{11} \rho_1 )}{\partial x_1^2} ] \]
\[ T_{1 \rightarrow 2} = - E_{2|1}[ \frac{\partial(F_2 \rho_2)}{\partial x_2}] + \frac{1}{2} E_{1|2}[ \frac{\partial ^2 ( g_{22} \rho_2 )}{\partial x_2^2} ] \]
  이로써 확률적 거동을 하는 이차 시스템에서 각 상태변수 간의 정보 전달률을 정의하고 계산하였다. 이 식에서 발견할 수 있는 몇 가지 흥미로운 aspect를 열거하자면, (i) 만약 시스템의 stochastic perturbation이 변수 \(x_2\)로부터 독립적이라면, \(x_2\)에서 \(x_1\)로의 정보 전달률은 이 시스템과 대응되는 결정론적 시스템의 정보 전달률과 동일하다는 것, (ii) 만약 \(x_1\)의 evolution이 \(x_2\)와 독립적이라면 \(T_{2 \rightarrow 1} = 0\)이라는 것 등이 있다. 이는 정보 전달률이 그 자체로 consistent하고, 그 의미에도 부합하도록 잘 정의된 값이라는 것을 시사한다.

  논문의 FIG. 1.에서는 예시된 간단한 시스템에 대해 동역학의 시늉내기 결과를 보여주는데 여기서 위의 aspect (ii)와도 연관되는 매우 흥미로운 점이 드러난다. 이것은 바로 \(T_{1 \rightarrow 2} \neq 0\)인 반면, \(x_1\)과 \(x_2\)가 서로 거의 똑같은 양상으로 evolve하면서 매우 높은 correlation을 보여줌에도 불구하고, \(T_{2 \rightarrow 1} = 0\)이라는 것이다. 즉, 정보 전달률을 이상과 같이 정의하면 단순한 상관관계 분석만으로는 알 수 없는, 인과관계에 대한 지식이 정량적으로 imply되는 것이 가능하다는 것이다. 이는 수학적으로 보면 conditional probability가 involve되어 있기 때문이라고 생각할 수 있다.



3. 논문 소개: 기타

  이상의 두 논문보다 시기적으로 앞서서 쓰인 <Steady State Thermodynamics of Langevin Systems>(Takahiro Hatano and Shin-ichi Sasa, Physical Review Letters, 2001)에서 역시 stochasticity가 involve된 Langevin 타입의 동역학 시스템에 대하여 Shannon entropy를 위의 두 논문과 정확히 동일하게 정의하고, Jarzynski equality를 바탕으로 이 시스템의 정상상태(steady-state) 열역학을 전개하며, 이러한 formalism은 Crooks의 fluctuation theorem과 consistent하다는 것도 특기된다([3], arXiv 링크).

  한편, 무인 항공기(UAV) 등 기계적 agent들의 동역학을 연구해 온 항공공학자 J. G. Manathara의 <Entropy as a measure of consensus on large networks>(J. G. Manathara, working manuscript, 2013)에서는, \(N\)개의 수많은 agent가 네트워크로 연결되어 있는 multi-agent system(혹은 network system) \( \dot{\vec{x}} = f(\vec{x}) \)에서의 consensus(혹은 synchronization, 각 상태변수들의 값이 서로 일치되는 현상)의 척도로 entropy가 사용될 수 있음을 제시한다. Agent가 충분히 많아서 네트워크의 nodal value들의 distribution \(f(x)\)를 논할 수 있을 경우에, entropy는 다음과 같이 정의된다.
\[ H = - \int f \log f dx \]
  이렇게 정의된 엔트로피는 각각의 agent들의 동역학이 서로 일치될수록 그 값이 작다는 것이 시늉내기를 통해 확인되며, 그 의미상으로도 물리학에서 엔트로피를 무질서도라고 해석하는 것과 일맥상통한다. 따라서 이 양을 consensus의 척도로 사용할 수 있다. 또한 이 양은 기존에 consensus의 척도로 많이 사용되어 온 mean square 타입의 error에 비해서 consensus의 판단에 있어 훨씬 더 엄격하다(문헌의 Figure 1). 즉, mean square error는 시간에 따라 consensus가 달성되는 시스템에서 초반부터 상당히 급격하게 감소하나, entropy는 마치 sigmoid function과 유사한 개형으로, 초반부에는 느리게 감소하다가 후반에 consensus가 많이 달성되면 그 때에야 변곡점을 거치며 민감하게 감소하는 양상을 보인다([4], 저자 홈페이지 링크).

  이외에도 entropy, network dynamics 등의 keyword를 포함하여 인터넷 검색을 해 보면 opinion dynamics 등 다양한 multi-agent dynamical system에 대해 entropy를 정의하여 과학적 탐구 및 공학적 활용을 꾀하는 문헌들이 많이 있음을 알 수 있다.



4. 종합적 고찰: comment on the 'distribution' approach

  동역학 시스템에 대하여 probability distribution으로 접근하는 Fokker-Planck approach는 근본적으로, noisy term이 가지는 stochasticity에 의해 발생하는 가능한 trajectory들을 모두 모아서(이는 평형 통계역학에서의 ensemble approach에 대응된다) 고려하겠다는 것과 동등한 철학이다. 그리고 이상에서 소개한 4개 논문 모두에서, entropy 및 그것으로부터 유도되는 information transfer 등을 정의할 때에 항상 이러한 확률분포의 관점이 채택되고 있음을 확인할 수 있다. 즉, 확률분포의 개념이 들어가 있지 않은, 1개의 sample trajectory만으로는 엔트로피라는 물리량이 제대로 정의되지 않는다. 이는 엔트로피가 근본적으로 통계역학적인 개념인 이유이다.

평형 통계역학에서도 주어진 constraint하에서 가능한 모든 상태들의 configuration에 대한 정보가 주어져야 entropy를 제대로 계산할 수 있으며(\(  S = - \sum_{r}{P_r \log P_r} \)), '계가 지금 \(r = r_1\)이라는 상태에 있다'라는 것을 알려주는 sample snapshot 하나만으로는 엔트로피가 제대로 정의되지 않는다.

그렇다면 자유도가 dramatically reduce되고 fluctuation이 제거되어 결정론적인 trajectory를 따르는 것처럼 보이는 '열역학'에서는 엔트로피라는 값이 어떻게 정의되고 계산될 수 있는 것인가? 대표적으로 일반물리학에서부터 학습하여 잘 알고 있는 이상 기체의 열역학을 생각해 보자.

이 문제를 해결함에 있어서 중요한 것은, 열역학에서는 microstate의 configuration에 따라 발생하는 fluctuation이 '제거된' 적이 없으며, 다만 전체 시스템의 크기에 비해 그 fluctuation이 매우 작아, 확률분포의 deviation이 매우 작을 뿐이라는 것이다. 그러한 상황에서 average dynamics를 따로 정의한 것이 바로 우리가 알고 있는 열역학의 식들이다. 즉 우리는 열역학에서 주로 average dynamics만을 tracking하지만, microstate configuration의 많은 가능성에 따른 deviation은 결코 없어지지 않았으며, (비록 그 상댓값이 매우 작을지언정) 늘 average dynamics와 함께 존재하고 있는 것이다. 그리고 바로 그 configuration의 다양한 가능성으로부터 엔트로피가 정의되고 계산되게 된다.

이 점을 보다 명확히 확인하려면, 준정적 과정(quasi-static process)과, 자유 팽창(free expansion)으로 대표되는 비평형 과정을 비교해 보면 된다. 논문 [1]을 소개하는 문단에서 살펴보았듯, 준정적 과정에서는 \( \Delta S = \int \frac{dQ}{T} \)가 근사적으로 성립하는 반면 자유 팽창과 같은 비평형 과정에서는 좌변이 항상 같거나 크게 되고, 그 차이만큼이 바로 entropy production에 해당한다. 즉 우주에서 기존에 없던 엔트로피가 새로 생겨나는 것이다.

열역학으로 올바르게 기술되는 준정적 과정(이는 자유 팽창과 가열/냉각을 지극히 작은 간격으로, 오랜 시간 간격으로, 지극히 많은 횟수만큼 단계적으로 반복하는 '느리고 답답한' 과정이라고 할 수 있다)에 비해서, 자유 팽창의 경우에는 trajectory의 deviation이 매우 크다. 즉, 처음 상태에서 나중 상태로 갈 때에 가능한 trajectory들의 폭이 매우 넓으므로 그 중간 과정의 average dynamics만을 추적하여 진술하는 것이 크게 의미가 없게 된다. 이러한 경우가 바로 비가역적 과정이며 entropy production이 발생하게 되는 것이다.

- 끝 -



[1] Landi, Gabriel T., Tânia Tomé, and Mário J. De Oliveira. "Entropy production in linear Langevin systems." Journal of Physics A: Mathematical and Theoretical 46.39 (2013): 395001.

[2] San Liang, X. "Information flow within stochastic dynamical systems." Physical Review E 78.3 (2008): 031113.

[3] Hatano, Takahiro, and Shin-ichi Sasa. "Steady-state thermodynamics of Langevin systems." Physical review letters 86.16 (2001): 3463.

[4] Manathara, Joel G., "Entropy as a measure of consensus on large networks.", working manuscript, retrieved from jgmanathara.files.wordpress.com/2013/01/conentpy.pdf (2019.10).


Monday, October 7, 2019

Centrality Measures of Graphs: Mathematics, intuitions, and some notable issues

그래프의 중심성 척도: 수식, 직관, 그리고 몇 가지 주목할 만한 사항들

하단에 Embed된 pdf 파일은 2019-2학기 전기정보공학부의 '비선형제어특론'(심형보 교수님)의 수업을 통해 Francesco Bullo의 책 <Lectures on Network Systems>를 기반으로 하여 제작하게 된 발표자료이다. 그래프(혹은 네트워크)에서 어떤 노드가 구조적으로 중요한 역할을 하는지 측정하기 위한 다양한 지표들(중심성 척도, 중심도)에 대해 공부하여 개략적으로 정리하였고, 가능하다면 응용 사례도 첨부하고자 하였다.

첫째로 가장 기본적이라고 할 수 있는 차수 중심도(Degree centrality)는 각 노드가 몇 개의 간선(edge)을 가지고 있는지 세어 주는 것이다. 복잡 네트워크 과학 분야의 역사적 발달에 있어서, 차수 중심도의 분포가 멱법칙을 띠는 네트워크인 '척도 없는 네트워크'에 대해 A.-L. Barabasi, R. Albert, H. Jeong 등이 수행한 일련의 연구가 중요한 역할을 하기도 하였다.

고윳값 중심도(Eigenvalue centrality)는 특정 노드의 중심성을 평가할 때, 그 주변 노드의 중심성까지 고려하겠다는 철학으로 개발되었다. 각 노드의 중심도를 구하는 방정식이 고윳값 방정식의 형태를 보인다는 점에서 이와 같이 이름붙여진 것 같다. 주변 노드의 개수뿐 아니라, 주변 노드의 중요성 또한 자신의 중요성에 영향을 미치게 된다. 한편 카츠 중심도(Katz centrality)의 경우 차수 중심도와 고윳값 중심도의 특징을 합쳐 놓은 것이라고 할 수 있다.

다음으로 다룰 페이지랭크 중심도(PageRank centrality)는 구글의 창업 기반이 된 것으로 유명하며, 검색 순위 결정을 위해 각 웹 페이지의 유명세를 평가하는 데 사용되었다. 재미있게도 발명자이자 구글 창업자인 래리 페이지(Larry Page)의 이름을 따서 명명된 것이라고 한다. 페이지랭크 중심도의 철학은, (i) 어떤 웹 페이지가 유명한 페이지에게 인용당할수록 더 높게 평가되는 것, (ii) 무차별 수집가(collector, 수많은 페이지를 인용하는 페이지)보다는 세심한 비평가(delicate critic, 적은 수의 페이지만 선별하여 인용하는 페이지)에게 인용당할수록 더 높게 평가되는 것으로 요약될 수 있다.

마지막으로 다룰 Betweenness centrality(BC)closeness centrality(CC)의 가장 큰 특징은, 그 정의상 노드 1개의 중심성을 평가하는 데에 네트워크 전체가 직접적으로 involve되는 것이라고 할 수 있겠다. 네트워크 상에서 정보가 전달된다고 보았을 때, 특정 노드를 대체할 만한 경로가 없어 '병목 현상'이 일어날 경우 그 노드는 큰 BC 값을 가지게 된다.

한편, 네트워크는 spatial embedding을 가지고 있지 않은 구조이지만 노드간의 거리를 통해 대략적인 '지름'를 정의할 수 있는데, CC는 그 척도라고 할 수 있겠다. 어느 노드를 중심으로 CC를 평가하느냐에 따라 지름이 다르게 평가되게 되며, 지름이 작을수록 해당 노드는 전체 네트워크와 밀접하게 연결되어 있다는 뜻이 된다.

Saturday, September 28, 2019

The Postulate of Equal a Priori Probability: In the Sense of Gibbs Entropy Maximization

선험적 동등 확률의 원리: 깁스 엔트로피 최대화의 관점에서

아래의 pdf 파일에서는 별도의 구속조건이 없는(추가적인 정보가 주어지지 않은) 확률변수로 표현되는 시스템에 대하여 깁스 엔트로피(Gibbs entropy)를 최대화하는 확률분포는 확률변수의 가능한 모든 상태에 대해 같은 값을 가지는 분포임을 초등적인 미적분을 통해 증명하였다. 이러한 결과는 통계물리학의 선험적 동등 확률의 원리(Postulate of Equal a Priori Probability)에 부합하며, 정보이론적 함의도 가진다고 할 수 있다.

 

Wednesday, September 25, 2019

Evaluating Eigenvalues of the Adjacency Matrix associated with Cycle Graph

순환 그래프 인접행렬의 고윳값 구하기

Francesco Bullo의 책 <Lectures on Network Systems>의 연습문제 4.18(ii)에서는 순환 그래프(cycle graph)에 대응되는 인접행렬의 고윳값을 구하도록 지시하고 있다. 하단에 embed된 pdf 파일에서는 이 행렬이 circulant matrix의 특수한 경우임에 착안하여 증명을 제시하였다.


Sunday, July 28, 2019

[Review] Why is artificial neural network successful?: explanation based on spectral ergodicity

[리뷰] 인공신경망은 왜 성공적인가?: spectral ergodicity에 근거하여 설명하기

0. 개요

이 게시물에서는 각광받고 있는 최적화 기법인 인공신경망의 원리에 대해 일반론적으로 짧게 개괄한 뒤, 인공신경망의 높은 성능을 이론적으로 설명하고자 하는 가설적 시도로서 무작위 행렬 이론(random matrix theory)를 활용한 논문<Spectral ergodicity in deep learning architectures via surrogate random matrices>(M. Süzen et al., arXiv preprint arXiv:1704.08303, 2017)을 소개한다(arXiv preprint 링크). 논문에 대한 몇가지 코멘트와 함께, 보완된 논의를 제안하고 논문이 가지는 한계점에 대해서도 살펴본다. 관심을 가지고 읽어 주시는 분이 계시다면, 위 링크의 논문과 함께 읽기를 권한다.

1. 신경망 개요

시그모이드(sigmoid), 정류 선형 유닛(Rectified Linear Unit, ReLU) 등의 비선형 활성함수(activation function)를 가지는 인공신경망(artificial neural network)은, 네트워크의 구성 단위인 각 퍼셉트론(perceptron) 간의 연결 강도(weight)들과 바이어스(bias) 값들을 적절하게 선택함으로써 임의의 함수에 대한 보편적 근사기(universal approximator)로 작동한다.

신경망은 주로 그 아키텍쳐가 그림으로 나타내어지기 때문에 다소 생소하게 느껴질 수 있다. 그러나 사실 신경망이란 다름이 아니라, 수많은 똑같은 비선형 함수들이 scaling, biasing되고 서로 합성(고교 교육과정에서 배우는 '함수의 합성'이다)되어 있는 것뿐이라고 할 수 있다.

전기전자공학이나 기계공학 분야에서 제어 이론(control theory)를 공부해 본 사람이라면, 복잡해 보이는 block diagram이 다름이 아니라 결국 한 줄의 미분방정식을 공학적 활용을 위해 도식화시킨 것일 뿐임을 알 수 있을 것인데, 신경망의 도식적 표현도 마찬가지인 것이다.

어찌되었든 우리는 이렇게 표현된 신경망의 각각의 연결 강도 값들을 모아서 행렬로 구성할 수 있는데(주로 층층이 깊게 쌓여진 아키텍쳐를 사용하고(그래서 '딥 러닝'(deep learning)'이다), 이 때 n번째 층에서 n+1번째 층으로 연결되는 연결 강도 값들을 n번째 행렬로 구성하게 된다), 이를 weight matrix라고 부른다. 이렇게 하면 신경망의 최적화 과정(즉 신경망이 표현하는 함수가 우리가 원하는 target 함수에 가까워지도록 만드는 과정)은 곧 weight matrix의 각 성분들을 update하는 과정이 된다.

이러한 update(혹은 training)는 weight 값들을 인자로 받아 한 개의 scalar 값으로 보내는 오차 함수(error 혹은 loss function)을 정의하여, 그러한 오차 함수의 값을 작게 만드는 과정으로 이루어진다(gradient descent와 그 변형인 SGD, RMSprop, Adam 등이 바로 이러한 과정을 잘 수행하기 위한 알고리즘들이다).

이 때 각 성분들을 변화시킴에 따라 오차 함수가 유일한 minimum point를 갖는다는 보장이 없으므로, 출발점(즉 weight matrix의 초기조건)에 따라서, 최적화 과정을 거쳐 도달하는 종착점이 달라질 가능성이 있게 된다. 초기조건을 잘못 설정해 버리면, 오차 함수를 훨씬 더 줄일 수 있는 좋은 종착점이 있음에도 불구하고 그렇지 못한 애매한 종착점에서 멈출 수 있는 것이다.

그러나, 일반적으로 오차 함수에는 대칭성이 아주 많이 존재하여, 우리의 우려에 비해서 상황이 그렇게 나쁘지만은 않다는 것 역시 어느 정도 알려져 있기도 하다[1]. 오차 함수에 수많은 대칭성이 존재하는 이유는, 신경망의 통상적인 architecture상, weight 두 개가 서로 swap되어도 상관없는 경우가 아주 많기 때문이라고 설명될 수 있다.




2. 논문 소개

이 게시물에서 소개할 문헌([2], 위에 링크됨)에서는 (신경망의 weight matrix들의 ensemble에 착안하여) random matrix ensemble의 spectral ergodicity라는 지표를 새롭게 제안하였고, 몇 종류의 유명한 random matrix ensemble(CSE, CUE, COE)에서 matrix size가 커짐에 따라 그 지표가 일관적으로 빠르게 감소함을 전산적으로 시늉내어 확인하였다.

이 결과는, 신경망을 활용한 머신러닝 아키텍쳐에서 layer의 크기가 커질수록 그 layer의 spectral ergodicity가 개선됨을(감소함을) 의미한다. 즉 layer의 크기가 커질수록, 특정한 1개의 training 결과가, 모든 가능한 샘플들에 대한 평균적 결과에서 그리 멀리 떨어져 있지 않게 됨을 시사한다. 이는 신경망을 활용한 최적화가 왜 성공적인지에 대한 가설적인 설명이 될 수 있다고 저자들은 주장한다.

이 논문은 사실 그 이론적 내용상으로만 보면 기계학습(machine learning)과의 직접적인 연관이 있다기보다는, random matrix theory 분야의 꽤나 간단한 실험수학(?) 정도에 해당한다. 그럼에도 불구하고 이 논문을 신경망 아키텍쳐를 활용한 머신러닝과 결부지어 볼 수 있는 근거는, 여기에서 제안한 spectral ergodicity라는 지표가 다름이 아니라 신경망에서 착안된 것이며, 그렇기 때문에 결과적으로 신경망의 성능에 대한 가설적 설명을 제공한다는 것 정도이겠다.




3. 추가적인 코멘트

(1) 보론: 대칭성 논의

위의 문단에서 언급했듯이, 이 논문은 그 내용상 단순히 random matrix ensemble들의 spectral ergodicity를 평가한 것이므로 그 결과를 인공신경망의 성능과 직접 결부짓고자 한다면 보완된 논의가 필요하다. 여기서는 그 근거를 1에서 언급한 대칭성 논의에서 찾아보고자 한다.

이 논문이 인공신경망과 결부되어 의미를 가지려면, 분석에 사용한 random matrix ensemble들에서 각각의 matrix를, 신경망의 weight matrix를 임의의 초기조건에서 출발시켜 training한 결과로서 나온 '종착점'들로 간주할 수 있어야 한다. 그래야만, 임의의 출발점으로부터 training한 결과들이 서로 크게 다르지 않아, 초기조건에 관계없이 이 신경망이 믿을 만한 결과를 준다고 이야기할 수 있기 때문이다. 위의 '1. 신경망 개요'에서, 그러한 종착점들은 주로 상당히 많은 대칭성을 가지고 있다는 것을 이미 설명하였다.

그런데, 이 논문에서 분석에 사용한 3종의 random matrix ensemble들 모두에서, eigenvalue들의 모임의 example을 복소평면에 나타내어 보면 모두 원형 대칭성을 가짐이 확인된다(논문의 FIG. 1.). 따라서, 이 논문에서 사용한 random matrix ensemble들은, 우리가 설명해야 할 인공신경망 training의 종착점들의 집합과 (대칭성을 가진다는 측면에서) 어떤 면에서 분명히 닮아 있음을 알 수 있다.

이상의 보론을 거치면 논문의 실제 내용과 그 신경망에서의 함의 사이에, 보다 덜 비약적인 설명이 가능하다. 다만 여기서 행렬의 eigenvalue 분포의 대칭성이, 행렬의 weight들 사이의 swap symmetry를 비롯한 weight space 상에서의 symmetry와 대응이 잘 되는 개념인지는 초등적인 선형대수학적 감각을 동원하여 직관적으로만 이해해 보았고, 수학적으로 정확한 argument는 제시하지 못하였다.


(2) 에르고딕성의 개념과 관련하여

에르고딕성(ergodicity)이란 통계물리학에서 유래된 개념으로, 어떤 시스템에서 잠재적으로 가능한 모든 trajectory들의 collection에서 특정 물리량의 평균을 구한 것(ensemble average)과, 한 개의 sample trajectory에서 그 물리량의 긴 시간 동안의 평균을 구한 것(time average)가 일치하는 성질을 말한다.  즉, 매우 단순하게 말해서, 한 개의 trajectory만 계속 추적해도 전체 ensemble의 특징을 알 수 있다는 것이다. 여기서 알 수 있듯, ergodicity의 본래적 개념은 시스템에 따라서 성립하거나/성립하지 않는 '성질'(property)이지, 정량화되어 값을 가지는 '지표'(quantitative measure)가 아니다.

그렇다면 이 논문에서는 정량화된 지표를 제시하면서 왜 spectral 'ergodicity'라는 이름을 붙였을까? 이것은 단순히 하나의 sample matrix가 다른 matrix들과(따라서 전체 ensemble과) 크게 다르지 않은 결과를 준다는 결론이, 위에서 서술한 에르고딕성의 개념과 의미상으로 어떤 면에서 유사하기 때문으로 보인다.


(3) 한계점: 그럼에도 불구하고....

이 논문에서는 인공신경망에서 단일 layer의 크기(너비, width)가 클수록 training 결과가 믿을 만함을 이야기하고 있다. 이것이 바로 이 논문의 한계이다. 기계학습 분야에서 널리 알려진 사실은, 인공신경망을 '넓게' 쌓는 것보다는, '깊게', 즉 층층이 쌓을수록 성능이 좋아진다는 것이다(물론 깊게 쌓음에 따라 발생하는 vanishing gradient 등의 문제는 적절한 활성함수의 선택, 배치 정규화(batch normalization) 등을 통해서 해결해야 한다).

그러나 이 논문은 신경망의 깊이에 대해서는 어떠한 논의도 하고 있지 않다. 따라서 이 논문은 인공신경망의 성능에 대한 위의 사실에 비추어 볼 때 묘하게 핀트가 어긋나 있는 면이 있다. 이를 해결하려면 신경망의 깊이에 대한 논의까지 포함할 수 있도록 문제 정의를 확장시켜야 할 것이다.

그러나 각각의 layer는 비선형 활성함수를 통해 연결이 되어 있으므로, 단순히 모든 layer를 포함하도록 weight matrix를 더욱 크게 잡는 정도의 작은 수정만으로 해결이 되기는 쉽지 않아 보인다. 설령 그렇게 한다고 하더라도, 깊이를 키우는 것과 넓이를 키우는 것 사이에 spectral property가 명백한 질적인 차이를 갖도록 matrix를 구성해야 하는데 이것이 가능한지 또한 의문이다. 따라서, 이 논문의 framework와의 연속성을 유지하면서, 신경망의 깊이와 관련된 argument까지 도출해 낼 수 있는 방안을 아직까지는 생각하지 못하였다.




4. 참고 문헌

[1] Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016

[2] Süzen, Mehmet, Cornelius Weber, and Joan J. Cerdà. "Spectral ergodicity in deep learning architectures via surrogate random matrices." arXiv preprint arXiv:1704.08303 (2017).


- 끝 -

Sunday, June 23, 2019

[Review] Scale-free Networks: Historical view

[리뷰] 척도 없는 네트워크: 역사적 조명

  1990년대 후반에서 2000년대 초반 동안에 물리학계에서 급격히 성장한 복잡계 연구, 그 중에서도 복잡 연결망(complex network)에 대한 연구는 비단 물리학 내에서뿐만 아니라 생물학, 공학 등의 인접 분야에도 그 영향을 발휘했으며, <링크> 등의 서적을 통해 대중적으로 널리 알려지기도 했다.

  그 과정에서 가장 주목받은 학자 중 한 명은 (<링크>의 저자이기도 한) 알버트-라슬로 바라바시(Albert-Laszlo Barabasi)일 것이다. 그는 1999년부터 2000년대 초중반의 기간 동안 레카 알버트(Reka Albert), 정하웅(Hawoong Jeong) 등의 학자와 공동으로, 다양한 실제 시스템에서 관찰되는 '척도 없는 네트워크'(scale-free network), 그리고 그러한 네트워크를 절차적으로 생성하는 무작위성을 가진 수학적 모형인 '바라바시-알버트 모형'(Barabasi-Albert model, BA model)과 관련된 일련의 유명한 논문들을 발표하였다([1]-[4]).

  이러한 일련의 논문들을 통해 척도 없는 네트워크는 그 이론적 특성의 골자가 정리되면서 대표적인 네트워크 모델로 확립되었고, 해당 논문들 중 많은 수가 2019년 현재를 기준으로 각각 수천 회 이상의 높은 인용(citation) 횟수들을 보이면서, 해당 연구 패러다임이 복잡계 과학의 발전에 주도적인 역할을 하였음을 증언하고 있다.

  조금 더 구체적으로 살펴보자면, 월드 와이드 웹(World-Wide Web)을 복잡 네트워크로 간주하고 분석하여 그 척도 없는 성질(scale-free property), 그리고 웹 문서간 거리의 가까움을 밝힌 1999년도의 논문[1]을 해당 패러다임의 시작점으로 볼 수 있다. 척도 없는 성질이라고 함은, 연결선 수의 분포 \(P(k)\)가 다음과 같이 \(2 < \gamma < 3\)인 멱법칙(power law)을 따름을 의미한다.
\[ P(k) \propto k^{-\gamma} \]

  다음으로, 척도 없는 네트워크를 절차적으로 생성해 낼 수 있는 바라바시-알버트 모형이 같은 해에 제안되었다[2]. 점이 하나씩 추가되어 기존의 네트워크에 연결되는 방식으로 성장(growth)하는 네트워크에서 선호성 붙임(preferential attachment, 부익부 규칙이라고도 함)을 규칙으로 삼을 때 척도 없는 성질이 나타난다는 것을 해석적으로 밝힌 이 논문은 2019년 현재를 기준으로 3만 회 이상의 매우 높은 인용 횟수를 나타내는 등, 역사적으로 중요한 의미를 가진다고 간주된다.

  [3]에서는 네트워크에 새로운 node가 추가되어 growth가 일어나는 것을 미분방정식으로 나타냄으로써, 바라바시-알버트 모형에 의해 생성되는 네트워크가 가지는 scale-free property에 대한 해석적인 설명이 제공된다. 논문 제목에 mean-field가 언급되고 있는데, 내용 상으로 보았을 때 mean-field approximation이 일어난 부분은 바로 바라바시-알버트 규칙에 의해 정해지는 a priori probability와, 실제 생성된 네트워크에서의 frequency가 같다고 가정함으로써, 생성될 수 있는 네트워크의 variation을 없앤 부분일 것이다. 이렇게 함으로써 모든 네트워크를 고려하는 것이 아니라 마치 '1개의 평균적인 네트워크'를 고려하는 것처럼 논의를 전개할 수 있게 된다.

  이렇게 1999년을 기점으로 학계에 알려진 척도 없는 네트워크는 2000년대에 접어들면서 더욱 많은 학자들에 의하여 더욱 활발하게 이론적으로 연구되어 그 특성이 정리됨과 동시에 실제 시스템에 대한 분석의 틀로도 활발히 적용되었으며, 특히 생물학 분야에의 적용이 두드러졌다. 효모의 단백질-단백질 상호작용 네트워크를 연구한 논문[4]에 수록된 아래의 도식은, 네트워크 과학 분야에 관심을 가지고 찾아본 사람이라면 종종 보았을, 꽤나 상징적인 도식이기도 하다.

  이러한 과정을 거치면서 발달된 척도 없는 네트워크 모형은, 비슷한 시기인 1998년에 제안되어 역시 많은 주목을 받은 왓츠(Duncan Watts)와 스트로가츠(Steven H. Strogatz)의 좁은 세상 네트워크(small-world network) 모형, 1950-60년대에 수학계에서 제안된 전통 있는 무작위 네트워크 모형인 에르되시-레니(Erdos-Renyi) 모형 등과 함께 복잡계 과학의 한 축을 이끌어 왔다고 볼 수 있을 것이다.

[1] R. Albert, H. Jeong, A.-L. Barabasi, 'Diameter of the world-wide web', 1999.09.

[2] A.-L. Barabasi, R. Albert, 'Emergence of scaling in random networks', 1999.10.

[3] A.-L. Barabasi, R. Albert, H. Jeong, 'Mean-field theory for scale-free random networks', 1999.10.

[4] H. Jeong, S. P. Mason, A.-L. Barabasi, Z. N. Oltvai, 'Lethality and centrality in protein networks', 2001.05.