>  기사  >  기술 주변기기  >  안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

PHPz
PHPz앞으로
2023-04-12 08:37:101565검색

올해 AI 분야에서 가장 영향력 있는 발전을 이야기하자면, 폭발적인 AI 매핑은 단연 그 중 하나입니다. 디자이너는 이미지에 대한 텍스트 설명만 입력하면 AI가 매우 높은 품질의 고해상도 이미지를 생성합니다. 현재 가장 널리 사용되는 모델은 StabilityAI의 오픈 소스 모델인 Stable Diffusion입니다. 이 모델이 오픈 소스로 공개되자 커뮤니티에서 폭넓은 논의가 이루어졌습니다.

그러나 확산 모델을 사용할 때 가장 큰 문제는 샘플링 속도가 매우 느리다는 것입니다. 모델 샘플링은 순수한 노이즈 사진에서 시작하여 단계별로 지속적으로 노이즈를 제거하여 최종적으로 선명한 사진을 얻어야 합니다. 이 과정에서 모델은 더 높은 품질의 이미지를 얻기 위해 적어도 50~100단계를 연속적으로 계산해야 하며, 이로 인해 이미지 생성에 필요한 시간이 다른 심층 생성 모델보다 50~100배가 되어 모델이 크게 제한됩니다. . 배포 및 구현.

확산 모델의 샘플링 속도를 높이기 위해 많은 연구자들은 하드웨어 최적화 관점에서 시작합니다. 예를 들어 Google은 JAX 언어를 사용하여 모델을 컴파일하고 TPU에서 실행합니다. 1초 만에 Stable Diffusion을 구현하는 자체 개발 컴파일러입니다." 이러한 방법은 50단계 샘플링 알고리즘인 PNDM[2]을 기반으로 하며, 단계 수가 줄어들면 샘플링 효과가 급격히 감소합니다.

이 기록이 불과 며칠 전 또 깨졌습니다! Stable Diffusion의 공식 데모[3] 업데이트에서는 8개의 이미지를 샘플링하는 시간이 원래 8초에서 4초로 직접적으로 단축되었음을 보여줍니다! 두 배나 빠릅니다!

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

OneFlow 팀은 자체 개발한 딥러닝 컴파일러 기술을 기반으로 샘플링 효과를 줄이지 않고 기존의 "1초 안에 그림 출력"을 "0.5초 안에 그림 출력"으로 단축하는 데 성공했습니다! GPU에서 0.5초 이내에 고화질 이미지를 얻으세요! 관련 연구는 [1]에 출판되었습니다.

실제로 이러한 작업의 핵심 원동력은 Tsinghua University의 Zhu Jun 교수가 이끄는 TSAIL 팀이 제안한 DPM-Solver에서 비롯됩니다. DPM-Solver는 확산 모델을 위해 특별히 설계된 효율적인 솔버입니다. 이 알고리즘은 추가 작업이 필요하지 않습니다. 이산시간 및 연속시간 확산 모델 모두에 적합한 training 은 20~25단계 내에서 거의 수렴할 수 있으며, 단 10~15단계만으로 매우 높은 품질의 샘플링을 얻을 수 있습니다. Stable Diffusion에서 25단계 DPM-Solver는 50단계 PNDM보다 더 나은 샘플링 품질을 달성할 수 있으므로 샘플링 속도가 직접적으로 두 배로 향상됩니다!

프로젝트 링크:

  • DPM-Solver: 약 10단계의 확산 확률 모델 샘플링을 위한 빠른 ODE 솔버: https://arxiv.org/abs/2206.00927(NeurIPS 2022 Oral)
  • DPM-Solver++: 확산 확률 모델의 안내 샘플링을 위한 빠른 솔버: https://arxiv.org/abs/2211.01095
  • 프로젝트 오픈 소스 코드: https://github.com/LuChengTHU/dpm-solver
  • 프로젝트 온라인 데모: https://huggingface.co/spaces/LuChengTHU/dpmsolver_sdm

확산 모델의 정의 및 샘플링 방법

확산 모델은 다음과 같은 순방향 프로세스를 정의하여 그림을 점차 가우스로 바꿉니다. 지속적으로 노이즈 노이즈를 추가한 다음 역 프로세스를 정의하여 가우스 노이즈를 점진적으로 명확한 그림으로 제거하여 샘플을 얻습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

샘플링 프로세스 동안 확산 모델은 여부에 따라 두 가지 범주로 나눌 수 있습니다. 추가 노이즈가 추가됩니다. 하나는 확산 확률 미분 방정식 모델(Diffusion SDE)이고 다른 하나는 확산 상미분 방정식(Diffusion ODE)입니다. 두 모델의 학습 목적 함수는 동일합니다. "잡음 예측 네트워크"는 잡음으로 인한 평균 제곱 오차를 최소화하여 학습됩니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

확산 SDE를 기반으로 한 샘플링 프로세스는 다음 확률론을 이산화하는 것으로 간주할 수 있습니다. 미분방정식 :

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

DDPM[5]이 위 SDE의 1차 이산화임을 [4]에서 증명했습니다.

확산 ODE를 기반으로 한 샘플링 프로세스는 다음 상미분 방정식을 이산화한 것으로 간주할 수 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

그리고 DDIM[7]이 위 ODE의 1차 이산화임을 [6]에서 증명했습니다.

그러나 이러한 1차 이산화 방법은 매우 느리게 수렴하며 확산 모델의 샘플링에는 일반적으로 고품질 그림을 얻기 위해 100~1000회의 연속 계산이 필요합니다. 일반적으로 확산 모델의 샘플링 속도를 높이기 위해 연구자들은 프로세스 속도를 높이기 위해 확산 ODE에 대해 고전적인 Runge-Kutta 방법(RK45)과 같은 고차 솔버를 사용하는 경우가 많습니다. 이는 ODE가 추가적인 임의성을 가져오지 않기 때문입니다. , 이산화 단계 크기는 상대적으로 더 클 수 있습니다. 시간 s에 해가 제공된 후 Runge-Kutta 방법은 다음과 같이 적분의 이산화를 기반으로 합니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

이러한 이산화는 확산 ODE를 전체적으로 블랙 박스로 취급하여 다음의 알려진 정보를 잃습니다. ODE는 50단계 미만에서는 수렴하기 어렵습니다.

DPM-Solver: 확산 모델을 위해 특별히 설계된 솔버

DPM-Solver는 Diffusion ODE의 반선형 구조를 기반으로 ODE의 선형 항을 정확하고 분석적으로 계산하여 다음을 얻을 수 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

나머지 적분항은 시간에 관한 복소적분입니다. 그러나 DPM-Solver 제안자는 log-SNR(로그 신호 대 잡음비)을 변경하여 매우 간단한 형식을 얻음으로써 이 적분을 얻을 수 있음을 발견했습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

나머지 적분은 다음의 함수입니다. 노이즈 예측 모델의 지수 가중 적분입니다. 소음 예측 모델에 대해 Taylor 확장을 수행하면 적분의 추정치를 얻을 수 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

이 추정에는 두 가지 항목이 있습니다. 하나는 총 도함수 부분(벡터)이고 다른 하나는 계수 부분(스칼라). DPM-Solver의 또 다른 핵심 기여는 계수를 부품별 적분을 통해 분석적으로 계산할 수 있다는 것입니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

나머지 총 미분 부분은 기존 ODE 솔버의 수치적 방법으로 대략적으로 추정할 수 있습니다(미분 연산 없음). :

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

DPM-Solver는 위의 4가지 사항을 기반으로 알려진 모든 항목을 최대한 정확하게 계산하고 신경망 부분만 근사화하므로 이산화를 최소화합니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

이 파생을 바탕으로 DDIM이 본질적으로 DPM-Solver의 1차 형태라는 것을 알 수 있으며, 이는 DDIM이 단계 수가 적을 때에도 여전히 좋은 가속 효과를 얻을 수 있는 이유를 설명할 수도 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

In 실험에서 DPM-Solver는 다른 샘플링 알고리즘을 훨씬 능가하는 가속 효과를 달성했으며 단 15~20단계만으로 거의 수렴되었습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

그리고 논문의 정량적 결과는 DPM-Solver가 도입한 추가 계산량은 전혀 무시할 수 있는 수준이라는 것을 보여줍니다. 즉, 걸음 수에 대한 가속 효과는 시간에 따른 가속 효과에 정비례합니다. 25단계 DPM-Solver, Stable-Diffusion 모델의 샘플링 속도가 2배로 향상되었습니다! 예를 들어 아래 그림은 단계 수가 변경됨에 따라 다양한 샘플링 알고리즘이 Stable-Diffusion에 미치는 영향을 보여줍니다. DPM-Solver는 10~15단계로 매우 높은 품질의 샘플링을 얻을 수 있음을 알 수 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

DPM-Solver 사용

DPM-Solver는 작성자나 주류 Diffusers 라이브러리에서 제공하는 공식 코드를 기반으로 할 수 있어 사용이 매우 간단합니다. 예를 들어, 작성자가 제공한 공식 코드(https://github.com/LuChengTHU/dpm-solver)를 기반으로 하면 단 3줄만 필요합니다:

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

공식 코드는 4가지 확산 모델을 모두 지원합니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

무조건 샘플링, 분류자 안내 및 분류자 없는 안내를 동시에 지원합니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

Diffusers 라이브러리를 기반으로 하는 DPM-Solver도 매우 간단하므로 정의하기만 하면 됩니다. 스케줄러:

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

또한 저자 팀은 온라인 데모도 제공합니다: https://huggingface.co/spaces/LuChengTHU/dpmsolver_sdm

아래 그림은 15단계의 예입니다. 이미지 품질이 이미 매우 높다는 것을 알 수 있습니다.

안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘

DPM-Solver를 기반으로 하면 확산 모델의 샘플링 속도가 더 이상 병목 현상이 되지 않을 것이라고 믿습니다.

저자 소개

DPM-Solver 논문의 첫 번째 저자는 칭화대학교 TSAIL 팀의 Lu Cheng 박사입니다. 그는 또한 확산에 관한 토론에서 확산 모델의 원리에 대한 소개 서문을 썼습니다. 현재 Zhihu에 대한 모델이 게시되었습니다. https://www.zhihu.com/question/536012286/answer/2533146567

Tsinghua University의 TSAIL 팀은 오랫동안 이 이론에 전념해 왔습니다. 및 베이지안 머신러닝의 알고리즘 연구를 담당하고 있으며, 확률 생성 모델을 연구하는 팀 중 하나로, 베이지안 모델, 효율적인 알고리즘, 확률 프로그래밍 라이브러리에 대한 체계적이고 심층적인 연구 결과를 얻었습니다. 팀의 또 다른 박사 과정 학생인 Bao Fan은 확산 모델의 최적 평균 및 분산에 대한 간단하고 놀라운 분석 형식을 제공하는 Analytic-DPM[8][9]을 제안하여 ICLR 2022 우수 논문상을 수상했습니다. 확률 프로그래밍 측면에서 Machine Heart는 팀이 2017년 초에 출시한 심층 확률 프로그래밍 라이브러리 "ZhuSuan"(https://zhusuan.readthedocs.io/en/latest/) [10]에 대해 보고했습니다. 심층 확률 모델을 위한 프로그래밍 라이브러리 중 하나입니다. 또한, 확산 확률 모델의 두 핵심 저자인 Song Yang과 Song Jiaming은 모두 학부 시절 Zhu Jun 교수의 지도 아래 과학 연구 훈련을 받았으며 나중에 Stanford University에서 박사 학위를 취득했다는 점을 언급할 가치가 있습니다. . 논문의 공동 저자인 Zhou Yuhao, Chen Jianfei 및 Li Chongxuan은 TSAIL 그룹에서 교육을 받은 뛰어난 박사 과정 학생입니다. Zhou Yuhao와 Li Chongxuan은 현재 Tsinghua University의 컴퓨터학과에서 가르치고 있습니다. 인민대학교 힐하우스 인공지능 학교.


위 내용은 안정적인 확산 샘플링 속도가 2배! 단 10~25단계의 확산 모델 샘플링 알고리즘의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제