Stable Diffusion

이미지
 Stable Diffusion  Stable Diffusion은 인공신경망의 일종입니다. 인공신경망은 인공 신경들이 복잡하게 서로 연결된 구조이고 모든 연결에는 Weight 즉 가중치라는게 있습니다. 복잡하고 거대한 인공신경망의 모든 가중치는 학습을 통해 자동으로 결정됩니다. stable diffusion의 ckpt 파일은 미리 학습된 가중치 파일입니다. safetensors 파일은 헤더에 추가 정보를 삽입한 ckpt 파일 입니다. 만약 학습한 이미지 중 토끼가 없었다면 토끼는 그릴 수 없습니다. 토끼 이미지를 추가로 학습 시켜 가중치를 미세조정 하면 토끼도 그릴 수 있게 됩니다.  가중치를 미세조정 하는 방법 Dreambooth  Dreambooth는 단 몇 장의 이미지로 이미 학습된 모델에 새로운 개념을 추가하는 가장 효과적인 방법입니다. 모델 전체의 가중치를 미세 조정합니다. 하지만 모델 전체를 수정하기 때문에 새로운 ckpt 파일이 만들어 집니다.  stable diffusion의 ckpt 파일의 크기는 약 2~7GB로 디스크 용량을 많이 차지하는 단점이 있습니다. Textual Inversion  Textual Inversion은 텍스트 임베딩 부분을 수정해서 새로운 키워드를 정의합니다.  < 오브젝트 추가 예 > < 스타일 추가 예 > 모델을 변경하지 않고도 몇 장의 이미지 만으로 새로운 물체나 화풍을 추가 할 수 있습니다. 모델을 변경하지 않기 때문에 효과가 제한적 입니다. 임베딩 파일의 크기는 보통 100KB 미만으로 매우 작습니다. LoRa  lora는 모델에서 가장 중요한 부분인 프롬프트와 이미지가 만나는 부분을 수정합니다. 모델 전체를 수정할 때 보다는 못하지만 작은 변화로 큰 효과를 볼 수 있습니다. 모델을 직접 수정하기 때문에 Textual Inversion보다 훨씬 뛰어납니다. 수정된 부분만 별도의 파일로 저장하며, ckpt 파일과 함께 사용해야 합니다. 파일의 크기는 2~200MB 입니다. Hypernetwor

첫 포스트

 첫 포스트 입니다.  다음 글에서는 stable diffusion에 관해 알아본 것들을 정리해 보겠습니다.