Paper Info
- Accepted on NIPS 2015
- Authors: Leon A. Gatys, Alexander S. Ecker, Matthias Bethge
- Affiliation: University of Tubingen
- arXiv link: https://arxiv.org/abs/1505.07376
- OpenReview link: https://papers.nips.cc/paper_files/paper/2015/hash/a5e00132373a7031000fd987a3c9f87b-Abstract.html
- Task: texture generation
- TLDR: object recognition task에 optimize된 CNN의 feature map에 대한 Gram matrix를 이용하여 texture generation
1. Brief Summary
Source image에 대해, 다음과 같은 방법을 통해 texture generation
1. Source image에 대한 CNN의 각 layer별 output을 구함
2. 1번에서 구한 output에 대해 Gram matrix를 계산
3. Random noise image에 대한 CNN의 각 layer별 output을 구함
4. 3번에서 구한 output에 대해 Gram matrix를 계산
5. 2번, 4번에서 구한 Gram matrix간의 mean-squared distance가 minimize되도록 random noise image update
2. Why Gram matrix?
해당 논문을 찬찬히 살펴보면 생각해볼 점들이 꽤 많음
(ex. CNN에서 spatial dimension을 맞춰주기 위한 zero padding이 야기할 수 있는 문제점 등)
하지만 가장 중요한 점은 왜 Gram matix를 쓰는지가 제일 중요한 key point라고 생각하기에, 이만 짚고 넘어감
먼저, 저자들이 reference로 삼은 previous work에서는 다음과 같은 방법으로 source image로부터 texture을 생성함
1. extract features of different sizes homogeneously from the source image
2. compute a spatial summary statistic on the feature responses to obtain a stationary description of the source image
3. find a new image with the same stationary description by performing gradient descent on a random image
기존 연구에서는 linear filter bank + carefully chosen summary statistics를 사용한 반면,
해당 논문은 CNN을 통해 구한 feature space + only one spatial summary statistic을 사용함
여기서 spatial summary statistic으로 feature responses간의 correlation을 이용
(feature responses간의 correlation = layer output의 Gram matrix, 용어의 정의로 따지자면 다른데 중요하지 않기에 넘어감)
그렇다면 spatial summary statistic으로 왜 Gram matrix를 사용하는지?만 이해하면 됨
Texture는 definition에 따라 stationary해야하기에, spatial information에 agnostic해야함
(Textures are per definition stationary, so a texture model needs to be agnostic to spatial information)
CNN을 통해 구한 feature responses는 spatial information을 가지고 있기에, 이들간의 correlations를 사용하여 spatial information을 날린다...라고 생각하면 됨.
즉, spatial summary statistic의 수단으로 Gram matrix를 사용한 것이지 'Gram matrix = texture'라고 생각하는 것은 잘못된 것
다시 한번 정리하자면
1. Texture의 정의상 stationary해야함 → spatial information에 agnostic해야함
2. CNN의 layer output인 feature responses는 spatial information을 가지고 있음
3. Spatial information 지우기 위해 feature responses간의 correlations (Gram matrix)를 이용함
(여기서 spatial information을 지우기 위해 다양한 방법들이 존재할 수 있으며, 해당 논문에서는 Gram matrix를 사용)
3. Conclusions
The author's conclusions
기존 연구에 비해서 texture generation 시간이 꽤 많이 걸린다...라는 점을 단점으로 짚고 있음
My Conclusion
예전 논문이라 그런지, 다양한 분석을 통해 재밌는 생각할 거리들을 던져준다는 점이 매우 재밌었음
하지만... 기존 연구의 framework를 그대로 가져다쓰고
CNN + Gram matrix로 잘된다!라는 걸 보여준게 다이다보니, contribution이 애매하다고 생각됨
물론 이 시기에는 이제 막 부흥하는 시기다보니, 이정도면 충분히 괜찮다고 생각되긴 함
추가적으로 아쉬운 점은 texture generation result에 대한 qualitative result만 있지, quantitative result가 없다는 것임
Rating
Good