Illustrious LoRA Training Guide

세부 정보

파일 다운로드

모델 설명

Illustrious LoRA 학습 가이드

필요할 때 링크할 수 있는 문서를 만들기 위해, 제가 캡션을 작성하고 LoRA를 학습시키는 과정을 기록합니다~

데이터셋 캡션

"제가 데이터셋 캡션을 작성하는 다소... 비전통적이거나 논란이 되는 철학을 설명합니다"

CivitAI의 대부분의 애니메이션 모델은 수동으로 정제되지 않고 단지 자동 캡션된 데이터셋으로 학습되었습니다. 그 결과 트리거 단어가 거대한 텍스트 벽이 되어 버립니다. 따라서 캐릭터만 재현하려 해도 이미 기본 토큰 수를 모두 소모해야 하는 상황이 됩니다.

그러나 제 의견으로는, 캡션은 주체를 정의하지 않는 '변수'만 포함해야 합니다. 본질적으로 모델은 트리거 단어를 주체와 연결시키도록 학습되어야 합니다. 예를 들어, 금발 머리카락을 가진 캐릭터가 있다면, 캡션에서 금발 머리카락 태그는 제거해야 합니다. 왜냐하면 그 "특징"은 캐릭터 이름과 연결되어야 하기 때문입니다. 따라서 저는 학습 전에 캡션을 수동으로 정제하는 것을 선호합니다.

어떤 사람들은 이 방법이 모델의 유연성을 떨어뜨린다고 말할 수 있습니다. 왜냐하면 개별 세부사항을 정확히 제어할 수 없기 때문입니다. 그러나 이는 양면적입니다. 제가 시도한 모델 중 일부는 모든 세부사항을 프롬프트로 명시하지 않으면 캐릭터와 전혀 닮지 않은 결과가 나왔습니다. 따라서 전반적으로, 저는 캐릭터를 재현하기 위해 적은 태그만 사용하는 편을 선호합니다.

학습 파라미터

"수많은 테스트 끝에 제게 가장 잘 작동했던 파라미터들을 설명합니다"

  • mixed_precision: GPU가 지원한다면 bf16을 사용하여 더 나은 결과를 얻으세요

  • dynamo_backend: GPU가 지원한다면 학습 속도를 약 5% 향상시킵니다

  • optimizer: 자동 관리되는 learning rate를 위해 Prodigy를 사용하세요

    • learning_rate: 1.0으로 설정하세요
  • network_alpha: network_dim0.5x ~ 0.25x로 설정하세요

    • d_coef: network_alphatrain_batch_size로 인해 높은 학습률이 필요하므로 1.0 이상을 사용하세요
  • lr_scheduler: Prodigy가 학습률을 높게 유지하려는 경향을 방지하기 위해 cosine을 사용하세요

  • clip_skip: Illustrious에는 2를 사용하세요

  • debiased_estimation_loss: 색상 정확도를 향상시키기 위해 enable하세요

이 모델로 만든 이미지

이미지를 찾을 수 없습니다.