상세 컨텐츠

본문 제목

VAE 비교 분석 총정리

Stable Diffusion

by dfus1on 2023. 5. 4. 01:19

본문

VAE 의 원조를 찾아서

Variational Autoencoder(VAE)는 인공지능이 생성한 이미지를 입력받아 최종 픽셀로 출력해 주는 신경망입니다. 디퓨전으로 생성된 이미지의 색상과 화질에 영향을 끼치기 때문에 필터로 이해해도 좋습니다. 인공지능 그림을 처음 뽑았을 때 물 빠진 색감이 나오는 이유는 VAE가 제대로 설정되지 않아서 그렇습니다.

 

지금부터 많이 사용되는 VAE에 대한 색감 비교와 함께 VAE 종류와 그 기원에 대해 조사한 내용을 알려드리고 어떤 VAE를 사용하면 좋을지 상황별로 추천해 드리도록 하겠습니다.

 

결정적 이미지

먼저 VAE 비교를 위해서는 결정적으로 이미지가 출력되는 환경이 만들어져야 합니다. 시드와 설정값이 동일해도 생성된 이미지가 계속 달라지는 것을 경험하셨을 것입니다. 여기서 결정적이란 말의 의미는 설정값이 동일하면 항상 같은 이미지가 출력됨을 의미합니다.

 

간혹 여타 커뮤니티나 블로그에서 VAE 테스트 샘플을 보면 없던 디테일이 생기거나 사라지는 경우 결정적이지 않고 모델에 따라 입력값이 달라졌기 때문에 최종 이미지의 색감 비교 결과를 신뢰하기 어렵습니다. 이로 인해 흔히 같은 VAE쓰고 달라진 듯한 느낌을 받기 때문에 해골물이라는 표현을 많이 사용합니다. xformers 0.0.19 이상의 버전을 사용하거나 아예 xformers를 끄면 속도를 포기하는 대신 결정적인 이미지를 얻을 수 있습니다. 이에 대해서는 다음 시간에 더 자세하게 말씀드리겠습니다.

 

 

VAE 모델

kl-f8, model.ckpt[각주:1]

스테이블 디퓨전을 세상에 내놓은 뮌헨 대학에서 만들어진 원조격 VAE 모델이며 많은 VAE들의 기초가 되는 모델입니다. 이하 많은 모델들이 이 모델을 베이스로 파인튜닝 되었습니다. 1.0 오리지널에서 1.4 버전까지 있습니다. 초기 모델은 회화체 캐릭터의 눈표현이 보기 좋지 않습니다.

 

animefull-final-pruned.vae.pt

NovelAI 소스 코드 유출로 퍼진 VAE입니다. 위 오리진 VAE를 기준으로 노블 AI라는 회사에서 단부루라는 그림 사이트의 데이터로 튜닝한 VAE입니다. Counterfeit-V2.5.vae.pt 와 동일합니다. animefull, animevae.pt, anything V3 등으로 알려진 다른 이름의 VAE도 있으나 모두 같은 VAE입니다. 유출 코드로 많은 파인튜닝이 이루어졌고 이 과정에서 부산물처럼 복제된  VAE가 많은 모델입니다. 기회가 되면 유료 서비스인 NovelAI를 스테이블 디퓨전으로 똑같이 재현하는 방법에 대해 포스팅하겠습니다.

 

clearvae_main.safetensors[각주:2]

앞서 말한 NAI 유출본을 튜닝해 선예도를 올리고 선명함을 증가시킨 모델입니다. 선의 표현이 중심이 된 모델과 함께 사용 시 animefull 보다는 선명하면서 kl-f8-anime2 보다는 서정적인 이미지를 만들어 낼 수 있습니다.

 

vae-ft-mse-840000-ema-pruned.ckpt[각주:3][각주:4]

모델은 우리가 지금 쓰고 있는 스테이블 디퓨전을 만든 뮌헨대학교를 지원하여 Stability AI라는 회사에서 공개한 VAE로 kl-f8 오토인코더를 바탕으로 미학과 인간 이미지를 840000 회 학습 파인튜닝하여 만들어진 VAE입니다. 실사체 사진에 최적화된 VAE입니다.

 

Waifu Diffusion 시리즈

kl-f8-anime.ckpt[각주:5]

Waifu Diffusion 팀에서 만든 VAE로 애니메이션 이미지를 기준으로 학습된 모델입니다. 뮌헨대학에서 만든 SD 1.3을 베이스로 미세 튜닝되었으며 붉은 끼가 도는 것이 특징입니다. WD 1.3이라고 불리기도 합니다. 

kl-f8-anime2.ckpt[각주:6]

위와 동일한 Waifu Diffusion 팀멤버가 SD 1.4를 애니메이션 학습시켜 만든 VAE로 Berry's Mix.vae, waifu-diffusion.vae waifu-diffusion-v1-4(WD1.4)라는 이름으로도 퍼져있지만 모두 이름만 다르고 동일한 VAE입니다. 회화 애니메이션 모델에 가장 많이 사용되는 VAE입니다.

 

끝으로

일반적으로 애니메이션, 만화 풍에는 kl-f8-anime2.ckpt을 실사풍 이미지 생성에는 vae-ft-mse-840000-ema-pruned이 많이 사용됩니다. 얼굴을 확대해서 보면 두 모델 간 노이즈 차이가 크게 보입니다. kl-f8-anime2와 같이 여러 개의 이름을 가진 VAE는 복제과정에서 네이밍이 바뀌거나, 저장소 이름과 파일명을 혼용하여 커뮤니티에서 사용하는데서 발생한 문제로 같은 VAE를 쓰면서 달라진 것 같이 느껴졌다면 큰 착각입니다.

 

많은 파생 VAE들이 존재하지만 위 족보만 알고 있으면 어디에서 유래한 VAE모델인지 대략 알 수 있습니다. 관련해서 잘못된 내용이 있을 경우 알려주시면 수정하도록 하겠습니다.

반응형

관련글 더보기

댓글 영역