UnetBasicBlock
does not use bias for convolutions
#5644
function2-llx
started this conversation in
General
Replies: 1 comment 2 replies
-
Find some plausible explanation from the Internet: there's usually a normalization layer after the convolution, which has a bias term. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I find that the implementation of
UnetBasicBlock
does not use bias for its convolutions. E.g., it uses the default value forbias
(by not specifying it) :MONAI/monai/networks/blocks/dynunet_block.py
Lines 142 to 152 in 00a6434
while the default value of
bias
isFalse
according to the definition of theget_conv_layer
function.MONAI/monai/networks/blocks/dynunet_block.py
Lines 267 to 277 in 00a6434
However, the nnU-Net (the model that
DynUNet
is based on) uses bias by default: https://github.com/MIC-DKFZ/nnUNet/blob/aa53b3b87130ad78f0a28e6169a83215d708d659/nnunet/network_architecture/generic_UNet.py#L112-L113I'm also not able to find anything mentioning this behavior in the paper Optimized U-Net for Brain Tumor Segmentation (by searching text
bias
).On the other hand, however, the implementation of most of the convolution-based models (e.g., ResNet, UperNet) do not use bias.
Could anyone please give any explanation on this? Thanks!
Beta Was this translation helpful? Give feedback.
All reactions