이전 논문은 이미지 하나당 optimization을 해야했다면 이 논문은 이런 점을 보완했다. (2015) A Neural Algorithm of Artistic Style
각각의 loss가 있다. style 이미지가 주어지면 style 예측 네트워크 P에서 S를 추출한다.
이게 style tranfer 네트워크 T에 콘텐츠 이미지 (입력이미지) 입력된다.
콘텐츠 이미지와 S가 T에 더해져 스타일이 입혀진 이미지가 생성된다.
- Style loss
스타일이 입혀진 이미지 VS 스타일 이미지
- Content loss
스타일이 입혀진 이미지 VS 콘텐츠 이미지
각각 거리를 최소화하는 방식으로 작동하기에, 콘텐츠의 내용을 잃지 않으면서 스타일을 학습할 수 있는 것이다.
두 이미지 Content가 유사하다 : 고 레벨 피쳐(추상적인 특징)의 거리가 가깝다. (유클리디언 거리)
-> 이미지에서 content가 담길, 의미가 있는? 추상화 된 정보들은 하이레벨 피쳐에서 얻어지게끔 학습되기 때문에
두 이미지 Style이 유사하다. : 저 레벨 피쳐(질감같은 세세한 특징)가 같은 공간통계를 동유한다.
-> 페인팅 style이 texture라는 가정하에, texture가 유사하단 건 저차원 공간상에 Gram matrix에 의해 표현되는 정보가 유사하단 말. Gram matrix는 skip
여하튼 content loss는 고레벨의 유클리디안 거리, style loss는 gram matrix에 의해 표현되는 저차원 공간상의 통계 정보 상의 거리로 표현돼서 이 둘을 조합한게 loss이다!
갑자기 이전의 관련 연구들을 소개한다. 도움이 될 것 같아 나도 소개한다.
a) 기존의 방식은 이미지를 반복적으로 업데이트 해서 텍스쳐를 합성하는 방식.
-> 너무 느렸다.
b) 후속작은 style transfer network인 T를 도입, 콘텐츠 이미지가 스타일이 입혀진체 렌더링된 이미지가 T(c)이다. T는 CNN의 인코딩/디코딩 구조를 이용한다. 여기에서 사용된 loss는 (1)에서 x만 없으면 같다.
-> 여기서 문제점은 각 페인팅 스타일마다 네트워크가 분리되어야 한다는 것이다.
c) 페인팅 스타일은 공통의 텍스쳐?나 색상, 의미들을 공유한다. 모든 페인팅에서 이런 표현을 공유한다면 풍부한 표현을 담아 낼 수 잇을 것이다. 이를 위한 기술! conditional instance normalization 이라는 각 페인팅 스타일 마다 고유한 선형 변환을 도입! 이 단순한 트릭을 인코딩/디코딩 구조에 도입했다.
-> 여전히 한계가 있었다. 훈련된 스타일에 한해서만 작동한다는 문제점. 일반적인 스타일에선 작동하지 않는다는 문제...
어떻게 해결할 것인가? 2편에 계속