Thanks for the suggestion. 
However, I ended up using simple bilinear upsampling  (with necessary cropping to match the input image size). To my surprise, it actually produced good results. On the contrary, using transposed convolution made training unstabe (maybe I need to do better parameter tuning to make it work).