There are a many examples of 2D Convolutional Neural Networks, but i was trying to build one that works on 3D data. Most common Layers (e.g. ConvolutionLayer) work on any dimension, however the DeconvolutionLayer only works in 2D.
Does anyone know a solution/workaround for this?
One option i found was to use a ResizeLayer which has no trainable parameters. However this also does not work in 3D. So down-scaling is possible in 3D but up-scaling I cannot find a method for.
Using a combination of ResizeLayer and Convolution layer in 2D i was able to get similar results as using a DeconvolutionLayer in a UNET. With this in mind and the use of TranposeLayers, FlattenLayers, ResizeLayers and ReshapeLayers I was able to generate the needed behaviour in 3D. Although not the most elegant solution it seem to do its job.