VAE KL 거리

2563 단어 VAE기계 학습
VAE(Variational Auto Encoder)의 KL 거리를 이해하는 데 오랜 시간이 걸렸기 때문에 자신의 이해를 기억해야 한다.
잘못이 있으면 지적해 주세요.

VAE



VAE에서 잠재 변수 z는 연속적인 정적 분포로 변환되어 표시됩니다.
예를 들어, 2차원 잠재 변수(z1, z2)를 이전의 잠재 변수(μ일,μ이,σ일,σ2) 다음과 같이 정의합니다.
$z=[z1, z2]=[μ1 + σ1 * randn(), μ2 + σ2 * randn()]$
여기에서randn()은 평균치 0, 표준 편차 1의 정적 분포 랜덤수이다.
이렇게 함으로써 VAE의 Decoder는 잠재 변수 z면의 이산적이고 국부적인 점에서 전환하는 것이 아니라 연속적인 잠재 변수 z면에서 전환한다.
여기까지는 아무 문제 없어요.

손실 함수에 갑자기 나타나는 KL 집합(KL 거리)


다음으로 VAE는 손실 함수에 KL 거리를 더하여 학습을 시작합니다.
근데 처음에는 그걸 잘 몰랐어요.
왜 손실 함수에 KL 거리를 붙여야 하나요?수준VAE를 설명하는 사람들의 설명은 KL 거리에 대한 공식이 나오기도 어려워 KL 거리에 대한 이해를 포기하는 원인이 되었다.한 번 이해해 봤는데 해설에 정확하게 쓰여 있었지만 뜻을 이해하기 어렵고 이해도 진전이 없어서 아쉽다.
나는 같은 의문이 있는 사람이 먼저 KL 거리를 조사하는 것이 가장 좋다고 생각한다.

KL 거리


  • KL 거리는 KL 집합, 칼바크의 실시간 정보량이라고도 부른다
  • KL 거리는 모 분포 P(x) 모 분포 Q(x)의 거리 제곱을 나타내는 척도이다
  • 분포 P(x)와 분포 Q(x)가 일치할 때 KL 거리는 0이다
  • 반대로 분포 P(x)와 분포 Q(x)가 멀어질수록 (대략) 분포 거리의 제곱과 비례하는 형식이 크다
  • 손실 함수에 KL 거리를 더하면 KL 거리가 소치(0)에 가까운 방식으로 학습권이 크다.즉 잠재 변수 z의 분포 P(x)와 대상의 분포 Q(x)가 일치하게 수렴된다
  • VAE에서 분포 Q(x)는 평균치 0, 표준 편차 1의 정적 분포이다
  • 즉, 손실 함수에 KL 거리를 추가할 때 평균치 0, 표준 편차 1에 가까운 정적 분포 형식으로 학습된 잠재 변수 z의 분포 P(x)("VAE의 Decoder의 입력")를 생성한다.(입력의 정규화)
  • 분포 Q(x)를 평균값 0, 표준 편차 1의 정적 분포로 하고 잠재 변수 z의 분포 P(x)를 평균값 $로 한다.μ$、표준 편차 $σ$의 정적 분포는 이 두 분포의 KL 거리가 $\frac {1} {2} (-2\lnσ+μ^2+σ^2-1)달러입니다.(계산 약간)
  • 이때 KL 거리의 $μ$및 $σ$의 편미분 값은 0입니다. 각각 $입니다.μ=0,σ=1$이기 때문에 KL 거리가 이 값에서 극소값을 취하는지 확인할 수 있습니다. 이때 KL 거리는 0입니다
  • 구축 시 $σ$빼면 $\lnσ$의 규격화 거리의 멱 함수σ)^2$와 $logvar$를 분리하고 KL 거리를 $\frac{1}{2}(-logvar+μ^2+\exp(logvar)-1)$의 설명이 주류입니다
  • 느끼다


    VAE라면 잠재 변수 z가 학습을 통해 수렴된 분포를 평균치 0, 표준 편차 1의 분포로 설정합니다.
    그러나 나는 개인적으로 수렴의 분포가 연속적이라면 무엇이든지 된다고 생각한다.예를 들어 잠재 변수의 분포 목적지를 평균치 0.5, 표준 편차 0.1의 정적 분포로 설정해도 -1에서 1의 균등한 분포라도 연속 잠재 변수 z면의 목적과 관련되면 아무런 문제가 없다.
    (입력의 정규화된 목적을 보면 일치하지 않을 수 있습니다...)
    이런 상황에서 어떻게 이전의 VAE에서 변경해야 합니까?
    결론적으로 VAE의 손실 함수에 추가된 KL 거리의 값만 바꾸면 대응할 수 있다.
    예를 들어 분포 Q(x)를 평균치 0.5, 표준 편차 0.1의 정적 분포로 설정하면 손실 함수에 추가된 KL 거리는 $\frac{1}{2}(-2\ln10σ+10^2((μ-0.5)^2+σ^2)-1)$μ=0.5,σ=나는 0.1달러에 극소치 0의 함수가 있고 잠재 변수 z의 P(x)분포의 목적 지평균일치 0.5, 표준 편차 0.1의 정규 분포 Q(x)가 될 수 있을까 한다.

    좋은 웹페이지 즐겨찾기