아침에 나온 LORA가 하이퍼 + 드림부스인줄 알았는데
진짜 후계자는 얘였음
확실히 제대로 된 논문 있는 것들이 이해하기도 쉽고 효과에 대한 믿음이 생김
논문 퀄도 솔직히 구글에서 낸것만큼 좋아서 놀랐음


Multi-Concept Customization of Text-to-Image Diffusion (cmu.edu) 


예시가 엄청 많고, 여러가지 방향으로 실험을 많이 진행해서 후속 방향이 기대될 정도임


왼쪽으로부터 훈련이미지 / Custom Diffusion / 드림부스 / 임베딩훈련 순
뭐 드림부스가 살짝 나은 예시도 있긴한데 적어도 꿀리지 않는다는것 자체가 큰 장점이다

얘 원리도 하이퍼처럼 어텐션의 K, V 레이어만 튜닝하는 것이기 때문

그래서 용량도 약 70MB 정도 나온다고 한다.

참고로 훈련하고자 하는 대상에 대한 임베딩도 같이 훈련한다고 하는데

왜 임베딩 훈련 없이 드림부스처럼 이상한 토큰으로 훈련하는지는 잘 모르겠음



여기서는 파인튜닝된 모델에서 크로스어텐션 레이어가 가장 많이 변해서 이것만 튜닝하기로 했다고 한다



근데 이 논문의 핵심은 논문 제목처럼 여러가지 대상에 대해서 학습을 진행해도 각 대상의 퀄리티가 유지된다는 것이다

가장 오른쪽 열이 드림부스 결과물인데 V1이나 V2 하나만 구현하는걸 볼 수 있다

그에 비해 왼쪽의 두 열 (왼쪽: V1 & V2 동시훈련, 중간: V1 훈련 후 V2 훈련)은 V1과 V2를 모두 잘 구현하는걸 볼 수 있다


*이 모델은 드림부스보다 더 높은 lr로 훈련해도 안깨진다고 함. 그래서 배치사이즈 8에 lr 8*1e-5를 씀


그 외에도 훈련 방식에 대한 꿀팁?을 찾을 수 있었는데

훈련할때 훈련 이미지를 0.4~1.4배로 축소 및 확대한 다음

축소한 이미지에 대해서는 'very small', 'far away'

확대한 이미지에 대해서는 'zoomed in', 'close up' 프롬프트를 추가했다고 함

거기에 backpropagation을 할 때 축소된 이미지 부분에 대해서만 loss를 계산했다고 하는데 이건 코드를 봐야 알듯 (아직 코드는 안나옴)



정규화를 하느냐 마느냐 가지고 챈이 뒤집어질뻔했는데

여기서는 정규화 이미지를 안쓰거나 AI 생성 이미지를 정규화 이미지로 사용하면 더 안좋다고 함
이건 뭐... 그림체 훈련한게 아니니까 넘어가고


그림체 훈련


V1와 V2가 비슷하다면 같이 프롬프트에 넣을때 제대로 안나온다고 한다

근데 이건 원래 모델도 잘 안나오는데수


아 빨리 코드나왔으면