여기에서 쓰이는 방법들은 Keras API를 기준으로 작성합니다.


일단 deconvolution = conv2Dtranspose와 upsampling의 공통점은 pooling등의 연산으로 인해 줄어든

이미지를 다시 원이미지로 키울 때 사용됩니다.


upsampling은 keras에 내장된 라이브러리를 따라가서 코드를 보시면

image_resize를 불러서 단지 size만 맞춰주게 됩니다.


( def call에서 K.resize_images를 부르는 것을 볼 수 있다.)


반면에 deconvolution은 weight를 가진 filter를 사용해서 resize하고,

이 weight를 업데이트(?)하는 것 같습니다. 잘모르겠네요. 

이에 대한 설명은 아래 사진으로 대체합니다. 가장 직관적인 설명인 것 같습니다.

(출처 : https://datascience.stackexchange.com/questions/6107/what-are-deconvolutional-layers)