확산 모델의 Uni 구절을 Uni Fied 워크 플로우로 탐색하십시오.

단일 확산은 디퓨저를 기반으로 한 최첨단 교육 및 추론 알고리즘을 제공하는 도구 상자입니다. 단일 확산은 안정적인 확산의 훈련을 깊이 사용자 정의하려는 연구원과 사용자를 대상으로합니다. 이 코드 저장소가 향후 연구 및 응용 프로그램 확장에 대한 탁월한 지원을 제공 할 수 있기를 바랍니다.
다음을 구현하고 싶다면 불쾌감을 느끼십시오.
cross attention (또는 convolution / feedforward / ...) 층 만 훈련하십시오.lr / weight decay / ...을 설정하십시오.참고 : 단순화는 여전히 개발 중입니다. 일부 모듈은 다른 코드 리포지토리에서 빌려 왔으며 아직 테스트되지 않았습니다. 특히 구성 시스템에서 기본적으로 활성화되지 않은 구성 요소. 우리는이 프로젝트를 개선하기 위해 열심히 노력하고 있습니다.
불분명하게 모든 훈련 방법은 세 가지 차원으로 분해됩니다.
강력한 구성 시스템으로 통합 교육 파이프 라인을 수행 할 수 있습니다.
다음은 간단한 예입니다. 디퓨저에서는 text-to-image finetune 및 dreambooth 와 같은 교육을 교육합니다.
python train_dreambooth.py --arg ......
python train_finetune.py --arg ......그리고 일부 방법을 결합하거나 조정하는 것은 어렵습니다 (예 : Dreambooth 중에는 교차 교육 만).
Unidiffusion에서는 구성 파일에서 자체 교육 인수를 쉽게 설계 할 수 있습니다.
# text-to-image finetune
unet . training_args = { '' : { 'mode' : 'finetune' }}
# text-to-image finetune with lora
unet . training_args = { '' : { 'mode' : 'lora' }}
# update cross attention with lora
unet . training_args = { 'attn2' : { 'mode' : 'lora' }}
# dreambooth
unet . training_args = { '' : { 'mode' : 'finetune' }}
text_encoder . training_args = { 'text_embedding' : { 'initial' : True }}
# dreambooth with small lr for text-encoder
unet . training_args = { '' : { 'mode' : 'finetune' }}
text_encoder . training_args = { 'text_embedding' : { 'initial' : True , 'optim_kwargs' : { 'lr' : 1e-6 }}}그런 다음 실행됩니다
accelerate launch scripts/train.py --config-file /path/to/your/config이를 통해 메소드의 쉽게 사용자 정의, 조합 및 향상을 촉진하면 구성 파일을 통한 메소드 간의 유사성과 차이를 비교할 수 있습니다.
회전하면 모듈 선택을위한 정기적 인 일치 시스템을 제공합니다. 정기적으로 일치하여 모듈을 선택할 수 있습니다. 자세한 내용은 모듈 선택에 대해서는 정기적 인 일치를 참조하십시오.
우리는 PEFT/PETL 방법에 대한 강력한 지원을 제공합니다. 자세한 내용은 PEFT/PETL 방법을 참조하십시오.
pip install -e requirements.txtaccelerate config
wandb login자세한 내용은 열차 텍스트 반전 / Dreambooth / Lora / Text-to-Image Finetune을 참조하십시오.
accelerate launch scrits/common.py --config-file configs/train/text_to_image_finetune.py참고 : 개인화 방법은 훈련 가능한 매개 변수, PEFT/PETL 방법 및 단일 연합에서의 훈련 프로세스에서 분해됩니다. 자세한 내용은 구성 파일을 참조하십시오.
앞으로 다음과 같은 기능을 추가 할 예정입니다. 우리는 또한 지역 사회의 기여를 환영합니다. 새로운 기능에 대한 아이디어를 논의하기 위해 요청을 가져 오거나 문제를 열어주십시오.
우리는 오픈 소스 커뮤니티의 기여를 환영합니다!
연구 에서이 도구 상자를 사용하거나 여기에 게시 된 기준 결과를 참조하려면 다음 Bibtex 항목을 사용하십시오.
@misc { pu2022diffusion ,
author = { Pu Cao, Tianrui Huang, Lu Yang, Qing Song } ,
title = { UniDiffusion } ,
howpublished = { url{https://github.com/PRIV-Creation/UniDiffusion} } ,
year = { 2023 }
}