728x90

GaN 7

[Pytorch] CycleGAN 코드 구현

CycleGAN 같은 경우엔 코드 구현을 해볼 필요가 있겠다는 생각이 들어서 스크래치로 구현을 해보았습니다 (대략 3달 전에 구현했는데 게을러서 지금에야 포스팅을 작성하게 되었습니다 ㅎㅎ) . 최대한 논문만 참고해서 구현을 하도록 노력했지만, 실제로 official code를 보지 않고서는 성능 재현이 어려운 부분도 있었습니다. 일례로, 논문에 나와있는 대로 구현할 경우 discriminator output size가 원하는 크기로 나오지 않거나 마지막 convolution layer의 경우 block이 아닌데 block으로 논문에 적어두거나 하는 문제가 있었습니다. 직접 구현을 해보니 구현을 해야만 체감할 수 있는 부분들이 있어서 즐거운 경험이었습니다. 포스팅은 구현된 코드 및 그에 따른 깨달음, 실험..

[Generative Models] StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation (2018)

2018년 CVPR에 발표된 논문입니다. 기존의 2개의 도메인 간 image to image translation이 이루어지던 것을 넘어 여러 도메인 간의 translation 방법론을 제안한 논문으로, 네이버 Clova AI Research에서 수행한 연구입니다. 읽으면서 아이디어가 굉장히 심플하면서도 참신하다는 생각이 들었습니다. 실제 인물을 웹툰 캐릭터로 변환하는 과정 등에 적용이 가능할 것 같습니다. 어떤 식으로 training이 되는지는 직접 코드를 구현해봐야 더 알 수 있겠단 생각이 들어 추후 코드 구현까지 수행해볼 예정입니다. 그럼 정리한 부분에 있어서 오류가 있으면 댓글 부탁드립니다. 0. Abstract remarkabel success in image-to-image translatio..

[Generative Models] Image-to-Image Translation with Conditional Adversarial Networks (2017)

Image-to-Image Translation with Conditional Adversarial Networks 이번에 리뷰할 논문은 2017년 Image-to-Image(I2I) Translation 분야에 범용적으로 적용이 가능한 모델인 pix2pix를 제안한 논문입니다. 기존의 연구는 I2I translation task의 각 sub task에 특화된 loss를 제안하는 경우가 다수였습니다. 하지만 이 논문에서는 cGAN Loss와 L1 Loss를 함께 적용하면서 다양한 I2I translation task에 적용 가능한 네트워크를 제안하였고, 양질의 생성 산출물을 보여주었습니다. 보다 범용적이고 간단한 I2I translation 네트워크를 제안했다는 것이 이 논문의 key contributi..

[Generative Models] Conditional Generative Adversarial Nets (2014)

Conditional Generative Adversarial Nets (2014) 오늘은 conditional generative adversarial nets (이하, cGANs) 논문을 읽고 리뷰하겠습니다. 제안한 프레임워크에 대해 심도있게 분석이 담겨있진 않아서 다소 아쉽긴 했으나, input으로 condition을 같이 넣어주는 매우 간단한 방법으로 conditional distribution을 추정할 수 있도록 하고 이로써 생성 결과를 control할 수 있다는 장점을 밝힌 논문입니다. 하기한 내용에 오류가 있거나 궁금한 사항이 있으실 경우 댓글 부탁드립니다. 1. Introduction GAN: 기존의 generative model의 computational costs를 매우 간소화시키고, ..

[Generative Models] Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks (2017)

이번에 리뷰할 논문은 CycleGAN으로, 2017년 ICCV에 발표된 논문입니다. inverse mapping과 cycle consistency loss를 통해 unsupervised image-to-image translation의 성능을 끌어올린 아키텍처로 인용횟수 또한 12000회를 웃돕니다. 학습 과정의 안정성을 개선할 뿐 아니라 unsupervised learning으로 아키텍처의 generality를 높였다는 점에서 그 기여가 큰 연구입니다. 하기한 내용에 부족한 부분 혹은 오류가 있다면 댓글로 언제든 말씀 부탁드립니다. 1. Introduction image-to-image translation: 이미지 쌍을 활용해 입력 이미지와 출력 이미지 간의 mapping을 학습 하지만, 이미지 쌍 ..

[Generative Models] Unsupervised Representation Learning With Deep Convolutional Generative Adversarial Networks (2016)

오늘은 DCGAN 논문을 리뷰해보겠습니다. DCGAN의 경우에 구조나 사용된 기법들이 아주 새롭다고 할 수는 없지만 representation learning으로서 GAN이 어떻게 기능하는지 실험을 진행했다는 점에서 흥미롭게 볼 수 있었습니다. 하기한 내용은 혼자 공부하면서 적은 것이라 틀린 부분이 있다면 말씀 부탁드립니다! 1. Introduction GAN을 학습시키면서 good image representation을 구축하는 방법을 제안함. 이후 Generator(이하 G)와 discriminator(이하 D) 네트워크의 일부분을 지도학습의 feature extractor로 재사용하는 방법을 제안. 기존 GAN의 경우에는 불안정한 학습으로 인한 이상한 출력을 생성한다는 단점이 존재했음. (DCGAN..

[Generative Models] Generative Adversarial Networks (2014)

Generative Adversarial Networks (NIPS, 2014) 무려 8년 전에 나온 논문이지만, 현재 생성 모델의 기초가 되고 있는 Generative Adversarial Networks (이하, GAN)의 논문을 읽고 리뷰를 해보았습니다. 혼자 공부하는 용도로 적은 것이 크고 논문 이외에 별도의 참고자료는 참고하지 않았으므로 흐름 상 놓친 부분 혹은 하기한 사항에 오류가 있을 시 댓글 부탁드립니다. 1. Introduction deep learning이 Discriminative task에서 괄목할 만한 성과를 보이고 있음 그러나 generative models에서는 크게 다음과 같은 두 가지 이유 때문에 deep learning의 적용이 어려움 1) difficulty of app..

DeepLearning/Basic 2022.04.05
728x90