데이터셋 구축 및 정리
LoRA 모델을 효과적으로 학습시키기 위해서는 우수한 데이터셋 구축이 필수적입니다. 데이터의 질이 높을수록 모델이 더욱 정교한 결과를 도출할 수 있습니다.
이미지 수집:
- 게임 내 3D 모델을 활용한 스크린샷 캡처
- 예를 들어, Honkai Impact 3rd, Genshin Impact 같은 게임에서는 3D 모델을 활용한 스크린샷 촬영이 가능하며, 이를 통해 보다 정교한 데이터셋을 구축할 수 있습니다.
- Danbooru/Gelbooru 같은 사이트에서 아트워크 수집
- 특정 캐릭터를 기반으로 검색하여 다양한 스타일의 아트워크를 수집할 수 있습니다.
- Google 이미지 검색을 활용한 보충
- Booru 사이트에서 부족한 이미지를 보충하는 데 유용하며, 다양한 팬아트나 공식 아트워크도 포함할 수 있습니다.
- 애니메이션의 스크린샷 활용
- 애니메이션 캐릭터 기반 LoRA를 제작할 경우 해당 애니메이션의 고해상도 캡처 이미지를 포함하면 효과적입니다.
- 기존 이미지의 부분 크롭을 통한 데이터 확장
- 한 장의 이미지에서 여러 부분을 크롭하여 데이터셋을 확장할 수 있습니다. 예를 들어, 전신 이미지 하나를 다양한 크롭 방식으로 나누어 학습 데이터로 활용할 수 있습니다.
이미지 분류 및 태깅:
- 한 LoRA당 최대 6개의 의상을 포함할 수 있음
- 의상의 수가 많을 경우 데이터 정리 및 태깅이 더욱 중요해집니다.
- 의상당 최소 8장에서 최대 100장의 이미지 필요
- 최소 8장의 이미지는 필수적으로 확보해야 하며, 100장까지 확보할 경우 더 정밀한 학습이 가능합니다.
- 자동 태깅 후 불필요한 태그 제거 및 개별 의상 태그 설정
- Google Colab에서 제공하는 Auto-Tagging 기능을 활용하여 자동 태깅 후 필요 없는 태그를 제거하는 작업이 필요합니다.
- 각 의상을 별도 폴더로 정리 (예: 1_Default, 2_Punk, 3_ELF 등)
- 폴더별로 의상을 정리하여 학습 시 의상 간 혼동을 최소화할 수 있습니다.
LoRA 학습 진행
LoRA 모델의 학습 과정에서는 적절한 학습 환경 설정과 반복 횟수 조정이 매우 중요합니다. 이를 통해 보다 효율적인 학습이 가능해집니다.
학습 환경 설정:
- Google Colab에서 LoRA Trainer 실행
- Google Colab의 무료 GPU 사용 시간을 최적화하여 학습 진행 가능
- 모델로 ‘Pony’를 선택 (타 모델도 가능)
- 특정 모델을 기반으로 학습할 경우 해당 모델과의 적절한 조합을 고려해야 합니다.
반복 횟수 설정:
- 데이터셋 크기에 따라 반복 횟수 설정 (예: 20장 → 5회 반복, 10장 → 10회 반복)
- 반복 횟수가 너무 적으면 학습이 충분하지 않을 수 있으며, 너무 많으면 과적합이 발생할 가능성이 있습니다.
- 총 반복 횟수는 400 이하 유지
- 데이터셋의 전체 반복 횟수는 400을 초과하지 않도록 조정하는 것이 중요합니다.
학습 실행:
- Epoch는 3까지만 학습 (과적합 방지)
- LoRA 학습에서는 3번째 Epoch에서 가장 좋은 결과를 보이는 경우가 많습니다.
- 학습 과정에서 오류 발생 시 태그 및 이미지 확인 후 수정
- 특정 태그 오류나 이미지 중복 문제로 인해 학습이 중단될 수 있으므로 사전에 검토가 필요합니다.
- 학습 완료 후 Google Drive에서 LoRA 파일 다운로드
- 학습이 끝난 후, 생성된 LoRA 파일을 다운로드하여 테스트 진행
LoRA 테스트 및 최적화
LoRA 모델이 정상적으로 학습되었는지 확인하는 과정도 매우 중요합니다. 테스트를 통해 문제를 파악하고 최적화할 수 있습니다.
출력 확인:
- 각 의상별 태그를 활용해 이미지 생성
- 특정 의상 태그를 활용하여 해당 의상이 제대로 생성되는지 확인해야 합니다.
- 태그 없이 생성 시 결과 확인
- 태그 없이 생성된 이미지가 일관성을 유지하는지도 검토해야 합니다.
- 특정 요소가 혼합되는 문제 발생 시 태그 수정 후 재학습
- 학습된 모델에서 특정 의상이 혼합되어 나타난다면 태그 조정을 통해 해결할 수 있습니다.
문제 해결:
- 이미지 색상 왜곡: 데이터셋의 색상 균형 확인
- 특정 이미지에서 색상이 과도하게 왜곡될 경우, 데이터셋 자체의 색상 균형을 조정해야 합니다.
- 의상 혼합 현상: 의상별 태그를 더욱 세밀하게 조정
- 각 의상의 차이를 더욱 명확하게 하기 위해 태그를 보다 세밀하게 수정할 필요가 있습니다.
- 배경 자동 추가 문제: ‘background’ 관련 태그 제거 및 네거티브 프롬프트 활용
- 불필요한 배경 요소가 추가될 경우, 해당 태그를 네거티브 프롬프트에 추가하여 방지할 수 있습니다.
최적화:
- 결과물 비교 후 필요 시 추가 학습 진행
- 초기 학습 결과가 만족스럽지 않을 경우, 일부 데이터를 추가 학습하여 보완할 수 있습니다.
- 적절한 프롬프트 조정으로 원하는 결과 도출
- 프롬프트 조정을 통해 더욱 정확한 이미지 생성을 유도할 수 있습니다.
'Comfy UI 연구실' 카테고리의 다른 글
의존성 정리 (1) (0) | 2025.03.18 |
---|---|
파이토치부터 이해하기 (0) | 2025.03.17 |
LoRA 트레이닝 초보자를 위한 필수 가이드 (0) | 2025.02.24 |
Pandas 실습: 데이터 분석 (0) | 2025.02.20 |
CFG와 샘플러 (0) | 2025.02.07 |