머신러닝 & 딥러닝/딥러닝

UNet과 Text Encoder의 학습 방법

Haru_29 2024. 11. 25. 23:18

1. UNet의 기본 특성과 한계

  • Computer Vision 모델의 Low-Level Pixel Space 특성으로 인해 복잡한 지식 표현이 어렵습니다.
  • 시각적 요소들이 유사도 기반으로 분산되어 있습니다:
    • '손 그림', '발 그림', '다리 그림' 등이 연결 없이 흩어져 있습니다.
    • 비유하자면 주머니 속 각각의 구슬과 같습니다.
  • 학습 가능한 기초적 지식의 범위:
    • 눈, 코, 입의 기본적인 얼굴 배치
    • 인체의 기본 구조 (팔 2개, 다리 2개)
    • 신체 부위의 기본적 연결 관계

 

2. Text Encoder의 도입과 역할

  • High-Level의 압축된 지식을 다룹니다.
  • Semantic 특성으로 인간의 인식과 유사한 해석이 가능합니다.
  • UNet과의 결합 효과:
    • 원하는 시각적 요소를 선택적으로 활용합니다.
    • 상황에 맞는 조합을 가이드합니다.
    • 이러한 특성으로 'Guidance' 역할을 수행합니다.

 

3. LoRA의 학습 메커니즘

  • UNet에 적용되어 그림 생성 방식을 학습합니다:
    • 손, 발 등의 세부적인 그리기 제약을 학습합니다.
    • 스타일 변화가 가장 큰 영향을 받습니다.
    • 생성 가능한 시각적 요소의 범위가 확장됩니다.
  • 예시: 액세서리 관련 LoRA 적용 시 새로운 액세서리 생성 능력이 추가됩니다.

 

4. 여러 조건의 조합과 Text Encoder 조작

  • 복합적 조건 적용 시 (체형, 나이 등):
    • Text Encoder 조작이나 Prompt 강도 조절이 필요합니다.
    • 기존 지식 연결망을 활용해 조합합니다.
  • Text Encoder 조작이 효율적인 이유:
    • 여러 조건 조합 방식이 더 용이합니다.
    • UNet 조작보다 더 효과적입니다.

5. UNet과 Text Encoder의 관계

  • UNet과 Text Encoder는 경쟁 관계로 작용합니다:
    • "배운대로 그리는 디자이너 vs 고증을 지키는 기획자" 같은 관계입니다.
    • 노이즈와 Guidance의 방향성이 충돌합니다.
  • 문제 발생 요인:
    • Text Encoder의 부적절한 안내
    • 과도한 노이즈 영향력

6. CFG의 기본 특성과 실험적 확인 방법

  • UNet 시드와 Guidance Scale을 고정한 상태에서 실험을 진행합니다.
  • Prompt를 변경하면서 배치 1로 이미지를 생성합니다.
  • 생성된 결과물들의 Outline이 유사하게 나타나는데, 이는 Initial Noise의 강한 영향력 때문입니다.

 

7. CFG의 기술적 작동 원리

  • UNet의 Cross-Attention 층을 통해 Guidance가 주입됩니다.
  • Classic Diffusion (DDPM) 관점에서 Pixel Space의 복원 방향을 결정합니다.
  • Noise Prediction에 CFG 적용 시:
    • Noise Prediction과 Guidance를 조건부 확률로 갖는 Noise Prediction의 Weighted Vector Sum이 생성됩니다.
    • 이 Vector Sum이 Pixel Space의 진행 방향을 결정합니다.

8. 영향력과 상관관계

  • Noise Prediction과 Guidance의 조건부 확률 중 더 강한 쪽이 결과에 큰 영향을 미칩니다.
  • Cross-Attention에서 중요한 점:
    • Input Noise와 Guidance 사이의 상관관계가 중요합니다.
    • 상관관계가 약할 경우 (Guidance에 맞는 생성 타겟을 만들기에 부적절한 Noise):
      • Value가 의미가 약한 값으로 변화됩니다.
      • 원하는 결과를 얻기 어려워집니다.

9. Model Side에서의 Text Condition 처리

  • GAN과 달리 명시적인 경쟁 관계가 아닌 암묵적 경쟁 관계를 가집니다.
  • Conditional Feature의 처리 방식:
    • 알고리즘적으로 Explicit한 Binding을 만들지 않습니다.
    • 대신 Cross-Attention을 통한 Weak한 연결을 사용합니다.
  • 이로 인한 한계:
    • 데이터가 많아도 완벽한 Binding이 어렵습니다.
    • Edge Case에서 문제가 발생합니다.

10. 데이터량과 성능 관계

  • 데이터가 많을수록 Explicit한 Image-Text Pair가 증가합니다.
  • 이는 일부 단점을 보완해주지만 근본적인 해결책은 되지 않습니다.

11. Text Encoder의 한계

  • Multi-modality에서 숫자 인식에 약점을 보입니다.
  • 특히 다음 상황에서 어려움이 있습니다:
    • 정교한 폰트 생성
    • 이미지 내 객체 수 계산
    • 수학적 문제 해결
  • 이는 명확한 타겟 Loss (예: Detection)가 없는 한 해결이 어려운 학습상의 문제입니다.