Loss : 실제 값과 예측값의 차이를 수치화
Optimizer : Loss function을 줄여나가면서 학습하는 방법
[Super resolution에서 사용되는 Loss function]
최신 SR 모델 논문 : MSE LOSS, L1 Loss 주로 사용함
1) SRGAN : Perceptual Loss
“Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network”, 2017 CVPR”
Perceptual Loss = Adversarial Loss + Content Loss의 가중치 합
사전 지식
<GAN 의 Objective funtion>
Discriminator : 만들어낸 데이터가 실제 데이터 → 1 return / 가짜 Fake 데이터라면 → 0 return

실제 이미지를 실제로 예측
▶ D(x) = 1, log(D(x)) = 0
실제 이미지를 Fake로 예측
▶ D(x) = 0, log(D(x)) = - \infinity
Fake 이미지를 실제로 예측
▶ D(x) = 1, log(1-D(x))= -\infinity
Fake 이미지를 Fake로 예측
▶ D(x) = 0, log(1-D(x)) = 0
최댓값 : 0 / 최소값 = -\infinity
Discriminator가 최댓값 0 의 성능을 보여야함
Generator : Discriminator를 속이는 것이 목표

G가 만들어낸 fake 이미지를 실제로 예측했을 때의 방향으로 gradient descent 진행
<SRGAN 의 Objective funtion>
Discriminator

GAN 모델과 유사하게 진짜 이미지는 1로 return / Fake 이미지는 0으로 return함
최댓값 0의 성능을 보여야 함
Generator :


Perceptual Loss = Adversarial Loss + Content Loss의 가중치 합
Adversarial Loss = GAN에서의 Generator Loss 공식과 동일함
log(1-D)와 -log(D)는 동일 의미 / -log(D)가 학습 속도 더 빠름
Content Loss

사전 학습된 VGG19 가중치 사용 (기존 데이터의 표현을 잘 담고있기 때문에 사용)
- 활성화 함수를 통과하고 Max-Pooling Layer를 통과하기 직전의 데이터 = Feature Map
G가 만든 가짜 고해상도 이미지의 Feature Map, 진짜 고해상도 원본 이미지의 Feature Map의 차이를 구함
해당 Feature Map끼리의 MSE
2) CycleGAN : Cycle Loss
"Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks"

이미지의 모양을 바꾸진 못한다는 단점
픽셀 수준의 특징이 아니라, 전반적인 스타일을 가져오기 때문에 눈,코,입 같은 세부적인 정보를 가져오기엔 적합하지 않다고 생각함
3) Style Transfer : Content Loss & Style Loss
"Image Style Transfer Using Convolutional Neural Networks"

Content Loss - 일반적으로 1개의 layer를 적용시킴
low-level : 원본 이미지의 pixel을 단순히 reproduce 시키는 것
high-level : 일반적인 특징들을 뽑아 이미지가 추상화됨
▶ 해당 논문에서는 이미지의 전체적인 특징을 얻기 위해서 high-level의 layer를 사용해서 content loss에 사용했음. 그러나 얼굴 정보의 자세한 세부 특징들을 지녀야 하기 때문에 content loss에서는 low-level의 layer를 사용하는 것이 정보를 더 잘 추출할 수 있을 것이라고 생각
Style loss - 서로 다른 feature map간의 상관관계
사전학습된 VGG19의 features 사용함. high-level 부터 low-level까지 다양한 수준의 loss 추출
이미지가 VGG19를 거치면서 출력한 feature map = > noise image가 유사한 feature map을 갖도록 학습
style loss는 high-level의 layer가 이미지 구조를 더 잘 보존
+) Pix2Pix 는 매칭되는 paired image 가 없으면 활용 X
" Pix2Pix: Image-to-Image Translation with CGAN"
MSE loss 문제점
- 사람의 지각 능력을 이해하지 못함. (1 픽셀을 이동시키면 전혀 다른 해상도의 이미지라고 판단)
'AI > Computer Vision' 카테고리의 다른 글
| [3D] 3차원 좌표계 변환, World 좌표 → Camera 좌표 (0) | 2025.12.05 |
|---|---|
| [Yolov10] Custom Data 실습 코드 (1) | 2024.11.18 |
| [Vision Transformer(ViT)] 코드 설명 및 인자 정리 (0) | 2024.09.23 |
| [멀티모달] 이미지 캡션 생성 (0) | 2024.05.30 |
| [실전! 컴퓨터 비전을 위한 머신러닝] 06. 전처리 (1) | 2023.10.28 |