이 리뷰(확산 모델: 방법 및 응용에 대한 종합 조사)는 캘리포니아 대학의 Ming-Hsuan Yang 및 Google Research, Peking University의 Cui Bin Laboratory뿐만 아니라 CMU, UCLA, Montreal Mila Research 및 기타에서 제공되었습니다. 확산 모델 알고리즘의 세부 분류부터 다른 5개 주요 세대 모델과의 연관성, 7개 주요 분야에의 적용까지 기존 확산 모델에 대한 종합적인 요약 및 분석을 실시한 것은 이번이 처음이다. 마지막으로 확산모델의 기존 한계와 향후 발전방향을 제시하였다.
기사 링크: https://arxiv.org/abs/2209.00796 논문 분류 요약 github 링크: https://github.com/YangLing0818/Diffusion-Models-Papers-Survey-Taxonomy
확산 모델은 심층 생성 모델의 새로운 SOTA입니다. 확산 모델은 이미지 생성 작업에서 기존 SOTA: GAN을 능가하며, 컴퓨터 비전, NLP, 파형 신호 처리, 다중 모드 모델링, 분자 그래프 모델링, 시계열 모델링 등 다양한 응용 분야에서 탁월한 성능을 발휘합니다. 정화 등 또한 확산 모델은 강력한 학습, 표현 학습, 강화 학습 등 다른 연구 분야와 밀접하게 관련되어 있습니다. 그러나 원래 확산 모델에는 샘플링 속도가 느리며 일반적으로 샘플을 추출하는 데 수천 번의 평가 단계가 필요하며 다양한 데이터 유형에 일반화되는 가능성 기반 모델과 비교할 수 없습니다. 능력이 덜해요. 최근에는 위의 한계점을 실무적 관점에서 해결하기 위해 많은 노력을 기울이거나 이론적 관점에서 모델 성능을 분석하고 있다.
그러나 알고리즘부터 응용까지 확산 모델의 최근 발전에 대한 체계적인 검토가 부족합니다. 빠르게 성장하는 이 분야의 진행 상황을 반영하기 위해 우리는 확산 모델에 대한 최초의 포괄적인 검토를 제시합니다. 우리는 우리의 작업이 확산 모델의 설계 고려 사항과 고급 방법을 밝히고 다양한 분야에서의 적용을 보여주며 향후 연구 방향을 제시할 것이라고 생각합니다. 이번 리뷰를 요약하면 다음과 같습니다.
확산 모델은 다양한 작업에서 탁월한 성능을 발휘하지만 여전히 단점이 있으며, 확산 모델에 대한 많은 연구가 개선되었습니다. 만들어진. 확산 모델의 연구 진행 상황을 체계적으로 명확히 하기 위해 원래 확산 모델의 세 가지 주요 단점인 느린 샘플링 속도, 낮은 최대화 가능성, 약한 데이터 일반화 능력을 요약하고 확산 모델에 대한 개선 연구를 해당 항목으로 나눌 것을 제안했습니다. 세 가지 범주: 샘플링 속도 향상, 최대 우도 향상 및 데이터 일반화 향상. 먼저 개선 동기를 설명한 후, 방법의 특성에 따라 연구를 개선 방향별로 분류하여 방법 간의 연관성과 차이점을 명확하게 보여줍니다. 여기에서는 그림과 같이 몇 가지 중요한 방법만 우리 작업에서 자세히 소개합니다.
세 가지 유형의 확산 모델을 분석한 후 나머지 5가지 방법을 소개합니다. 생성 모델 GAN, VAE, 자동회귀 모델, 정규화 흐름 및 에너지 기반 모델. 확산 모델의 뛰어난 특성을 고려하여 연구자들은 확산 모델을 그 특성에 따라 다른 생성 모델과 결합했습니다. 따라서 확산 모델의 특성과 개선 작업을 더욱 입증하기 위해 확산 모델의 결합을 자세히 소개했습니다. 모델 및 기타 생성 모델이 작동하고 원래 생성 모델에 대한 개선 사항을 보여줍니다. 확산 모델은 여러 분야에서 탁월한 성능을 발휘하며, 확산 모델이 다양한 분야의 응용에서 서로 다른 변형을 갖는다는 점을 고려하여 컴퓨터 비전, NLP, 파형 신호 처리, 멀티모달 모델링, 분자 그래프 모델링, 시계열 모델링, 적대적 정제.
각 작업에 대해 작업을 정의하고 작업을 처리하기 위해 확산 모델을 사용하여 작업을 소개합니다. 이 작업의 주요 기여를 다음과 같이 요약합니다:
생성 모델링의 핵심 문제는 모델 유연성과 계산 가능성 간의 균형입니다. 확산 모델의 기본 아이디어는 순방향 확산 과정을 통해 데이터의 분포를 체계적으로 교란시킨 다음 역확산 과정을 학습하여 데이터의 분포를 복원함으로써 매우 유연하고 계산하기 쉬운 모델을 만드는 것입니다. 생성 모델.
A.Denoising Diffusion Probabilistic Models(DDPM)
A DDPM은 두 개의 매개변수화된 Markov 체인으로 구성되며 변형 추론을 사용하여 유한 시간 이후 원래 데이터 분포와 일치하는 샘플을 생성합니다. 순방향 체인의 기능은 데이터 분포가 사전 분포, 즉 표준 가우스 분포로 바뀔 때까지 미리 설계된 노이즈 일정에 따라 데이터에 가우스 노이즈를 점차적으로 추가하는 것입니다. 역방향 체인은 주어진 사전에서 시작하고 매개변수화된 가우스 변환 커널을 사용하여 원래 데이터 분포를 점진적으로 복원하는 방법을 학습합니다. 을 사용하여 원본 데이터와 그 분포를 나타내면 순방향 체인의 분포는 다음 공식으로 표현될 수 있습니다.
이는 순방향 체인이 마르코프 프로세스이고 x_t가 샘플임을 보여줍니다. t-step 노이즈를 추가한 후 β_t는 노이즈 진행을 제어하기 위해 미리 제공되는 매개변수입니다. 가 1에 가까워지면 x_T는 대략적으로 표준 가우스 분포를 따르는 것으로 간주할 수 있습니다. β_t가 작을 때 역과정의 전송 커널은 대략 가우스로 간주될 수 있습니다:
손실 함수로 변형 하한을 학습할 수 있습니다:
B.Score -Based Generative Models (SGM)
위의 DDPM은 SGM의 이산형 형태라고 볼 수 있습니다. SGM은 데이터 분포를 원활하게 방해하고 원본 데이터 분포를 알려진 사전 분포로 변환하기 위해 확률론적 미분 방정식(SDE)을 구성합니다.
및 해당 역 SDE를 사용하여 사전 분포를 다시 변환합니다. 원본 데이터 분포:
따라서 확산 과정을 역전시키고 데이터를 생성하기 위해 필요한 유일한 정보는 각 시점의 분수 함수입니다. 점수 매칭 기법을 사용하면 다음과 같은 손실 함수를 통해 점수 함수를 학습할 수 있습니다.
두 가지 방법에 대한 자세한 소개와 둘 사이의 관계를 보려면 기사를 참조하세요.
원래 확산 모델의 세 가지 주요 단점은 느린 샘플링 속도, 최대 우도 차이, 약한 데이터 일반화 능력입니다. 최근의 많은 연구에서 이러한 단점을 다루었으므로 향상된 확산 모델을 샘플링 속도 향상, 최대 우도 향상 및 데이터 일반화 향상의 세 가지 범주로 분류합니다. 다음 3개, 4개, 5개 섹션에서는 이러한 세 가지 유형의 모델을 자세히 소개합니다.
적용 시 새로운 샘플의 품질을 최적화하기 위해 확산 모델은 새로운 샘플을 얻기 위해 수천 개의 계산 단계가 필요한 경우가 많습니다. 이는 확산 모델의 실제 적용 가치를 제한합니다. 실제 적용에서는 다음 처리 단계에 재료를 제공하기 위해 많은 수의 새로운 샘플을 생성해야 하는 경우가 많기 때문입니다. 연구자들은 확산 모델의 샘플링 속도를 향상시키기 위해 많은 연구를 진행해 왔습니다. 우리는 이러한 연구를 자세히 설명합니다. 이를 Discretization Optimization, Non-Markovian Process 및 Partial Sampling의 세 가지 방법으로 세분화합니다.
A. 이산화 최적화 방법 확산 SDE 해결 방법을 최적화합니다. 실제로 복잡한 SDE를 해결하려면 이산 솔루션을 사용하여 실제 솔루션에 근접할 수 있기 때문에 이러한 유형의 방법은 SDE의 이산 방법을 최적화하여 이산 단계 수를 줄이면서 샘플 품질을 보장하려고 시도합니다. SGM은 역방향 프로세스를 해결하기 위한 일반적인 방법을 제안합니다. 즉, 순방향 프로세스와 역방향 프로세스에 대해 동일한 이산화 방법이 채택됩니다. 순방향 SDE에 이산화가 제공되면:
그러면 역 SDE를 같은 방식으로 이산화할 수 있습니다.
이 방법은 순진한 DDPM보다 약간 낫습니다. 또한 SGM은 각 단계에서 생성된 샘플이 올바른 분포를 갖도록 SDE 솔버에 교정기를 추가합니다. 솔루션의 각 단계에서 솔버에 샘플이 제공된 후 교정기는 Markov chain Monte Carlo 방법을 사용하여 방금 생성된 샘플의 분포를 수정합니다. 실험에 따르면 솔버에 교정기를 추가하는 것이 솔버의 단계 수를 직접 늘리는 것보다 더 효율적이라는 것을 보여줍니다.
B.Non-Markovian Process 이 방법은 원래 Markovian Process의 한계를 극복했습니다. 역 프로세스의 각 단계는 더 많은 과거 샘플을 사용하여 새 샘플을 예측할 수 있으므로 단계 길이는 다음과 같습니다. 더 긴 시간 동안에도 더 나은 예측이 가능하므로 샘플링 프로세스의 속도가 빨라집니다. 그 중 주요 작업인 DDIM은 더 이상 순방향 프로세스가 Markov 프로세스라고 가정하지 않고 다음 분포를 따릅니다.
DDIM의 샘플링 프로세스는 이산화된 신성한 정규 미분 방정식으로 간주될 수 있으며, 샘플링 프로세스가 더욱 효율적이며 샘플 보간을 지원합니다. 추가 연구에서는 DDIM이 다기관 확산 모델 PNDM의 특별한 경우로 간주될 수 있음을 발견했습니다.
C. Partial Sampling 방법은 생성 과정에서 시간 노드의 일부를 무시하고 나머지 시간 노드만 사용하여 샘플을 생성함으로써 샘플링 시간을 직접적으로 줄여줍니다. 예를 들어, 점진적 증류(Progressive Distillation)는 훈련된 확산 모델에서 보다 효율적인 확산 모델을 추출합니다. 훈련된 확산 모델의 경우 Progressive Distillation은 새로운 확산 모델의 한 단계가 훈련된 확산 모델의 두 단계와 일치하도록 확산 모델을 재훈련하므로 새 모델은 이전 모델 샘플링 프로세스의 절반을 절약할 수 있습니다. 구체적인 알고리즘은 다음과 같습니다:
이 증류 과정을 지속적으로 순환하면 샘플링 단계가 기하급수적으로 줄어들 수 있습니다.
최대 우도 추정에서 확산 모델의 성능은 우도 함수 기반 생성 모델보다 떨어지지만, 최대 우도 추정은 이미지 압축과 같은 많은 응용 시나리오에서 매우 중요합니다. , 준지도 학습, 적대적 정화. 로그 우도는 직접 계산하기 어렵기 때문에 주로 VLB(변동 하한)를 최적화하고 분석하는 연구에 중점을 두고 있습니다. 우리는 확산 모델의 최대 우도 추정을 향상시키는 모델에 대해 자세히 설명합니다. 우리는 이를 Objectives Designing, Noise Schedule Optimization, Learnable Reverse Variance라는 세 가지 범주의 방법으로 세분화합니다.
A.Objectives 설계 방법은 확산 SDE를 사용하여 생성된 데이터의 로그 우도와 점수 함수 매칭의 손실 함수 간의 관계를 추론합니다. 이와 같이 손실함수를 적절하게 설계함으로써 VLB와 로그우도를 극대화할 수 있다. Song et al.은 손실 함수의 가중치 함수가 플러그인 역 SDE에 의해 생성된 샘플의 우도 함수 값이 손실 함수 값보다 작거나 같도록 설계할 수 있음을 증명했습니다. 즉, 손실 함수는 다음과 같습니다. 우도 함수의 상한. 분수 함수 피팅의 손실 함수는 다음과 같습니다.
손실 함수가 우도 함수의 VLB가 되도록 가중치 함수 λ(t)를 확산 계수 g(t)로 설정하기만 하면 됩니다. , 즉:
B.Noise Schedule Optimization 순방향 프로세스의 소음 일정을 설계하거나 학습하여 VLB를 늘립니다. VDM은 이산 스텝이 무한대에 접근할 때 손실 함수가 신호 대 잡음비 함수 SNR(t)의 끝점에 의해 완전히 결정된다는 것을 증명합니다.
그런 다음 이산 스텝이 무한대에 접근하면 신호는 SNR(t)의 끝점은 VLB를 최적화하고, 신호 대 잡음비 함수의 중간 부분에 있는 함수 값을 학습하여 모델의 다른 측면을 개선합니다.
C.Learnable Reverse Variance 방법은 역과정의 분산을 학습하여 피팅 오류를 줄이고 VLB를 효과적으로 최대화할 수 있습니다. Analytic-DPM은 DDPM 및 DDIM의 역방향 프로세스에 최적의 기대값과 분산이 있음을 증명합니다.
위 공식과 훈련된 점수 함수를 사용하여 주어진 순방향 프로세스 조건에서 최적의 우수성 VLB는 대략적으로 달성될 수 있습니다.
확산 모델은 데이터가 유클리드 공간, 즉 평면 기하를 갖는 다양체에 존재한다고 가정하고, 가우시안 노이즈를 추가하면 필연적으로 데이터가 연속 상태 공간으로 변환되므로 확산 모델은 처음에는 그림과 같은 연속적인 데이터만 처리할 수 있으며 개별 데이터나 다른 데이터 유형을 직접 적용하는 효과는 좋지 않습니다. 이는 확산 모델의 적용 시나리오를 제한합니다. 여러 연구에서는 확산 모델을 다른 데이터 유형으로 일반화하고 이러한 방법을 자세히 설명합니다. 우리는 이를 기능 공간 통합(Feature Space Unification)과 데이터 종속 전환 커널(Data-Dependent Transition Kernels)이라는 두 가지 방법으로 분류합니다.
A.Feature Space Unification 방식은 데이터를 통합된 잠재공간으로 변환한 후 잠재공간에 확산시키는 방식입니다. LSGM은 VAE 프레임워크를 통해 데이터를 연속적인 잠재공간으로 변환한 후 그 위에 확산시키는 것을 제안합니다. 이 방법의 어려움은 VAE와 확산 모델을 동시에 훈련하는 방법입니다. LSGM은 기본 사전이 다루기 어렵기 때문에 부분 일치 손실이 더 이상 적용되지 않음을 보여줍니다. LSGM은 VAE의 기존 손실 함수 ELBO를 손실 함수로 직접 사용하고 ELBO와 점수 매칭 간의 관계를 도출합니다.
이 공식은 상수가 무시되는 경우에도 적용됩니다. 확산 과정에서 샘플의 분수 함수를 매개변수화함으로써 LSGM은 ELBO를 효율적으로 학습하고 최적화할 수 있습니다.
B.Data-Dependent Transition Kernels 방법은 특정 데이터 유형에 확산 모델을 직접 적용할 수 있도록 데이터 유형의 특성에 따라 확산 과정에서 전환 커널을 설계합니다. D3PM은 지연 랜덤 워크, 흡수 상태 등으로 설정할 수 있는 이산 데이터용 전환 커널을 설계했습니다. GEODIFF는 3차원 분자 그래프 데이터에 대한 이동 회전 불변 그래프 신경망을 설계하고 불변 초기 분포 및 전이 커널이 불변 주변 분포를 도출할 수 있음을 입증했습니다. T가 다음과 같은 번역-회전 변환이라고 가정합니다.
그런 다음 생성된 샘플 분포에는 번역-회전 불변성도 있습니다.
및 각각의 다른 생성 모델과의 연결 다음 이 섹션에서는 먼저 생성 모델의 다섯 가지 중요한 범주를 소개하고 해당 범주의 장점과 한계를 분석합니다. 그런 다음 확산 모델이 이들과 어떻게 관련되어 있는지 소개하고 확산 모델을 통합하여 이러한 생성 모델을 어떻게 개선할 수 있는지 설명합니다. VAE, GAN, Autoregressive 모델, Normalizing flow, Energy-based 모델 및 확산 모델 간의 관계는 아래 그림에 나와 있습니다.
이 섹션에서는 컴퓨터 비전, 자연어 처리, 파형 신호 처리, 다중 모드 학습, 분자 그래프 생성, 시계열 및 적대적 학습 응용 분야에서 확산 모델의 응용을 소개합니다. 주요 응용 방향으로, 각 응용 유형별 방법을 세분화하여 분석합니다. 예를 들어 컴퓨터 비전에서는 이미지 완성 복구(RePaint)에 확산 모델을 사용할 수 있습니다.
확산 모델을 사용하여 다중 모드 작업(GLIDE)에서 텍스트를 이미지로 생성할 수 있습니다.
확산 모델을 사용하여 분자 그래프 생성(GeoDiff)에서 약물 분자와 단백질 분자를 생성할 수도 있습니다. :
응용 분류 요약은 표에 나와 있습니다.
위 내용은 확산 모델이 폭발합니다. Github 논문의 첫 번째 리뷰이자 요약입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!