728x90

Generative Models 4

[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] 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] 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..

728x90