Fred, You mean using the gradient of a valid convolution wrt the input to get a full convolution? I think you'd still have to crop the output if you wanted input and output to be the same size, but I'll give that a try. I suppose pad='half' in conv2D implements a simple padding scheme instead of cropping the gradient?
I should clarify for nouiz and anyone else reading this that in the U net paper they perform only valid convolutions, and their output ends up being smaller than their input (much smaller if the U part of the network is deep). I think this works best for things like microscopy, where your image is a small region of interest in a larger field, and you're probably using overlapping ROIs to cover the full field. In other applications, where you're not looking at an ROI, you might want your output to be the same size as your input. So if you're implementing the U net paper as is you don't need to pad the convolutions, you need to crop the skip connections. On Sunday, July 17, 2016 at 9:04:36 PM UTC-4, nouiz wrote: > > Just a quick comment, don't pad. You can use the gradient of the > convolution instead. It will be faster. Lasagne does it correctly (as > probably other framework that have some special layer for this). > > Fred > > On Sat, Jul 16, 2016 at 3:43 PM, Robb Brown <[email protected] > <javascript:>> wrote: > >> Yes, you can do it. Use conv2d + maxpool or strided conv2d on the way >> down. >> >> On the way up you need to upsample (T.extra_ops.repeat), concatenate, >> then (de)convolve. Padding the convolutions is probably the trickiest part. >> >> Lasagne's Upscale2DLayer, concat and Deconv2DLayer work well for the >> upward arm. >> >> >> >> On Wednesday, July 13, 2016 at 4:27:35 PM UTC-4, >> [email protected] wrote: >>> >>> Hello Theano users, >>> >>> Would U-Net architecture be implementable in Theano, or are some >>> specific layer models missing? >>> http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net/ >>> >>> Anybody could help getting me started or pointing me to some similar >>> architecture? >>> >>> Best, >>> Sébastien >>> >> -- >> >> --- >> You received this message because you are subscribed to the Google Groups >> "theano-users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- --- You received this message because you are subscribed to the Google Groups "theano-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
