Learning from Simulated
and Unsupervised Images
through Adversarial
Training
Ashish Shrivastava, Tomas Pfister, Oncel
Tuzel, Josh Susskind, Wenda Wang, Russ
Webb
@Mikibear_ 논문 정리 161227
애플이 arXiv에 논문을
애플이 arXiv에 논문을
애플이 arXiv에 논문을
애플이 arXiv에 논문을
애플이 arXiv에 논문을
애플이 arXiv에 논문을
아이디어,
실제 사진의 data
+
컴퓨터 그래픽스로 생성된 유사한 data
더 좋은 Generation Result
Adversarial Learning
We develop a method for S+U learning that uses an adversarial network
similar to Generative Adversarial Networks (GANs), but with synthetic images
as inputs instead of random vectors.
끝!...이라고 하면 욕먹겠죠
Generator Model의 Input으로 random vector
대신에 synthetic image를 사용함.
사실 이 논문은 Goodfellow의
GAN(2014)와 A Radford의
DCGAN(2016)에 대해 알고
있으면, 이와 크게 다르지
않습니다.
GAN? DCGAN?
이에 대한 설명은 데브시스터즈의 김태훈 씨의 한국 PyCON 2016에서의 멋진
발표가 있었으니, 링크로 대체합니다.
김태훈: 지적 대화를 위한 깊고 넓은 딥러닝 (Feat. TensorFlow)
https://www.youtube.com/watch?v=soJ-wDOSCf4&t=1s
좀 더 관심이 가시는 분은 이 두 논문을 참고하길 바랍니다.
GAN https://arxiv.org/abs/1406.2661
DCGAN https://arxiv.org/abs/1511.06434
그래도 적대적 학습(Adversarial
Learning)에 대해 간단하게 설명하자면,
진짜 같은 사진을
만들려는 Generator
진짜와 가짜를
구분하려는
Discriminator 그림은 제 논문에서 (...)
진짜 같은 사진을
만들려는 Generator
진짜와 가짜를
구분하려는
Discriminator
Generator의 Objective Term에 Discriminator의 결과를
포함시키고, 이 둘을 번갈아가면서 학습을 시키면
이런 결과가...
이 사진들은 모두 인공적으로 생성된 침실
사진입니다.
(Figure from DCGAN paper)
그럼 애플의 이 논문은
정확히 차이가 뭔가?
DCGAN은 Generator의 Input vector를 random value로 주었고, 이 논문은 아니지만 그건 일단 넘어가도록 하죠.
아이디어,
실제 사진의 data
+
컴퓨터 그래픽스로 생성된 유사한 data
더 좋은 Generation Result
Adversarial Learning
Simulated+Unsupervised,
속칭 SimGAN
Generator 부분
Discriminator 부분
Refiner?
이게 거의 유일하게 '결정적으로' 다른 부분
같은데...
Refiner… is the kind of network
Refiner… is the kind of network
컴퓨터 그래픽으로 생성된 Synthetic
Image
그냥 진짜 Image
(직접적으로 Refiner의
Input으로 들어가진
않습니다.)
좀 더 진짜 같아보이는 Refined Image
(Refined Image는 가짜 이미지)
중요한 건, 역시나 Loss
Refiner Network의 Loss
function입니다
두 가지 Term으로 이루어져
있네요.
Adversarial loss입니다.
Discriminator에서 오는 loss죠. 전
논문에서도 많이 봤던 거네요.
?????????
아… 별 거 아니네요. L1 Norm입니다.
Synthetic Image와 Refined Image는 별 차이가 없어야
한다고.
결론,
'진짜 같은 이미지를
생성할거야!'
'근데, 원래 Input으로 주어졌던
사진이랑 비슷한 이미지를
생성할거야!'
여기서 끝나면 논문이
허전해요...
- Local Adversarial Loss
- Discrimiator learning using
a History
- Local Adversarial Loss
"When we train a single strong discriminator network, the refiner network tends to over-emphasize certain
image features to fool the current discriminator network, leading to drifting and producing artifacts."
:= Refiner를 뼈빠지게 학습시켜놓으니까 얘가
Discriminator가 헛짓해서 너무 학습을
못했네요
'좋은 전역(gobal)
Discrimiator 찾기가 너무
힘들었어요. 으허헝 ㅠㅠ'
그럼 안 찾으면 되죠.
"좋은 Global discriminator를 찾지 못했지만,
대신 Input Image를 Local로 쪼갠 Patches를
학습시키는 Local Patch Discriminator를
써보았습니다."
그럼 안 찾으면 되죠.
"좋은 Global discriminator를 찾지 못했지만,
대신 Input Image를 Local로 쪼갠 Patches를
학습시키는 Local Patch Discriminator를
써보았습니다. 근데 더 낫더라구요."
Discriminator에 의한 adversarial loss는
각각 patches에 대한 cross-entropy loss의
합으로 재정의되었습니다.
- Discrimiator learning using
a History
"Another problem of adversarial training is
that the discriminator network only focuses on the latest refined images."
:= Discriminator가 멍청해서 예전에 학습했던
걸 까먹어요...
그럼 예전에 보여줬던 거 또 보여주죠, 뭐…
(복습하면 되겠지...)
실험 결과
Visual Turing Test (...)
And so on...
잘 된다네요
(근데 왜 DCGAN만 썼을 때하고는 비교를 안 했을까요)
사견
- GAN 설계와 학습에 있어 짜잘한 팁
- 어느 정도의 Baseline이 있는
Generative Training
- iPaper, 혁신은 없었다
https://arxiv.org/pdf/1612.07
828v1.pdf
틀린 내용이 있거나 중요한데 빠져있는 경우 알려주세요!
@mikibear

Paper Reading : Learning from simulated and unsupervised images through adversarial training