Vision Language Models (VLM)의 수학적 기초

Yechan Seo·2025년 2월 10일

Study

목록 보기
19/21
post-thumbnail

Vision-Language Models (VLM)의 기초

  • 본 문서는 2024년 서울대학교 수리과학부에서 Ernest K. Ryu 교수님께서 진행하신 Vision Language Models (VLM) (Generative AI and Foundation Models - Spring 2024) 강의 내용을 정리한 것입니다.

1. CLIP (Contrastive Language-Image Pretraining)

CLIP 모델은 이미지-캡션 쌍 (Xi,Ci)(X_i, C_i)을 이용하여 훈련됩니다.

  • 이미지 인코더: fθ:XRdf_{\theta}: \mathcal{X} \to \mathbb{R}^d

  • 텍스트 인코더: gϕ:CRdg_{\phi}: \mathcal{C} \to \mathbb{R}^d

    • 목적함수:
    fθ(X)gϕ(C)>0(X와 C가 연관될 때)f_{\theta}(X) \cdot g_{\phi}(C) > 0 \quad \text{(X와 C가 연관될 때)}
    fθ(X)gϕ(C)<0(X와 C가 무관할 때)f_{\theta}(X) \cdot g_{\phi}(C) < 0 \quad \text{(X와 C가 무관할 때)}

(cf. Rd\mathbb{R}^d: 잠재공간)

1.1 InfoNCE 손실 함수

InfoNCE (Noise Contrastive Estimation) 손실 함수는 다음과 같이 정의됩니다:

LNCE=1Ni=1Nlogef(Xi,Yi)1Nj=1Nef(Xi,Yj)\mathcal{L}_{NCE} = - \frac{1}{N} \sum_{i=1}^N \log \frac{e^{f(X_i, Y_i)}}{\frac{1}{N} \sum_{j=1}^N e^{f(X_i, Y_j)}}

손실 함수는 다음과 같은 방식으로 해석할 수 있습니다:

  • 분자 ef(Xi,Yi)e^{f(X_i, Y_i)}: ii-번째 데이터 쌍 (Xi,Yi)(X_i, Y_i)가 서로 연관될 때의 유사도 점수를 나타냄.

  • 분모 1Nj=1Nef(Xi,Yj)\frac{1}{N} \sum_{j=1}^N e^{f(X_i, Y_j)}: XiX_i와 모든 YjY_j (정답 및 오답 포함)의 유사도 점수 합의 평균.

    • 이 함수는 기준 샘플 ii에 대해 정답 쌍 (Xi,Yi)(X_i, Y_i)의 유사도를 최대화하고, 다른 샘플 YjY_j와의 유사도를 최소화하도록 학습
  • f: 유사도 예시

    • f(X,Y)=XYf(X, Y) = X \cdot Y
    • f(X,Y)=XYXYf(X, Y) = \frac{X \cdot Y}{\|X\| \|Y\|}
    • f(X,Y)=logp(X,Y)pX(X)pY(Y)+constantf(X, Y) = \log \frac{p(X, Y)}{p_X(X)p_Y(Y)} + \text{constant}

1.1.1 InfoNCE의 간소화된 정의

InfoNCE 손실은 다음과 같이 간소화될 수 있습니다:

LNCE=i=1Nlogef(Xi,Yi)j=1Nef(Xi,Yj)\mathcal{L}_{NCE} = \sum_{i=1}^N \log \frac{e^{f(X_i, Y_i)}}{\sum_{j=1}^N e^{f(X_i, Y_j)}}
  • 이는 상수 계수 1N\frac{1}{N} 및 상수 항 logN\log N 만큼의 차이를 제외하면 동일한 손실 함수

1.1.2 InfoNCE의 역할

  • 기준 샘플 ii: 학습 중 현재 선택된 데이터 샘플.
  • 비교 대상 샘플 jj: 전체 데이터셋에서 모든 샘플을 포함 (정답 쌍 j=ij = i 및 오답 쌍 jij \neq i).
  • 손실 함수는 모델이 정답 쌍 ((X_i, Y_i))의 유사도를 더 높이고, 오답 쌍 ((X_i, Y_j))의 유사도를 낮추도록 학습을 유도합니다.

2. Mutual Information (MI)와 InfoNCE

MI는 두 확률변수 X,YX, Y의 상호 정보를 나타내며, 다음과 같이 정의됩니다:

I(X;Y)=p(x,y)logp(x,y)pX(x)pY(y)dxdyI(X;Y) = \int p(x, y) \log \frac{p(x, y)}{p_X(x) p_Y(y)} dx dy

2.1 MI와 InfoNCE의 관계

MILNCEMI \geq \mathcal{L}_{NCE}
  • 이 정리는 변분 바운드(Variational Bound)를 이용하여 증명됩니다.

2.1.1 대략적인 증명 flow (증명은 생략)

  1. p(x,y)p(x, y), q(xy)q(x|y)를 정의
  2. Jensens's inequality을 적용하여 바운드를 얻음
  3. logxx/e\log x \leq x/e를 활용하여 추가적인 근사

2.2 최적화

Theorem

LNCEI(X;Y)as N\mathcal{L}_{NCE} \to I(X; Y) \quad\text{as } N \to \infty

즉, NN이 충분히 크면 InfoNCE 손실 함수를 통해 mutual information을 정확히 근사할 수 있음

[Proof]

Let f(x,y)=logp(x,y)pX(x)pY(y)+constant\text{Let } f_*(x, y) = \log \frac{p(x, y)}{p_X(x)p_Y(y)} + \text{constant}
WTS: LNCEI(X;Y)as N\text{WTS: }\mathcal{L}_{NCE} \to I(X; Y) \quad \text{as } N \to \infty
LNCE=1Ni=1Nlogef(Xi,Yi)1Nj=1Nef(Xi,Yj)\mathcal{L}_{NCE} = \frac{1}{N} \sum_{i=1}^N \log \frac{e^{f_*(X_i, Y_i)}}{\frac{1}{N} \sum_{j=1}^N e^{f_*(X_i, Y_j)}}
  • 분모를 따로 계산하면,
    1Nj=1Nef(Xi,Yj)=econstant1Nj=1Np(Xi,Yj)pX(Xi)pY(Yj)\frac{1}{N} \sum_{j=1}^N e^{f_*(X_i, Y_j)} = e^{\text{constant}} \frac{1}{N} \sum_{j=1}^N \frac{p(X_i, Y_j)}{p_X(X_i)p_Y(Y_j)}
    =econstant(1Np(Xi,Yi)pX(Xi)pY(Yi)+1Njip(Xi,Yj)pX(Xi)pY(Yj))=e^{\text{constant}} \left(\frac{1}{N} \frac{p(X_i, Y_i)}{p_X(X_i)p_Y(Y_i)} + \frac{1}{N} \sum_{j \neq i} \frac{p(X_i, Y_j)}{p_X(X_i)p_Y(Y_j)} \right)
    =O(1/N)+econstantN1N1N1jip(Xi,Yj)pX(Xi)pY(Yj)= \mathcal{O}(1/N) + e^{\text{constant}} \frac{N - 1}{N} \frac{1}{N - 1} \sum_{j \neq i} \frac{p(X_i, Y_j)}{p_X(X_i)p_Y(Y_j)}
    econstantEXpX,YpY[p(X,Y)pX(X)pY(Y)](as N)\to e^{\text{constant}} \mathbb{E}_{X \sim p_X, Y \sim p_Y} \left[ \frac{p(X, Y)}{p_X(X)p_Y(Y)} \right] (\text{as } N \to \infty)
econstantEXpX,YpY[p(X,Y)pX(X)pY(Y)]\approx e^{\text{constant}} \mathbb{E}_{X \sim p_X, Y \sim p_Y} \left[ \frac{p(X, Y)}{p_X(X)p_Y(Y)} \right]
=econstantxyp(x,y)dxdy= e^{\text{constant}} \int_x \int_y p(x, y) dx dy
  • 최종적으로, 다음과 같이 정리됩니다:
LNCE=1Ni=1Nlogef(Xi,Yi)1Nj=1Nef(Xi,Yj)\mathcal{L}_{NCE} = \frac{1}{N} \sum_{i=1}^N \log \frac{e^{f_*(X_i, Y_i)}}{\frac{1}{N} \sum_{j=1}^N e^{f_*(X_i, Y_j)}}
1Ni=1Nlogp(Xi,Yi)pX(Xi)pY(Yi)\approx \frac{1}{N} \sum_{i=1}^N \log \frac{p(X_i, Y_i)}{p_X(X_i)p_Y(Y_i)}
E(X,Y)p[logp(X,Y)pX(X)pY(Y)]\approx \mathbb{E}_{(X, Y) \sim p} \left[ \log \frac{p(X, Y)}{p_X(X)p_Y(Y)} \right]
=I(X;Y)= I(X; Y)
Thus, the proof is complete. \text{Thus, the proof is complete. } \blacksquare

3. InfoNCE loss와 Cross Entropy loss

  • InfoNCE loss는 다중 클래스 classification task에서 Cross Entropy (CE) loss과 동일한 구조를 가짐.

  • InfoNCE loss의 각 항 NCE(Y:,Xi)\ell_{NCE}(Y_: , X_i)를 다음과 같이 정의

    LNCE=i=1Nlogef(Xi,Yi)j=1Nef(Xi,Yj)\mathcal{L}_{NCE} = \sum_{i=1}^N \log \frac{e^{f(X_i, Y_i)}}{\sum_{j=1}^N e^{f(X_i, Y_j)}}
    NCE(Y:,Xi)=logef(Xi,Yi)j=1Nef(Xi,Yj)\ell_{NCE}(Y_: , X_i) = \log \frac{e^{f(X_i, Y_i)}}{\sum_{j=1}^N e^{f(X_i, Y_j)}}
  • 각 항목 NCE(Y:,Xi)\ell_{NCE}(Y_: , X_i)XiX_iNN개의 클래스로 분류하는 cross entropy 손실로 볼 수 있음.
P(class of Xi=j)ef(Xi,Yj)P(\text{class of } X_i = j) \propto e^{f(X_i, Y_j)}
CE(F(x),i)=logexp(Fi(x))j=1kexp(Fj(x))\ell_{CE}(F(x), i) = -\log \frac{\exp(F_i(x))}{\sum_{j=1}^k \exp(F_j(x))}
  • F: model의 pre-softmax 출력

    F(x;Y)=(f(x,Y1),f(x,Y2),,f(x,YN))F(x; Y) = \left(f(x, Y_1), f(x, Y_2), \ldots, f(x, Y_N)\right)
  • 따라서, 결론적으로,

    CE(F(x),i)=logeFi(x)j=1keFj(x)\ell_{CE}(F(x), i) = -\log \frac{e^{F_i(x)}}{\sum_{j=1}^{k} e^{F_j(x)}}
    Thus, the proof is complete. \text{Thus, the proof is complete. } \blacksquare

4. CLIP과 Mutual Information 근사

  • CLIP은 MI를 근사하여 이미지와 텍스트를 동일한 잠재 공간(Rd\mathbb{R}^d)에 매핑.
  • 데이터 처리 불평등(Data Processing Inequality)에 의해 MI의 하한을 얻음.

4.1 InfoNCE 손실 함수

:

CLIP 학습은 다음 InfoNCE (Noise Contrastive Estimation) loss를 최대화:

CLIP Loss Definition

LNCE(θ,ϕ)=1Ni=1Nlogexp(fθ(Xi)gϕ(Ci)/τ)1Nj=1Nexp(fθ(Xi)gϕ(Cj)/τ)+1Ni=1Nlogexp(fθ(Xi)gϕ(Ci)/τ)1Nj=1Nexp(fθ(Xj)gϕ(Ci)/τ)\mathcal{L}_{NCE}(\theta, \phi) = \frac{1}{N} \sum_{i=1}^N \log \frac{\exp(f_{\theta}(X_i) \cdot g_{\phi}(C_i) / \tau)}{\frac{1}{N} \sum_{j=1}^N \exp(f_{\theta}(X_i) \cdot g_{\phi}(C_j) / \tau)} + \frac{1}{N} \sum_{i=1}^N \log \frac{\exp(f_{\theta}(X_i) \cdot g_{\phi}(C_i) / \tau)}{\frac{1}{N} \sum_{j=1}^N \exp(f_{\theta}(X_j) \cdot g_{\phi}(C_i) / \tau)}

Thus,

LNCE(θ,ϕ)i=1Nlogexp(fθ(Xi)gϕ(Ci)/τ)j=1Nexp(fθ(Xi)gϕ(Cj)/τ)+i=1Nlogexp(fθ(Xi)gϕ(Ci)/τ)j=1Nexp(fθ(Xj)gϕ(Ci)/τ)\mathcal{L}_{NCE}(\theta, \phi) \approx \sum_{i=1}^N \log \frac{\exp(f_{\theta}(X_i) \cdot g_{\phi}(C_i) / \tau)}{\sum_{j=1}^N \exp(f_{\theta}(X_i) \cdot g_{\phi}(C_j) / \tau)} + \sum_{i=1}^N \log \frac{\exp(f_{\theta}(X_i) \cdot g_{\phi}(C_i) / \tau)}{\sum_{j=1}^N \exp(f_{\theta}(X_j) \cdot g_{\phi}(C_i) / \tau)}

여기서:

  • fθ(Xi)f_{\theta}(X_i): 이미지 XiX_i의 embedding vector

  • gϕ(Cj)g_{\phi}(C_j): 텍스트 CjC_j의 embedding vector

  • τ\tau: 온도 매개변수(Temperature Parameter)

    • τ0\tau \to 0 \quad \Rightarrow 분포가 sharper해지며, 가장 큰 유사도 값에 더 높은 확률을 할당.

    • τ\tau \to \infty \quad \Rightarrow 분포가 smoother해지며, 확률이 고르게 분산.

  • cf. CLIP에서 InfoNCE 손실 함수를 두 번 정의하는 이유는?
    • 텍스트-이미지 간 대칭성(symmetry)을 고려하여 양방향으로 유사성을 학습하기 위함(이미지에서 텍스트로, 텍스트에서 이미지로)

4.2 CLIP과 Mutual Information 근사

CLIP은 Mutual Information (MI)을 근사하여 학습됩니다.

4.2.1 Mutual Information 정의

Mutual Information은 다음과 같이 정의됩니다:

I(X;C)=p(x,c)logp(x,c)pX(x)pC(c)dxdcI(X; C) = \int p(x, c) \log \frac{p(x, c)}{p_X(x)p_C(c)} dx dc

4.2.2 CLIP에서의 MI 근사

  • CLIP은 임베딩 벡터 fθ(X)f_{\theta}(X)gϕ(C)g_{\phi}(C)를 학습하여, 두 벡터의 내적 fθ(X)gϕ(C)f_{\theta}(X) \cdot g_{\phi}(C)가:
    • XXCC가 연관될 때 최대화.
    • 연관되지 않을 때 최소화되도록 합니다.

데이터 처리 부등식(Data Processing Inequality)에 따르면:

I(X;C)I(fθ(X);C)I(fθ(X);gϕ(C))I(X; C) \geq I(f_{\theta}(X); C) \geq I(f_{\theta}(X); g_{\phi}(C))

이 부등식은 CLIP 모델이 Mutual Information의 하한을 학습한다는 것을 보여줍니다.

4.3 InfoNCE와 MI의 관계

이전 분석에 따르면 다음이 성립합니다:

I(X;C)E[LNCE]=I(fθ(X);gϕ(C))12LNCEI(X; C) \geq \mathbb{E}[\mathcal{L}_{NCE}]=I(f_{\theta}(X); g_{\phi}(C)) \geq \frac{1}{2} \mathcal{L}_{NCE}
  • NN \to \infty일 때, I(X;C)=12LNCEI(X; C) = \frac{1}{2} \mathcal{L}_{NCE}의 상한에 도달

또한, 최적의 임베딩 함수 fθ(X)f_{\theta}^*(X)gϕ(C)g_{\phi}^*(C)는 다음과 같이 표현됩니다:

fθ(X)gϕ(C)+constant=τlogp(X,C)p(X)p(C)=τlogp(CX)τlogp(C)f_{\theta}^*(X) \cdot g_{\phi}^*(C) + \text{constant} = \tau \log \frac{p(X, C)}{p(X)p(C)} = \tau \log p(C | X) - \tau \log p(C)
  • (이는 Mutual Information의 직접적인 근사로 볼 수 있음)

5. CLIP의 이론적 기반: Joint Embedding의 보편성 (Universality of Joint Embeddings)

  • 임의의 함수 h(X,C)h(X, C)를 근사하는 embedding fθ(X),gϕ(C)f_\theta(X), g_\phi(C)를 찾을 수 있는가?
    • dd \to \infty일 때 보편 근사 (Universal Approximation) 가능.

5.1 Universality of Joint Embeddings의 정의 및 배경

  1. X\mathcal{X}Y\mathcal{Y}는 국소 콤팩트 하우스도르프(LCH, Locally Compact Hausdorff) 공간이다.

    • X\mathcal{X}: 이미지 공간 (보통 Rn\mathbb{R}^n으로 표현).
    • Y\mathcal{Y}: 문장 공간 (이산 공간 V\mathcal{V}^*로 표현).
  2. FC(X;R)\mathcal{F} \subset C(\mathcal{X}; \mathbb{R}), GC(Y;R)\mathcal{G} \subset C(\mathcal{Y}; \mathbb{R})는 각각 X\mathcal{X}Y\mathcal{Y}에서 정의된 연속 함수의 벡터 공간에서 조밀한 부분 공간(dense sub-vector space)이다.


5.2 Stone-Weierstrass 정리

Stone-Weierstrass 정리에 따르면, 다음 집합은 C(X×Y;R)\mathcal{C}(\mathcal{X} \times \mathcal{Y}; \mathbb{R})에서 균등 수렴 위상(uniform convergence topology) 하에 조밀하다:

{k=1dfk(x)gk(y) | fkF,gkG,dN}C(X×Y;R).\left\{ \sum_{k=1}^d f_k(x)g_k(y) \ \middle| \ f_k \in \mathcal{F}, g_k \in \mathcal{G}, d \in \mathbb{N} \right\} \subset C(\mathcal{X} \times \mathcal{Y}; \mathbb{R}).

따라서, X×Y\mathcal{X} \times \mathcal{Y}에서 정의된 임의의 연속 함수 h(x,y)h(x, y)는 충분히 큰 dd에 대해:

h(x,y)k=1dfk(x)gk(y),h(x, y) \approx \sum_{k=1}^d f_k(x)g_k(y),

형태로 근사 가능.


5.3 Hilbert 공간에서의 보편성

Hilbert 공간 L2(X;R)L^2(\mathcal{X}; \mathbb{R})L2(Y;R)L^2(\mathcal{Y}; \mathbb{R})가 분리 가능(separable)할 때:

L2(X;R)L2(Y;R)=L2(X×Y;R),L^2(\mathcal{X}; \mathbb{R}) \otimes L^2(\mathcal{Y}; \mathbb{R}) = L^2(\mathcal{X} \times \mathcal{Y}; \mathbb{R}),

다음 집합은 조밀하다:

{k=1dfk(x)gk(y) | fkL2(X;R),gkL2(Y;R),dN}L2(X×Y;R).\left\{ \sum_{k=1}^d f_k(x)g_k(y) \ \middle| \ f_k \in L^2(\mathcal{X}; \mathbb{R}), g_k \in L^2(\mathcal{Y}; \mathbb{R}), d \in \mathbb{N} \right\} \subset L^2(\mathcal{X} \times \mathcal{Y}; \mathbb{R}).

즉, hθ,ϕ(x,y)=fθ(x)gϕ(y)h_{\theta, \phi}(x, y) = f_{\theta}(x) \cdot g_{\phi}(y)dd \to \infty일 때 보편 근사기로 작동한다.


5.4 Joint Embedding의 보편성

  • 주어진 fθf_{\theta}gϕg_{\phi}가 보편 근사기(universal approximators)일 때, 다음이 성립한다:
    hθ,ϕ(x,y)=fθ(x)gϕ(y)=k=1d(fθ(x))k(gϕ(y))k.h_{\theta, \phi}(x, y) = f_{\theta}(x) \cdot g_{\phi}(y) = \sum_{k=1}^d (f_{\theta}(x))_k \cdot (g_{\phi}(y))_k.
  • 충분히 큰 dd에 대해, hθ,ϕ(x,y)h_{\theta, \phi}(x, y)는 임의의 함수 h(x,y)h(x, y)를 근사할 수 있다.

5.5 결론

  • X\mathcal{X}Y\mathcal{Y}의 joint embedding을 통해 정의된 fθ(x)gϕ(y)f_{\theta}(x) \cdot g_{\phi}(y)는 보편 근사 성질을 가지며, 이를 통해 임의의 복합적 함수 h(x,y)h(x, y)를 표현할 수 있다.
  • dd \to \inftyfθ(x),gϕ(y)f_{\theta}(x), g_{\phi}(y)의 깊이(depth)가 충분할 경우 이 보편 근사 성질이 성립한다.

6. 결론

  • CLIP과 같은 Vision-Language 모델은 Mutual Information을 근사하도록 학습됨.
  • InfoNCE 손실은 Mutual Information의 하한을 제공하며, NN \to \infty일 때 정확한 근사 가능.
  • Joint Embedding 구조가 보편 근사 능력을 가지기 때문에 가능한 모델.



필자의 궁금증

fg/τf \cdot g / \tau로 유사도를 정의하고, 그걸로 LNCE\mathcal{L}_{NCE}를 정의한 뒤 극한을 보내면 MI가 되는가?**

  • InfoNCE 손실 함수:
    InfoNCE는 fg/τf \cdot g / \tau를 사용해 데이터 간 유사도를 측정하고, 이를 바탕으로 정답 쌍과 오답 쌍 간의 구별 능력을 학습함.

    LNCE=1Ni=1Nlogexp(fθ(Xi)gϕ(Ci)/τ)j=1Nexp(fθ(Xi)gϕ(Cj)/τ).\mathcal{L}_{NCE} = - \frac{1}{N} \sum_{i=1}^N \log \frac{\exp(f_{\theta}(X_i) \cdot g_{\phi}(C_i) / \tau)}{\sum_{j=1}^N \exp(f_{\theta}(X_i) \cdot g_{\phi}(C_j) / \tau)}.
  • Mutual Information으로의 수렴:

    • InfoNCE 손실은 다음 조건에서 Mutual Information에 수렴함:

      1. NN \to \infty일 때:
        limNLNCE=I(X;C).\lim_{N \to \infty} \mathcal{L}_{NCE} = I(X; C).
      2. 최적의 임베딩 함수 fθ(X)f_{\theta}^*(X)gϕ(C)g_{\phi}^*(C)를 사용:
        fθ(X)gϕ(C)=τlogp(X,C)p(X)p(C)+constant.f_{\theta}^*(X) \cdot g_{\phi}^*(C) = \tau \log \frac{p(X, C)}{p(X)p(C)} + \text{constant}.
    • 극한에서 InfoNCE는 다음과 같이 MI로 변환됨:

      LNCEE[logp(X,C)p(X)p(C)]=I(X;C).\mathcal{L}_{NCE} \to \mathbb{E} \left[ \log \frac{p(X, C)}{p(X)p(C)} \right] = I(X; C).

  • 결론:
    p(x,y)p(x, y)XXYY 간의 결합 확률을 나타내며, 이를 CLIP에서는 내적 fθ(X)gϕ(C)f_{\theta}(X) \cdot g_{\phi}(C)로 정의한 것임:
    • 왜 이러한 모델링이 가능한가? 자세한 증명: #5의 Universality of Joint Embeddings 파트와 관련이 있음.
  1. 모델링 선택:
    • fθ(X)gϕ(C)f_{\theta}(X) \cdot g_{\phi}(C)p(X,C)p(X, C)를 근사한다고 가정하지만, 이를 증명하려면:
      fθ(X),gϕ(C),p(X,C)f_{\theta}(X), g_{\phi}(C), p(X, C)
      의 함수 공간, 학습 과정, 데이터 분포 등을 포함한 엄밀한 분석이 필요함.
    • 이 가정은 경험적 근사에 기반을 둠. + Universality of Joint Embeddings 이론 기반 설명
profile
I aspire to become a surgeon who expands the boundaries of medicine through biomedical engineering.

0개의 댓글