[2022 국민대학교 겨울 인공지능 특강] 6주차 3일 학습 내용

하지원·2022년 2월 24일
0
post-thumbnail

이번 시간에 배울 컴퓨터 비전 모델은 CycleGAN이라는 것이다.
CycleGAN은 쌍을 이루지 않은(unpaired) 이미지 데이터셋으로 학습 가능한 이미지에 이미지 사이의 이동(image-to-image translation) 방식을 제안한다. 한 쌍으로 묶이지 않은 데이터셋을 학습할 수 없는 Pix2Pix의 문제점을 해결한 모델이다.

다음과 같이 그림을 사진 처럼 바꿔주거나 사진 속의 대상을 다른 비슷한 대상으로 변환하거나, 그 반대로 적용할 수 있다.

CycleGAN이 작동하는 방식을 보자면 이미지 데이터 x가 주어졌을 때 타겟 도메인 Y의 특성으로 바꾸어 Y에 있는 그럴싸한 이미지로 바꾸는 것이다.

위 식에서 x, y는 무작위로 선택된 데이터이므로 서로 매칭되어있지 않다. 그러므로 어떤 데이터가 들어왔을 때 어떤 데이터가 출력되어야 하는지 알 수 없는 상태다.


위와 같이 입력 데이터 x와 매칭되는 y데이터가 없을 경우 Y domain의 어떤 이미지든 학습하도록 제시되어 있다. 즉, x데이터의 내용을 완전히 바꿀 수 있기 때문에 추가적인 제약 조건이 필요하다.

CycleGAN에서는 이러한 문제를 해결하기 위해 Cycle-consistence loss를 사용한다고 한다.

이렇게 이미지를 변환했을 때 다시 원본으로 재구성(reconstruction) 될 수 있는 정도로만 변환하는 것이다. 두 개의 GAN을 학습시키며, 생성자와 판별자 모두 2개라고 이해하면 된다.

CycleGAN은 한 쌍으로 묶이지 않은 데이터를 학습하기 위해 cycle loss를 사용한다.

이 식에서 GAN loss는 특정한 도메인의 이미지로 변환되어 그럴싸한 이미지가 되도록 해주는 식이고, cycle loss는 원본 이미지로 다시 돌아올 수 있도록 해주는 식이다.
Adversarial loss는 target의 있을 법한 이미지를 생성하도록 해주며, cycle-consistence loss는 입력 데이터와 매칭되는 image-to-image translation 결과 이미지를 찾을 수 있도록 해준다.

profile
국민대 전자공학부, 서강대학교 석사과정, 크래프톤 정글 2기

0개의 댓글