| 구분 | 정의 | 출력 형태 | 손실·평가 지표 | 주요 활용 분야 |
|---|---|---|---|---|
| Image Classification | 이미지 전체가 어느 클래스에 속하는지를 판별 | 1 × C (C = 클래스 수) | Cross‑Entropy, Top‑k accuracy | 이미지 검색, 라벨링 자동화 |
| Semantic Segmentation | 이미지 각 픽셀이 어떤 클래스에 속하는지를 구분 | H × W × C (H,W = 입력 해상도) | Pixel‑wise Cross‑Entropy, mIoU, Dice coefficient | 자율주행 차선·물체 인식, 의료 영상 해부구역 구분, AR/VR 배경 분리 |
| 항목 | Classification | Segmentation |
|---|---|---|
| 예측 단위 | 전체 이미지 (전역) | 픽셀 단위 (국부) |
| 라벨 개수 | 이미지당 1개 | 이미지당 H·W 개 |
| 네트워크 구조 | Conv → FC → Softmax | Conv → 전역 up‑sampling → Pixel‑softmax |
| 데이터 요구 | 라벨 파일 1줄 | 라벨 마스크 이미지(H × W) |
| 학습 난이도 | 상대적으로 낮음 | 메모리·연산량↑, 클래스 불균형 처리 필요 |
1×1 Conv 로 채널을 압축 → 전역적인 dense prediction 가능. deconvolution(transpose‑conv)·bilinear up‑sampling·sub‑pixel conv 등을 사용해 입력 해상도로 복원. Input (H×W×3)
│
├─ Conv‑block‑1 → feature‑map‑1 (↓2)
├─ Conv‑block‑2 → feature‑map‑2 (↓4)
├─ Conv‑block‑3 → feature‑map‑3 (↓8) ← deepest latent
│
└─ 1×1 Conv (채널 축소) → score‑map (↓8)
│
├─ Upsample ×2 + skip(feature‑map‑2)
├─ Upsample ×2 + skip(feature‑map‑1)
└─ Upsample ×2 → final H×W×C logits
softmax 를 픽셀마다 적용 → 예측 마스크. CrossEntropyLoss 를 픽셀 레벨로 계산.| 항목 | 전통 CNN (분류) | FCN (분할) |
|---|---|---|
| 최종 레이어 | Linear → Softmax (1‑D) | 1×1 Conv → Upsample → Pixel‑softmax (2‑D) |
| 파라미터 수 | 고정 (이미지당) | 비슷하지만 메모리 사용량은 해상도에 비례 |
| 출력 형태 | (B, C) | (B, C, H, W) |
| 라벨 종류 | 이미지 라벨 1개 | 픽셀 라벨 전체 (dense) |
| 장점 | 빠른 학습, 간단 | 공간 정보 보존, 경계 복원에 강함 |
| 구성 요소 | 역할 | 기본 손실식 |
|---|---|---|
| Generator (G) | 임의의 노이즈 z(또는 조건 y) 를 받아 가짜 이미지 x̂ = G(z, y) 를 생성한다. | L_G = - E_z[ log D(G(z)) ] – 판별자를 속이도록 학습 |
| Discriminator (D) | 입력 이미지가 실제인지 가짜인지 판단한다. | L_D = - E_x[ log D(x) ] - E_z[ log(1 - D(G(z))) ] – 실제는 1, 가짜는 0에 가깝게 학습 |
| 변형 | 특징 | 사용 목적 |
|---|---|---|
| Conditional GAN (cGAN) | 라벨 y 를 입력에 연결( concat / embedding ) | 조건부 이미지 생성 (예: “숫자 3” 이미지) |
| StyleGAN | 스타일 매핑 네트워크와 AdaIN 으로 고해상도·고품질 이미지 생성 | 인물·풍경 등 고품질 합성 |
| BigGAN | 대규모 클래스 수와 높은 차원의 라벨 임베딩 | 대규모 데이터셋(예: ImageNet)에서 향상된 다양성 |
| VAE‑GAN | VAE 의 인코더‑디코더 구조에 GAN 판별자를 결합 | VAE 의 모드‑콜랩스 완화 + 고품질 샘플 |
| Diffusion‑GAN | 확산 과정에 GAN 손실을 추가해 샘플링 속도 향상 | 빠른 추론 + 확산 모델의 안정성 |
G 가 만든 가짜 이미지를 입력 → 손실 L_D 최소화. G 로 만든 가짜 이미지를 D 에 입력 → D 가 “진짜”라고 판단하도록 손실 L_G 최소화. 이 과정을 교대로 여러 번 반복한다.
Forward (Noise) Process
원본 이미지 x₀ 에 가우시안 노이즈를 단계별(t = 1 … T)로 점진적으로 섞는다.
각 단계는
[
q(xt|x{t-1}) = \mathcal N\bigl(xt;\; \sqrt{\alpha_t}\,x{t-1},\;(1-\alpha_t)I\bigr)
]
여기서 α_t = 1‑β_t , β_t 는 사전 정의된 노이즈 스케줄.
한 단계만 사용해도
[
q(xt|x_0)=\mathcal N\bigl(x_t;\;\sqrt{\bar\alpha_t}\,x_0,\;(1-\bar\alpha_t)I\bigr)
]
(`\bar\alpha_t = ∏{s=1}^{t}\alpha_s`).
Reverse (Denoising) Process
ε_θ(x_t, t) 가 현재 단계의 노이즈를 추정한다. 학습 목표
ε 와 네트워크가 추정한 ε_θ 사이의 L2 손실을 최소화한다.| 구분 | DDPM (Stochastic) | DDIM (Deterministic) |
|---|---|---|
| 샘플링 단계 | T 단계 (보통 1000) | S 단계 (보통 50~200) |
| 확산 역전 방식 | μ + σ·z 로 무작위성 유지 | μ 만 사용 → deterministic |
| 품질/속도 | 높은 품질, 느림 | 빠른 속도, 품질 약간 감소(하지만 충분히 우수) |
| 적용 사례 | Stable Diffusion (텍스트‑조건) | Imagen, DDIM‑variant Stable Diffusion |
t 와 별도 인코더를 통해 쉽게 결합할 수 있다. 1×1 Conv 로 채널을 압축하고 Upsampling 으로 입력 해상도로 복원한다. Fully‑Connected 레이어를 두어 고정 차원의 벡터를 만든 뒤 softmax 로 클래스 확률을 출력한다. z 를 받아 가짜 이미지 x̂ = G(z) 를 만든다. 목표는 판별자를 속여 “실제”라고 판단하게 하는 것이다. forward diffusion 과정을 만들고, 학습된 노이즈 예측 네트워크를 이용해 reverse diffusion 로 순차적으로 노이즈를 제거하며 이미지를 복원한다. 텍스트‑조건(CLIP), 라벨‑조건 등 다양한 컨텍스트와 결합할 수 있다. | 분야 | 핵심 논문·리소스 | URL |
|---|---|---|
| Semantic Segmentation | “Fully Convolutional Networks for Semantic Segmentation” (Long et al., 2015) | https://arxiv.org/abs/1411.4038 |
| FCN 변형 | DeepLab‑v3+, PSPNet, U‑Net 등 | 다양한 구현이 GitHub에 공개 |
| GAN | “Generative Adversarial Networks” (Goodfellow et al., 2014) | https://arxiv.org/abs/1406.2661 |
| Conditional GAN | “Conditional Generative Adversarial Nets” (Mirza & Osindero, 2014) | https://arxiv.org/abs/1411.1784 |
| Diffusion | “Denoising Diffusion Probabilistic Models” (Ho et al., 2020) | https://arxiv.org/abs/2006.11239 |
| DDIM | “Denoising Diffusion Implicit Models” (Song et al., 2020) | https://arxiv.org/abs/2010.02502 |
| Latent Diffusion | “Latent Diffusion Models” (Rombach et al., 2022) | https://arxiv.org/abs/2112.10752 |
| Stable Diffusion | “Stable Diffusion” (Rombach et al., 2022) – HuggingFace diffusers | https://github.com/huggingface/diffusers |
다음 단계에서 구체적인 코드(예: U‑Net 기반 FCN, VAE‑latent diffusion, 혹은 Stable Diffusion 파인‑튜닝 등)를 원하시면 언제든 알려 주세요.