AI바라기의 인공지능

개념정리 : Score란? with diffusion 본문

인공지능

개념정리 : Score란? with diffusion

AI바라기 2026. 3. 28. 08:22

0. 먼저 큰 그림

우리가 이해하려는 것은

$$s(x)=\nabla_x \log p(x)$$

입니다.

이 식을 제대로 이해하려면, 사실 아래 네 가지가 연결되어야 합니다.

  1. $p(x)$는 정확히 무엇인가
  2. 왜 $\log p(x)$를 쓰는가
  3. $\nabla_x$는 정확히 무엇을 계산하는가
  4. 그래서 $s(x)$는 실제로 무슨 의미를 가지는가

그다음 대표 예시인 가우시안에서 직접 계산해 보면, score의 성격이 아주 선명해집니다.

설명 내내 $x\in\mathbb R^d$라고 생각하겠습니다.

$x$는 하나의 숫자가 아니라, 보통 여러 좌표를 가진 벡터입니다.


1. $p(x)$는 정확히 무엇인가

가장 먼저 정리해야 할 것은, 연속확률변수에서 $p(x)$는 “점 $x$의 확률” 이 아니라는 점입니다.

연속변수 $X$에 대해서는 보통

$$\mathbb{P}(X=x)=0$$

입니다.

그러니 $p(x)$를 “이 점이 나올 확률”이라고 이해하면 곤란합니다.

정확히는 $p(x)$는 확률밀도(probability density)입니다.

$x$ 근처의 아주 작은 영역 $A$에 대해

$$\mathbb{P}(X\in A)\approx p(x)\mathrm{Vol}(A)$$

처럼 해석합니다.

조금 더 직관적으로 말하면,

  • $p(x)$가 크다
  • $x$ 주변에 확률질량이 조밀하게 모여 있다
  • $p(x)$가 작다
  • → 그 근처는 드물다

는 뜻입니다.


왜 이게 score와 연결되나

score는 $p(x)$ 자체를 직접 보지 않고

$$\nabla_x \log p(x)$$

를 봅니다.

즉 단순히 “여기가 얼마나 자주 나오는가”보다,

“여기서 조금 움직였을 때 density가 어느 방향으로 더 커지는가”

를 보는 개념입니다.

그래서 score는 밀도 그 자체보다,

밀도가 공간에서 어떻게 변하는지를 나타내는 양입니다.


작은 주의점

density는 확률과 다르기 때문에, 값이 1보다 클 수도 있습니다.

이건 이상한 일이 아닙니다. 확률은 구간에 대해 적분해서 얻고, density는 그 적분의 “단위 부피당 농도” 같은 것이기 때문입니다.


2. 왜 $\log p(x)$를 보는가

이제 핵심 질문입니다.

왜 그냥 $\nabla_x p(x)$가 아니라

$$\nabla_x \log p(x)$$

를 볼까요?

이건 단순히 “미분하기 편해서”가 아닙니다.

물론 그것도 맞지만, 더 본질적인 이유는 상대적인 변화율을 보기 위해서입니다.


2-1. 체인룰로 바로 나오는 핵심 식

스칼라 함수 $f(x)$에 대해 $\log f(x)$를 미분하면

$$\nabla_x \log f(x)=\frac{1}{f(x)}\nabla_x f(x)$$

입니다.

여기서 $f(x)=p(x)$를 넣으면

$$\nabla_x \log p(x)=\frac{\nabla_x p(x)}{p(x)}$$

가 됩니다.

이 식은 엄청 중요합니다.

왜냐하면 $\nabla_x p(x)$는 “절대적으로 얼마나 변하느냐”를 보지만,

$\nabla_x \log p(x)$는 그걸 $p(x)$로 나누기 때문에

현재 density에 비해 얼마나 빠르게 변하느냐

를 보게 되기 때문입니다.

즉 score는 상대 변화율입니다.


2-2. “상대 변화율”이 실제로 무슨 뜻인가

작은 이동 $\delta\in\mathbb R^d$를 생각해 봅시다.

테일러 1차 전개를 쓰면

$$\log p(x+\delta) \approx \log p(x)+\nabla_x \log p(x)^\top \delta$$

입니다.

여기서 score를 $s(x)$라고 쓰면

$$\log p(x+\delta)-\log p(x)\approx s(x)^\top \delta$$

가 됩니다.

양변을 지수화하면

$$\frac{p(x+\delta)}{p(x)} \approx \exp\big(s(x)^\top\delta\big)$$

입니다.

이 식이 score의 실제 의미를 아주 잘 보여줍니다.

즉 score는

작게 움직였을 때 density의 비율이 어떻게 변하는지

를 알려줍니다.

그냥 “증가한다/감소한다”가 아니라,

  • 어느 방향으로 가면 ratio가 커지는지
  • 그 증가가 얼마나 가파른지

를 알려주는 것입니다.


2-3. 왜 $\log$가 특히 좋은가: 정규화 상수 소거

확률모델은 종종

$$p(x)=\frac{1}{Z}\tilde p(x)$$

처럼 정규화 상수 $Z$를 포함합니다.

여기서 $Z$는 계산하기 어려운 경우가 많습니다.

그런데 log를 취하면

$$\log p(x)=\log \tilde p(x)-\log Z$$

이고, $x$로 미분하면

$$\nabla_x \log p(x)=\nabla_x \log \tilde p(x)$$

가 됩니다.

왜냐하면 $\log Z$$x$와 무관한 상수라서 미분하면 0이기 때문입니다.

즉 score는

정규화 상수를 몰라도 계산할 수 있는 정보

입니다.

이건 뒤에 생성모델에서 특히 강력한 장점이 됩니다.


2-4. 에너지 관점

많은 확률분포를

$$p(x)\propto e^{-E(x)}$$

처럼 쓸 수 있습니다.

그럼

$$\log p(x) = -E(x)+C$$

이므로

$$\nabla_x \log p(x) = -\nabla_x E(x)$$

가 됩니다.

즉 score는

에너지를 감소시키는 방향

입니다.

물리적인 비유를 쓰면, $E(x)$가 높은 곳에서 낮은 곳으로 내려가게 만드는 “힘”에 가깝습니다.

이 관점은 직관적으로도 좋고, 수학적으로도 좋습니다.

  • 높은 density ↔ 낮은 energy
  • score ↔ 낮은 energy 쪽으로 가는 방향

3. $\nabla_x$는 정확히 무엇을 계산하는가

이제 세 번째입니다.

이 부분에서 많은 사람이 “gradient는 가장 빨리 증가하는 방향”이라고 외우기만 하고, 왜 그런지는 놓칩니다.

이번에는 그 이유까지 보겠습니다.


3-1. gradient는 좌표별 편미분을 모아놓은 벡터

함수 $f:\mathbb R^d\to\mathbb R$에 대해

$$\nabla_x f(x) = \begin{pmatrix} \frac{\partial f}{\partial x_1}(x) \\ \vdots \\ \frac{\partial f}{\partial x_d}(x) \end{pmatrix}$$

입니다.

즉 $f(x)$는 스칼라값이고, gradient는 벡터입니다.

우리의 경우 $f(x)=\log p(x)$이므로

$$s(x)=\nabla_x \log p(x)\in\mathbb R^d$$

입니다.

이 말은 곧 score가 공간의 각 점마다 벡터 하나를 붙이는 벡터장(vector field)이라는 뜻입니다.


3-2. 방향미분이란 무엇인가

어떤 방향 $u\in\mathbb R^d$로 함수가 얼마나 변하는지 보고 싶다면 방향미분을 씁니다.

단위벡터 $u$에 대해

$$D_u f(x) := \lim_{h\to 0}\frac{f(x+hu)-f(x)}{h}$$

입니다.

이건 “$x$에서 방향 $u$로 아주 조금 움직였을 때 변화율”입니다.


3-3. 왜 방향미분이 $\nabla f(x)^\top u$가 되나

테일러 1차 전개를 쓰면

$$f(x+hu)\approx f(x)+h \nabla f(x)^\top u$$

입니다.

양변에서 $f(x)$를 빼고 $h$로 나누면

$$\frac{f(x+hu)-f(x)}{h} \approx \nabla f(x)^\top u$$

이고, $h\to 0$ 극한을 취하면

$$D_u f(x)=\nabla f(x)^\top u$$

가 됩니다.

즉 gradient와 방향미분의 관계는 그냥 외우는 공식이 아니라,

1차 근사식에서 바로 나오는 결과입니다.


3-4. 여기서 내적이 왜 나오나

$$\nabla f(x)^\top u$$

는 gradient와 방향 $u$내적(inner product)입니다.

내적은

$$a^\top b = \sum_{i=1}^d a_i b_i$$

이기도 하고, 기하적으로는

$$a^\top b = |a||b|\cos\theta$$

이기도 합니다.

여기서 $\theta$는 두 벡터 사이의 각도입니다.

단위벡터 $u$라면 $|u|=1$이므로

$$\nabla f(x)^\top u = |\nabla f(x)|\cos\theta$$

입니다.

이제 왜 gradient가 “가장 빨리 증가하는 방향”인지가 바로 보입니다.

  • $\theta=0$이면 $\cos\theta=1$
  • → 최대 증가
  • $\theta=\pi$이면 $\cos\theta=-1$
  • → 최대 감소
  • $\theta=\pi/2$이면 $\cos\theta=0$
  • → 1차적으로 변화 없음

즉 gradient는 단지 “증가 방향”이 아니라,

모든 단위방향 중에서 방향미분을 최대화하는 방향

입니다.

그리고 그 최대 변화율의 크기가

$$|\nabla f(x)|$$

입니다.


3-5. score에 적용하면

$f(x)=\log p(x)$이므로

$$D_u \log p(x)=u^\top s(x)$$

입니다.

이건 매우 중요한 문장입니다.

score와 어떤 방향 $u$의 내적은, 그 방향으로 조금 움직였을 때 log-density가 얼마나 변하는지다.

즉 score는 공간 속 화살표이고,

내적은 “그 화살표와 내가 움직이려는 방향이 얼마나 정렬되어 있는가”를 측정합니다.


3-6. 등고선과의 관계

$\log p(x)$가 일정한 점들을 모으면 등고선(level set)이 됩니다.

예를 들어 2차원이라면 contour line처럼 생각할 수 있습니다.

gradient는 항상 그 등고선에 수직입니다.

왜냐하면 등고선 위로는 $f$값이 변하지 않으므로, 등고선 접선 방향 $v$에 대해서는

$$D_v f(x)=\nabla f(x)^\top v = 0$$

이어야 하기 때문입니다.

즉 gradient는 “같은 density를 유지하며 옆으로 가는 방향”이 아니라,

density contour를 가장 가파르게 뚫고 들어가는 방향

입니다.

score도 마찬가지입니다.

score는 density가 가장 빠르게 증가하는 법선 방향입니다.


4. 그래서 $s(x)=\nabla_x\log p(x)$는 실제로 무슨 의미인가

이제 핵심을 모아 보겠습니다.

score는 단순히 “로그밀도의 미분”이라고 끝낼 것이 아니라, 아래처럼 이해해야 합니다.


4-1. score는 분포의 국소적 1차 정보다

$p(x)$ 자체는 분포의 전체 모양을 담고 있습니다.

그런데 score는 그중에서도 현재 점 $x$에서의 국소적(first-order local) 정보를 담습니다.

즉 score는

  • 지금 이 점에서
  • 어느 방향으로 움직여야
  • density가 가장 빠르게 커지는지

를 알려줍니다.

이건 “전역 구조”를 한 번에 주지는 않지만,

다음 한 걸음을 어디로 내딛어야 하는가를 알려주는 정보입니다.


4-2. score는 절대값이 아니라 상대적 기울기다

score는 $p(x)$의 값 그 자체가 아닙니다.

예를 들어 $p(x)$가 아주 큰 점에서도 score가 0일 수 있고,

$p(x)$가 그보다 작아도 score 크기가 클 수 있습니다.

왜냐하면 score는 높이(height)가 아니라 기울기(slope)이기 때문입니다.

산으로 비유하면,

  • $p(x)$ 또는 $\log p(x)$: 지금 내가 해발 몇 미터쯤 있는가
  • score: 여기서 어디로 가면 가장 가파르게 올라가는가

입니다.

높은 곳에 있어도 평평하면 gradient는 0입니다.

낮은 곳에 있어도 급경사면 gradient는 클 수 있습니다.


4-3. score가 0이라는 것은 무슨 뜻인가

$$s(x)=0$$

이면 $\log p(x)$의 1차 변화가 없습니다.

즉 정지점(stationary point)입니다.

하지만 여기서 흔한 오해가 있습니다.

score가 0이라고 해서 무조건 mode는 아닙니다.

  • local maximum일 수도 있고
  • local minimum일 수도 있고
  • saddle point일 수도 있습니다

이걸 구분하려면 2차 미분, 즉 Hessian

$$\nabla_x^2 \log p(x)$$

까지 봐야 합니다.

그래서 score는 1차 정보라는 점을 기억해야 합니다.


4-4. score를 공간 전체에서 알면 분포를 거의 복원할 수 있다

이건 조금 더 전문적인 포인트인데 중요합니다.

gradient는 어떤 스칼라 함수의 변화율입니다.

따라서 score를 전체 공간에서 알고 있으면, $\log p(x)$를 상수항을 제외하고 복원할 수 있습니다.

형식적으로는 기준점 $x_0$에서 $x$까지의 경로 $\gamma$를 따라

$$\log p(x)-\log p(x_0) = \int_\gamma s(z)\cdot dz$$

입니다.

여기서 $s(z)\cdot dz$는 내적입니다.

“작은 이동 $dz$”를 했을 때 log-density가 얼마나 변하는지를 누적해서 합친다고 보면 됩니다.

이 식이 말하는 바는 분명합니다.

score는 local 정보이지만, 전체 공간에서 알면 density를 상수항까지 복원할 수 있다.

즉 score는 분포의 주변 정보가 아니라, 분포 자체를 거의 결정하는 정보입니다.


4-5. 모든 벡터장이 score는 아니다

이것도 중요합니다.

임의의 벡터장 $v(x)$가 있다고 해서 그게 항상 어떤 $\log p(x)$의 gradient는 아닙니다.

score가 되려면 적어도 적절한 매끄러움 조건 아래에서 보존장(conservative field)이어야 합니다.

왜냐하면 gradient field는 경로적분이 경로에 의존하지 않고, 어떤 potential function의 변화량만 주기 때문입니다.

$$s(x)=\nabla_x \log p(x)$$

라는 말은 단순히 벡터를 하나 준다는 뜻이 아니라,

그 벡터장이 실제로 어떤 스칼라 밀도함수의 기울기 구조를 가진다

는 꽤 강한 제약을 포함합니다.


5. 대표 예시: 1차원 가우시안에서 score 직접 계산

이제 score를 가장 잘 보여주는 예시를 보겠습니다.

$$p(x)=\mathcal{N}(x;\mu,\sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(x-\mu)^2}{2\sigma^2} \right)$$

입니다.


5-1. 로그를 취하면 왜 깔끔해지나

$$\log p(x) = \log \left[ \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) \right]$$

로그의 성질 $\log(ab)=\log a+\log b$를 쓰면

$$\log p(x) = \log \frac{1}{\sqrt{2\pi\sigma^2}} + \log \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)$$

$$\log p(x) = -\frac{1}{2}\log(2\pi\sigma^2) - \frac{(x-\mu)^2}{2\sigma^2}$$

입니다.

앞의 항은 $x$와 무관한 상수이므로 $C$라고 쓰면

$$\log p(x)=C-\frac{(x-\mu)^2}{2\sigma^2}$$

가 됩니다.

이제 미분은 사실상 두 번째 항만 보면 됩니다.


5-2. 미분을 천천히 해보자

$$\frac{d}{dx}\log p(x) = \frac{d}{dx} \left( C-\frac{(x-\mu)^2}{2\sigma^2} \right)$$

상수 $C$는 미분하면 0입니다.

따라서

$$\frac{d}{dx}\log p(x) = -\frac{1}{2\sigma^2}\frac{d}{dx}(x-\mu)^2$$

여기서 $\mu$는 상수이므로

$$\frac{d}{dx}(x-\mu)^2 = 2(x-\mu)$$

입니다. 그래서

$$\frac{d}{dx}\log p(x) = -\frac{1}{2\sigma^2}\cdot 2(x-\mu) = -\frac{x-\mu}{\sigma^2}$$

$$s(x)= -\frac{x-\mu}{\sigma^2}$$

입니다.


5-3. 이 식을 어떻게 해석하나

이 식은 정말 중요합니다.

$$s(x)= -\frac{x-\mu}{\sigma^2}$$

먼저 부호를 봅시다.

  • $x>\mu$이면 $x-\mu>0$, 그래서 $s(x)<0$
  • → 왼쪽으로 밀어줍니다
  • $x<\mu$이면 $x-\mu<0$, 그래서 $s(x)>0$
  • → 오른쪽으로 밀어줍니다

즉 항상 평균 $\mu$ 방향입니다.


5-4. 왜 크기가 거리 비례인가

$$|s(x)|=\frac{|x-\mu|}{\sigma^2}$$

이므로 평균에서 멀수록 score의 크기가 커집니다.

이건 당연한 구조입니다.

가우시안은 평균 근처에서 density가 가장 높고, 멀어질수록 density가 빠르게 줄어듭니다.

따라서 멀리 떨어진 점일수록 “다시 고밀도 영역으로 돌아와야 한다”는 신호가 더 강합니다.


5-5. 왜 $\sigma^2$가 분모에 들어가나

이 부분도 의미가 큽니다.

  • $\sigma^2$가 크다→ 평균에서 조금 멀어져도 그렇게 이상하지 않음
  • → score가 약함
  • → 분포가 넓고 퍼져 있음
  • $\sigma^2$가 작다→ 조금만 벗어나도 density가 급격히 줄어듦
  • → score가 강함
  • → 분포가 평균 근처에 빡빡하게 모여 있음

$\sigma^2$는 “얼마나 빡빡한 분포인가”를 나타내고,

score는 그 기하를 정확히 반영합니다.


5-6. 2차 미분까지 보면 더 선명해진다

$$\frac{d^2}{dx^2}\log p(x) = -\frac{1}{\sigma^2}$$

입니다.

항상 음수이므로, $\log p(x)$는 아래로 볼록한 concave 함수입니다.

그래서 $x=\mu$는 진짜 최대점(mode)입니다.

즉 가우시안에서는

  • score가 0인 점이 평균 $\mu$
  • 2차 미분이 음수
  • 따라서 거기가 최대점

이라는 구조가 완벽하게 맞아떨어집니다.


6. 다변수 가우시안에서 왜 $-\Sigma^{-1}(x-\mu)$가 되나

이제 $x\in\mathbb R^d$인 경우를 보겠습니다.

$$p(x)=\mathcal{N}(x;\mu,\Sigma)$$

이면

$$\log p(x) = C-\frac{1}{2} (x-\mu)^\top \Sigma^{-1}(x-\mu)$$

입니다.

여기서 많은 분이 막힙니다.

왜 미분하면

$$\nabla_x \log p(x)= -\Sigma^{-1}(x-\mu)$$

가 될까요?

이걸 천천히 보겠습니다.


6-1. 먼저 이 이차형식이 무엇인가

$$(x-\mu)^\top \Sigma^{-1}(x-\mu)$$

는 스칼라입니다.

행렬곱이지만 최종 결과는 숫자 하나입니다.

이걸 $y=x-\mu$, $A=\Sigma^{-1}$라고 놓으면

$$y^\top A y$$

꼴입니다.

이건 좌표로 쓰면

$$y^\top A y = \sum_{i,j} y_i A_{ij} y_j$$

입니다.


6-2. 왜 gradient가 $(A+A^\top)y$가 되나

각 좌표 $y_k$로 편미분해 봅시다.

$$\frac{\partial}{\partial y_k}\sum_{i,j} y_i A_{ij} y_j$$

에서 $y_k$가 나타나는 경우는 두 가지입니다.

  • $i=k$인 경우
  • $j=k$인 경우

따라서

$$\frac{\partial}{\partial y_k}(y^\top A y) = \sum_j A_{kj} y_j + \sum_i y_i A_{ik}$$

입니다.

이걸 벡터형태로 쓰면

$$\nabla_y (y^\top A y) = (A+A^\top)y$$

가 됩니다.


6-3. 왜 여기서는 $2Ay$가 되나

공분산행렬 $\Sigma$는 대칭행렬이고,

따라서 $\Sigma^{-1}$도 대칭행렬입니다.

$$A^\top = A$$

이므로

$$(A+A^\top)y = 2Ay$$

입니다.

따라서

$$\nabla_y \left(\frac{1}{2} y^\top A y\right)=Ay$$

가 됩니다.

이제 $y=x-\mu$, $A=\Sigma^{-1}$를 다시 넣으면

$$\nabla_x \left[\frac{1}{2} (x-\mu)^\top \Sigma^{-1}(x-\mu)\right] = \Sigma^{-1}(x-\mu)$$

이고, 앞에 마이너스가 있으므로

$$\nabla_x \log p(x)= -\Sigma^{-1}(x-\mu)$$

가 됩니다.


6-4. 이 식의 의미

$$s(x)= -\Sigma^{-1}(x-\mu)$$

1차원 식의 완전한 일반화입니다.

하지만 여기서는 훨씬 더 풍부한 의미가 있습니다.

$\Sigma^{-1}$는 precision matrix인데,

이 행렬은 단순히 “역행렬”이 아니라

어느 방향으로 분포가 얼마나 예민한가

를 나타냅니다.

예를 들어 어떤 방향으로 분산이 작다면, 그 방향으로 조금만 벗어나도 density가 많이 감소합니다.

그래서 $\Sigma^{-1}$는 그 방향 성분을 크게 키웁니다.

즉 score는 단순히 평균으로 향하는 것이 아니라,

분포가 정의하는 자연스러운 기하에 따라 평균 쪽으로 복원하는 벡터

입니다.


6-5. 고유벡터 관점으로 보면 더 명확하다

$$\Sigma = U \Lambda U^\top$$

라고 합시다.

그러면

$$\Sigma^{-1}=U\Lambda^{-1}U^\top$$

입니다.

어떤 점의 편차 $x-\mu$를 고유벡터들 방향으로 분해하면,

  • 분산이 큰 방향 $\lambda_i$에서는 $1/\lambda_i$가 작아서 score가 약하고
  • 분산이 작은 방향에서는 $1/\lambda_i$가 커서 score가 강합니다

즉 분포가 납작하게 압축된 방향으로는 아주 민감하게 반응하고,

넓게 퍼진 방향으로는 덜 민감하게 반응합니다.

이게 score가 단순한 “중심복귀” 이상이라는 뜻입니다.

score는 분포의 방향별 구조를 담고 있습니다.


7. score가 알려주는 것과 알려주지 않는 것

이제 여기서 한 번 정리해 보겠습니다.


score가 알려주는 것

score는 현재 위치에서

$$s(x)=\nabla_x\log p(x)$$

를 통해

  • density가 증가하는 가장 가파른 방향
  • 그 증가의 세기
  • 현재 점 주변의 국소적인 분포 구조

를 알려줍니다.


score가 바로 알려주지 않는 것

반면 score 하나만으로는 즉시

  • $p(x)$의 절대값
  • 멀리 떨어진 다른 mode들의 존재
  • 전역적인 확률질량 배치

를 한눈에 알 수는 없습니다.

왜냐하면 score는 local derivative information이기 때문입니다.

다만 다시 강조하면,

score를 전체 공간에서 안다면 $\log p(x)$를 복원할 수 있으므로,

그때는 사실상 분포 전체를 알게 됩니다.


8. 한 단계 더: 혼합분포에서는 score가 왜 “가중평균”처럼 보이나

이건 조금 더 전문적이지만, score의 의미를 더 또렷하게 보여줍니다.

예를 들어

$$p(x)=\sum_{k=1}^K \pi_k p_k(x)$$

라고 합시다.

그러면

$$\nabla \log p(x) = \frac{\nabla p(x)}{p(x)} = \frac{\sum_k \pi_k \nabla p_k(x)}{\sum_j \pi_j p_j(x)}$$

입니다.

여기서 $\nabla p_k(x)=p_k(x)\nabla\log p_k(x)$를 쓰면

$$\nabla \log p(x) = \sum_k \frac{\pi_k p_k(x)}{\sum_j \pi_j p_j(x)} \nabla\log p_k(x)$$

가 됩니다.

$$s(x)=\sum_k r_k(x) s_k(x)$$

꼴입니다. 여기서

$$r_k(x)=\frac{\pi_k p_k(x)}{\sum_j \pi_j p_j(x)}$$

입니다.

이 $r_k(x)$는 “현재 점 $x$가 component $k$에서 왔을 plausibility”처럼 볼 수 있습니다.

즉 혼합분포의 score는

각 component score들의 단순합이 아니라, 현재 위치에서의 posterior weight로 가중된 평균

입니다.

이 예시는 score가 단순히 “가장 가까운 mode로 가라”가 아니라,

현재 위치에서 어떤 구조들이 얼마나 설득력 있는지를 반영한 방향장이라는 걸 보여줍니다.


9. 지금 단계에서 꼭 머리에 남아야 할 문장

여기까지를 압축해서, score를 다음처럼 이해하면 됩니다.

첫째,

$$p(x)$$

는 점의 확률이 아니라 그 주변의 확률밀도다.

둘째,

$$\log p(x)$$

를 쓰는 이유는 단순 계산편의만이 아니라,

상대적 변화율을 보기 위해서다.

셋째,

$$D_u \log p(x)=u^\top s(x)$$

이므로, score와 방향 $u$내적은 그 방향으로 갈 때 log-density가 얼마나 변하는지를 뜻한다.

넷째, 내적 공식

$$u^\top s(x)=|u||s(x)|\cos\theta$$

때문에 score는 가장 빠른 증가 방향이 된다.

다섯째, 가우시안에서는

$$s(x)= -\Sigma^{-1}(x-\mu)$$

가 되어, score가 분포의 기하를 반영한 복원력으로 해석된다.


10. 가장 압축된 요약

한 줄로 가장 정확하게 말하면,

score는 로그밀도의 gradient이며, 현재 위치에서 밀도를 가장 빠르게 증가시키는 방향과 그 민감도를 나타내는 국소 벡터장이다.

조금 더 풀면,

  • 수학적으로는: $\nabla_x \log p(x)$
  • 기하적으로는: density contour에 수직인 상승방향
  • 해석적으로는: 작은 이동에 대한 density ratio의 1차 정보
  • 물리적으로는: energy를 줄이는 방향
  • 확률적으로는: 분포의 local structure를 담는 신호

입니다.