3 questions about the diagram of the Unet


I have 3 questions about the diagram:

  • In the diagram, all layers except the last one are represented as ResidualConvBlocks, but in the code, only the first layer (Init.conv) actually sets is_res to true. Should all other except Init.conv have a different icon/shape to reflect that they are in fact not residual?

  • In the diagram, up0 is represented in the same way as UnetUp, with 1 ConvTranspose2d and 2 ResidualConvBlocks. However in code it is only a single ConvTranspose2d with a group norm. Should it have a different icon/shape in the diagram?

  • The last layer in the diagram is represented as two ConvTranspose2d, but in code they are Conv2d. Should their color be bright blue instead of dark blue?

Thank you,

Hi samraul,

Codewise, the layers except the last one are all ResidualConvBlock objects, even if only for Init.conv is_res is set to True. The reason they are called ResidualConvBlocks may be that they allow for residual connections between the encoder and decoder, as described here.

Why up0 does not have the two ResidualConvBlocks shown in the diagram in code I do not know. Nor why the output blocks are portrayed in the diagram as ConvTranspose2d when they are Conv2d in code. I am not sure who to report this to, maybe @Mubsi can have a look?

In any case, thanks for reporting!