놀랍게도, 의식과 인공지능, 그리고 수학은 접점이 있습니다. 단순히 세 분야가 엮여있다는 말이 아니라, 하나의 수식을 통해 세 분야가 연결되는 지점이 있다는 말이지요. 각 분야에서 이 수식의 해석은 다르지만 기본적으로 공유하고 있는 철학은 동일합니다. 이 수식이 바로 variational inference(VI)에서 등장하는 Free energy, Kullback-Leibler divergence, 그리고 surprise입니다.
먼저 VI의 수식을 유도해 보겠습니다.
먼저, $\log p(x)$를 추론하기(알아내기) 위해 다음과 같은 트릭을 씁시다.
$$ \log p(x) = 1\cdot \log p(x) $$
너무나도 쉬운 수식입니다. 이제, 모든 확률분포는 전체 영역에 대해 적분하면 1이 나온다는 사실을 바탕으로
$$ \begin{align*}\log p(x) &= 1\cdot\log p(x)\\ &=\int_{\Omega}q(z|x)\log p(x)dz \end{align*} $$
라는 수식을 생각해볼 수 있습니다. 여기서 또 한번의 트릭을 쓰면,
$$ \begin{align*}\log p(x) &= 1\cdot\log p(x)\\ &=\int_{\Omega}q(z|x)\log p(x)dz\\ &=\int_{\Omega}q(z|x)\log \bigg(p(x)\frac{q(z|x)}{q(z|x)}\bigg)dz \end{align*} $$
가 되는데, Bayes’ rule을 적용하면 $p(x)=p(x|z)p(z)/p(z|x)$가 되므로 위 식은
$$ \begin{align*}\log p(x) &= 1\cdot\log p(x)\\ &=\int_{\Omega}q(z|x)\log p(x)dx\\ &=\int_{\Omega}q(z|x)\log \bigg(p(x)\frac{q(z|x)}{q(z|x)}\bigg)dz\\ &=\int_{\Omega}q(z|x)\log\bigg(\frac{p(x|z)p(z)}{p(z|x)}\frac{q(z|x)}{q(z|x)}\bigg)dz \end{align*} $$
로 정리할 수 있습니다. $\log$안의 식들을 잘 재분배하면 위 식은
$$ \begin{align*}\log p(x) &= 1\cdot\log p(x)\\ &=\int_{\Omega}q(z|x)\log p(x)dx\\ &=\int_{\Omega}q(z|x)\log \bigg(p(x)\frac{q(z|x)}{q(z|x)}\bigg)dz\\ &=\int_{\Omega}q(z|x)\log\bigg(\frac{p(x|z)p(z)}{p(z|x)}\frac{q(z|x)}{q(z|x)}\bigg)dz\\ &=\int_{\Omega}q(z|x)\log\bigg(\frac{q(z|x)}{p(z|x)}\frac{p(x|z)p(z)}{q(z|x)}\bigg)dz \end{align*} $$
가 될 것입니다. 이제 $\log(ab)=\log a + \log b$라는 성질을 이용하면
$$ \begin{align*}\log p(x) &= 1\cdot\log p(x)\\ &=\int_{\Omega}q(z|x)\log p(x)dx\\ &=\int_{\Omega}q(z|x)\log \bigg(p(x)\frac{q(z|x)}{q(z|x)}\bigg)dz\\ &=\int_{\Omega}q(z|x)\log\bigg(\frac{p(x|z)p(z)}{p(z|x)}\frac{q(z|x)}{q(z|x)}\bigg)dz\\ &=\int_{\Omega}q(z|x)\log\bigg(\frac{q(z|x)}{p(z|x)}\bigg)dz + \int_{\Omega}q(z|x)\log\bigg(\frac{p(x|z)p(z)}{q(z|x)}\bigg)dz \end{align*} $$
가 됩니다. 이것이 variational inference입니다. 위 식은 인공지능을 공부해본 분들이라면 variational autoencoder를 공부하며 한 번쯤 접해보았을 것입니다. 하지만 이 수식이, 즉 수학적인 formulation이 어떻게 의식과 연결되는 것일까요?
다음과 같은 의식의 모델을 생각해 봅시다.
우리는 세상을 관측하고(observation), 그에 맞는 행동(action)을 취합니다. 그런데 이는 지나치게 단순화된 모형이므로, 우리의 사고과정(의식)이 반영되어 있지 않습니다. 따라서 우리의 사고과정을 $x$라고 두고, 세상과 interaction하는 항을 $y$라고 두면, 다음과 같은 모형이 가능할 것입니다.
이 떄 우리가 행동하는 행위를 $u$라고 두고 이것에 세상에 미치는 hidden impact를 $x^{\ast}$로 두었습니다. 이쯤 되면 모델이 큰 문제가 없어 보입니다만, 세상이 우리 마음처럼 돌아가지는 않죠. 이것까지만 모델링해 봅시다.