Following your advice i tried to copy with .weight and .bias, but I fail to get results.
After the loading the state dict of a model that only has 1 branch (called branch 0), branch 0 achieves the same result as it should, if i disable the other branches during forward prop. So that branch is confirmed to have correct weights and biases.
But if i allow the images to also go through the branch 1 and branch 2 (which should have the same weights/biases), the performance goes down greatly, meaning I failed to copy the weights and biases, or there could be something else Im missing.
I used the following code to make sure i take into account every parameter:
        for name, child in model.named_children():
            for name2, params in child.named_parameters():
                print(name, name2)

Then a wrote a pretty long manual copy code:
(please ignore incorrect comment names of resnet parts)
copy branch 0 -> branches 1/2
        with torch.no_grad():
            # copy to branch 1
            ## block 0
            ### copy bottleneck 0
            model.branches[1][0][0].conv1.weight.        copy_(model.branches[0][0][0].conv1.weight)
            model.branches[1][0][0].bn1.weight.          copy_(model.branches[0][0][0].bn1.weight)
            model.branches[1][0][0].bn1.bias.            copy_(model.branches[0][0][0].bn1.bias)
            model.branches[1][0][0].conv2.weight.        copy_(model.branches[0][0][0].conv2.weight)
            model.branches[1][0][0].bn2.weight.          copy_(model.branches[0][0][0].bn2.weight)
            model.branches[1][0][0].bn2.bias.            copy_(model.branches[0][0][0].bn2.bias)
            model.branches[1][0][0].conv3.weight.        copy_(model.branches[0][0][0].conv3.weight)
            model.branches[1][0][0].bn3.weight.          copy_(model.branches[0][0][0].bn3.weight)
            model.branches[1][0][0].bn3.bias.            copy_(model.branches[0][0][0].bn3.bias)
            model.branches[1][0][0].downsample[0].weight.copy_(model.branches[0][0][0].downsample[0].weight)
            model.branches[1][0][0].downsample[1].weight.copy_(model.branches[0][0][0].downsample[1].weight)
            model.branches[1][0][0].downsample[1].bias.  copy_(model.branches[0][0][0].downsample[1].bias)
            ### bottleneck 1
            model.branches[1][0][1].conv1.weight.copy_(model.branches[0][0][1].conv1.weight)
            model.branches[1][0][1].bn1.weight.  copy_(model.branches[0][0][1].bn1.weight)
            model.branches[1][0][1].bn1.bias.    copy_(model.branches[0][0][1].bn1.bias)
            model.branches[1][0][1].conv2.weight.copy_(model.branches[0][0][1].conv2.weight)
            model.branches[1][0][1].bn2.weight.  copy_(model.branches[0][0][1].bn2.weight)
            model.branches[1][0][1].bn2.bias.    copy_(model.branches[0][0][1].bn2.bias)
            model.branches[1][0][1].conv3.weight.copy_(model.branches[0][0][1].conv3.weight)
            model.branches[1][0][1].bn3.weight.  copy_(model.branches[0][0][1].bn3.weight)
            model.branches[1][0][1].bn3.bias.    copy_(model.branches[0][0][1].bn3.bias)
            ### bottleneck 2
            model.branches[1][0][2].conv1.weight.copy_(model.branches[0][0][2].conv1.weight)
            model.branches[1][0][2].bn1.weight.  copy_(model.branches[0][0][2].bn1.weight)
            model.branches[1][0][2].bn1.bias.    copy_(model.branches[0][0][2].bn1.bias)
            model.branches[1][0][2].conv2.weight.copy_(model.branches[0][0][2].conv2.weight)
            model.branches[1][0][2].bn2.weight.  copy_(model.branches[0][0][2].bn2.weight)
            model.branches[1][0][2].bn2.bias.    copy_(model.branches[0][0][2].bn2.bias)
            model.branches[1][0][2].conv3.weight.copy_(model.branches[0][0][2].conv3.weight)
            model.branches[1][0][2].bn3.weight.  copy_(model.branches[0][0][2].bn3.weight)
            model.branches[1][0][2].bn3.bias.    copy_(model.branches[0][0][2].bn3.bias)
            ### bottleneck 3
            model.branches[1][0][3].conv1.weight.copy_(model.branches[0][0][3].conv1.weight)
            model.branches[1][0][3].bn1.weight.  copy_(model.branches[0][0][3].bn1.weight)
            model.branches[1][0][3].bn1.bias.    copy_(model.branches[0][0][3].bn1.bias)
            model.branches[1][0][3].conv2.weight.copy_(model.branches[0][0][3].conv2.weight)
            model.branches[1][0][3].bn2.weight.  copy_(model.branches[0][0][3].bn2.weight)
            model.branches[1][0][3].bn2.bias.    copy_(model.branches[0][0][3].bn2.bias)
            model.branches[1][0][3].conv3.weight.copy_(model.branches[0][0][3].conv3.weight)
            model.branches[1][0][3].bn3.weight.  copy_(model.branches[0][0][3].bn3.weight)
            model.branches[1][0][3].bn3.bias.    copy_(model.branches[0][0][3].bn3.bias)
            ### bottleneck 4
            model.branches[1][0][4].conv1.weight.copy_(model.branches[0][0][4].conv1.weight)
            model.branches[1][0][4].bn1.weight.  copy_(model.branches[0][0][4].bn1.weight)
            model.branches[1][0][4].bn1.bias.    copy_(model.branches[0][0][4].bn1.bias)
            model.branches[1][0][4].conv2.weight.copy_(model.branches[0][0][4].conv2.weight)
            model.branches[1][0][4].bn2.weight.  copy_(model.branches[0][0][4].bn2.weight)
            model.branches[1][0][4].bn2.bias.    copy_(model.branches[0][0][4].bn2.bias)
            model.branches[1][0][4].conv3.weight.copy_(model.branches[0][0][4].conv3.weight)
            model.branches[1][0][4].bn3.weight.  copy_(model.branches[0][0][4].bn3.weight)
            model.branches[1][0][4].bn3.bias.    copy_(model.branches[0][0][4].bn3.bias)
            ### bottleneck 5
            model.branches[1][0][5].conv1.weight.copy_(model.branches[0][0][5].conv1.weight)
            model.branches[1][0][5].bn1.weight.  copy_(model.branches[0][0][5].bn1.weight)
            model.branches[1][0][5].bn1.bias.    copy_(model.branches[0][0][5].bn1.bias)
            model.branches[1][0][5].conv2.weight.copy_(model.branches[0][0][5].conv2.weight)
            model.branches[1][0][5].bn2.weight.  copy_(model.branches[0][0][5].bn2.weight)
            model.branches[1][0][5].bn2.bias.    copy_(model.branches[0][0][5].bn2.bias)
            model.branches[1][0][5].conv3.weight.copy_(model.branches[0][0][5].conv3.weight)
            model.branches[1][0][5].bn3.weight.  copy_(model.branches[0][0][5].bn3.weight)
            model.branches[1][0][5].bn3.bias.    copy_(model.branches[0][0][5].bn3.bias)

            ## block1
            ### bottleneck 0
            model.branches[1][1][0].conv1.weight.        copy_(model.branches[0][1][0].conv1.weight)
            model.branches[1][1][0].bn1.weight.          copy_(model.branches[0][1][0].bn1.weight)
            model.branches[1][1][0].bn1.bias.            copy_(model.branches[0][1][0].bn1.bias)
            model.branches[1][1][0].conv2.weight.        copy_(model.branches[0][1][0].conv2.weight)
            model.branches[1][1][0].bn2.weight.          copy_(model.branches[0][1][0].bn2.weight)
            model.branches[1][1][0].bn2.bias.            copy_(model.branches[0][1][0].bn2.bias)
            model.branches[1][1][0].conv3.weight.        copy_(model.branches[0][1][0].conv3.weight)
            model.branches[1][1][0].bn3.weight.          copy_(model.branches[0][1][0].bn3.weight)
            model.branches[1][1][0].bn3.bias.            copy_(model.branches[0][1][0].bn3.bias)
            model.branches[1][1][0].downsample[0].weight.copy_(model.branches[0][1][0].downsample[0].weight)
            model.branches[1][1][0].downsample[1].weight.copy_(model.branches[0][1][0].downsample[1].weight)
            model.branches[1][1][0].downsample[1].bias.  copy_(model.branches[0][1][0].downsample[1].bias)
            ### bottleneck 1
            model.branches[1][1][1].conv1.weight.copy_(model.branches[0][1][1].conv1.weight)
            model.branches[1][1][1].bn1.weight.  copy_(model.branches[0][1][1].bn1.weight)
            model.branches[1][1][1].bn1.bias.    copy_(model.branches[0][1][1].bn1.bias)
            model.branches[1][1][1].conv2.weight.copy_(model.branches[0][1][1].conv2.weight)
            model.branches[1][1][1].bn2.weight.  copy_(model.branches[0][1][1].bn2.weight)
            model.branches[1][1][1].bn2.bias.    copy_(model.branches[0][1][1].bn2.bias)
            model.branches[1][1][1].conv3.weight.copy_(model.branches[0][1][1].conv3.weight)
            model.branches[1][1][1].bn3.weight.  copy_(model.branches[0][1][1].bn3.weight)
            model.branches[1][1][1].bn3.bias.    copy_(model.branches[0][1][1].bn3.bias)
            ### bottleneck 2
            model.branches[1][1][2].conv1.weight.copy_(model.branches[0][1][2].conv1.weight)
            model.branches[1][1][2].bn1.weight.  copy_(model.branches[0][1][2].bn1.weight)
            model.branches[1][1][2].bn1.bias.    copy_(model.branches[0][1][2].bn1.bias)
            model.branches[1][1][2].conv2.weight.copy_(model.branches[0][1][2].conv2.weight)
            model.branches[1][1][2].bn2.weight.  copy_(model.branches[0][1][2].bn2.weight)
            model.branches[1][1][2].bn2.bias.    copy_(model.branches[0][1][2].bn2.bias)
            model.branches[1][1][2].conv3.weight.copy_(model.branches[0][1][2].conv3.weight)
            model.branches[1][1][2].bn3.weight.  copy_(model.branches[0][1][2].bn3.weight)
            model.branches[1][1][2].bn3.bias.    copy_(model.branches[0][1][2].bn3.bias)

            # copy to branch 2
            ## block 0
            ### copy bottleneck 0
            model.branches[2][0][0].conv1.weight.        copy_(model.branches[0][0][0].conv1.weight)
            model.branches[2][0][0].bn1.weight.          copy_(model.branches[0][0][0].bn1.weight)
            model.branches[2][0][0].bn1.bias.            copy_(model.branches[0][0][0].bn1.bias)
            model.branches[2][0][0].conv2.weight.        copy_(model.branches[0][0][0].conv2.weight)
            model.branches[2][0][0].bn2.weight.          copy_(model.branches[0][0][0].bn2.weight)
            model.branches[2][0][0].bn2.bias.            copy_(model.branches[0][0][0].bn2.bias)
            model.branches[2][0][0].conv3.weight.        copy_(model.branches[0][0][0].conv3.weight)
            model.branches[2][0][0].bn3.weight.          copy_(model.branches[0][0][0].bn3.weight)
            model.branches[2][0][0].bn3.bias.            copy_(model.branches[0][0][0].bn3.bias)
            model.branches[2][0][0].downsample[0].weight.copy_(model.branches[0][0][0].downsample[0].weight)
            model.branches[2][0][0].downsample[1].weight.copy_(model.branches[0][0][0].downsample[1].weight)
            model.branches[2][0][0].downsample[1].bias.  copy_(model.branches[0][0][0].downsample[1].bias)
            ### bottleneck 1
            model.branches[2][0][1].conv1.weight.copy_(model.branches[0][0][1].conv1.weight)
            model.branches[2][0][1].bn1.weight.  copy_(model.branches[0][0][1].bn1.weight)
            model.branches[2][0][1].bn1.bias.    copy_(model.branches[0][0][1].bn1.bias)
            model.branches[2][0][1].conv2.weight.copy_(model.branches[0][0][1].conv2.weight)
            model.branches[2][0][1].bn2.weight.  copy_(model.branches[0][0][1].bn2.weight)
            model.branches[2][0][1].bn2.bias.    copy_(model.branches[0][0][1].bn2.bias)
            model.branches[2][0][1].conv3.weight.copy_(model.branches[0][0][1].conv3.weight)
            model.branches[2][0][1].bn3.weight.  copy_(model.branches[0][0][1].bn3.weight)
            model.branches[2][0][1].bn3.bias.    copy_(model.branches[0][0][1].bn3.bias)
            ### bottleneck 2
            model.branches[2][0][2].conv1.weight.copy_(model.branches[0][0][2].conv1.weight)
            model.branches[2][0][2].bn1.weight.  copy_(model.branches[0][0][2].bn1.weight)
            model.branches[2][0][2].bn1.bias.    copy_(model.branches[0][0][2].bn1.bias)
            model.branches[2][0][2].conv2.weight.copy_(model.branches[0][0][2].conv2.weight)
            model.branches[2][0][2].bn2.weight.  copy_(model.branches[0][0][2].bn2.weight)
            model.branches[2][0][2].bn2.bias.    copy_(model.branches[0][0][2].bn2.bias)
            model.branches[2][0][2].conv3.weight.copy_(model.branches[0][0][2].conv3.weight)
            model.branches[2][0][2].bn3.weight.  copy_(model.branches[0][0][2].bn3.weight)
            model.branches[2][0][2].bn3.bias.    copy_(model.branches[0][0][2].bn3.bias)
            ### bottleneck 3
            model.branches[2][0][3].conv1.weight.copy_(model.branches[0][0][3].conv1.weight)
            model.branches[2][0][3].bn1.weight.  copy_(model.branches[0][0][3].bn1.weight)
            model.branches[2][0][3].bn1.bias.    copy_(model.branches[0][0][3].bn1.bias)
            model.branches[2][0][3].conv2.weight.copy_(model.branches[0][0][3].conv2.weight)
            model.branches[2][0][3].bn2.weight.  copy_(model.branches[0][0][3].bn2.weight)
            model.branches[2][0][3].bn2.bias.    copy_(model.branches[0][0][3].bn2.bias)
            model.branches[2][0][3].conv3.weight.copy_(model.branches[0][0][3].conv3.weight)
            model.branches[2][0][3].bn3.weight.  copy_(model.branches[0][0][3].bn3.weight)
            model.branches[2][0][3].bn3.bias.    copy_(model.branches[0][0][3].bn3.bias)
            ### bottleneck 4
            model.branches[2][0][4].conv1.weight.copy_(model.branches[0][0][4].conv1.weight)
            model.branches[2][0][4].bn1.weight.  copy_(model.branches[0][0][4].bn1.weight)
            model.branches[2][0][4].bn1.bias.    copy_(model.branches[0][0][4].bn1.bias)
            model.branches[2][0][4].conv2.weight.copy_(model.branches[0][0][4].conv2.weight)
            model.branches[2][0][4].bn2.weight.  copy_(model.branches[0][0][4].bn2.weight)
            model.branches[2][0][4].bn2.bias.    copy_(model.branches[0][0][4].bn2.bias)
            model.branches[2][0][4].conv3.weight.copy_(model.branches[0][0][4].conv3.weight)
            model.branches[2][0][4].bn3.weight.  copy_(model.branches[0][0][4].bn3.weight)
            model.branches[2][0][4].bn3.bias.    copy_(model.branches[0][0][4].bn3.bias)
            ### bottleneck 5
            model.branches[2][0][5].conv1.weight.copy_(model.branches[0][0][5].conv1.weight)
            model.branches[2][0][5].bn1.weight.  copy_(model.branches[0][0][5].bn1.weight)
            model.branches[2][0][5].bn1.bias.    copy_(model.branches[0][0][5].bn1.bias)
            model.branches[2][0][5].conv2.weight.copy_(model.branches[0][0][5].conv2.weight)
            model.branches[2][0][5].bn2.weight.  copy_(model.branches[0][0][5].bn2.weight)
            model.branches[2][0][5].bn2.bias.    copy_(model.branches[0][0][5].bn2.bias)
            model.branches[2][0][5].conv3.weight.copy_(model.branches[0][0][5].conv3.weight)
            model.branches[2][0][5].bn3.weight.  copy_(model.branches[0][0][5].bn3.weight)
            model.branches[2][0][5].bn3.bias.    copy_(model.branches[0][0][5].bn3.bias)
            ## block2
            ### bottleneck 0
            model.branches[2][1][0].conv1.weight.        copy_(model.branches[0][1][0].conv1.weight)
            model.branches[2][1][0].bn1.weight.          copy_(model.branches[0][1][0].bn1.weight)
            model.branches[2][1][0].bn1.bias.            copy_(model.branches[0][1][0].bn1.bias)
            model.branches[2][1][0].conv2.weight.        copy_(model.branches[0][1][0].conv2.weight)
            model.branches[2][1][0].bn2.weight.          copy_(model.branches[0][1][0].bn2.weight)
            model.branches[2][1][0].bn2.bias.            copy_(model.branches[0][1][0].bn2.bias)
            model.branches[2][1][0].conv3.weight.        copy_(model.branches[0][1][0].conv3.weight)
            model.branches[2][1][0].bn3.weight.          copy_(model.branches[0][1][0].bn3.weight)
            model.branches[2][1][0].bn3.bias.            copy_(model.branches[0][1][0].bn3.bias)
            model.branches[2][1][0].downsample[0].weight.copy_(model.branches[0][1][0].downsample[0].weight)
            model.branches[2][1][0].downsample[1].weight.copy_(model.branches[0][1][0].downsample[1].weight)
            model.branches[2][1][0].downsample[1].bias.  copy_(model.branches[0][1][0].downsample[1].bias)
            ### bottleneck 1
            model.branches[2][1][1].conv1.weight.copy_(model.branches[0][1][1].conv1.weight)
            model.branches[2][1][1].bn1.weight.  copy_(model.branches[0][1][1].bn1.weight)
            model.branches[2][1][1].bn1.bias.    copy_(model.branches[0][1][1].bn1.bias)
            model.branches[2][1][1].conv2.weight.copy_(model.branches[0][1][1].conv2.weight)
            model.branches[2][1][1].bn2.weight.  copy_(model.branches[0][1][1].bn2.weight)
            model.branches[2][1][1].bn2.bias.    copy_(model.branches[0][1][1].bn2.bias)
            model.branches[2][1][1].conv3.weight.copy_(model.branches[0][1][1].conv3.weight)
            model.branches[2][1][1].bn3.weight.  copy_(model.branches[0][1][1].bn3.weight)
            model.branches[2][1][1].bn3.bias.    copy_(model.branches[0][1][1].bn3.bias)
            ### bottleneck 2
            model.branches[2][1][2].conv1.weight.copy_(model.branches[0][1][2].conv1.weight)
            model.branches[2][1][2].bn1.weight.  copy_(model.branches[0][1][2].bn1.weight)
            model.branches[2][1][2].bn1.bias.    copy_(model.branches[0][1][2].bn1.bias)
            model.branches[2][1][2].conv2.weight.copy_(model.branches[0][1][2].conv2.weight)
            model.branches[2][1][2].bn2.weight.  copy_(model.branches[0][1][2].bn2.weight)
            model.branches[2][1][2].bn2.bias.    copy_(model.branches[0][1][2].bn2.bias)
            model.branches[2][1][2].conv3.weight.copy_(model.branches[0][1][2].conv3.weight)
            model.branches[2][1][2].bn3.weight.  copy_(model.branches[0][1][2].bn3.weight)
            model.branches[2][1][2].bn3.bias.    copy_(model.branches[0][1][2].bn3.bias)

            # copy fcs
            model.fcs[1].weight.copy_(model.fcs[0].weight) 
            model.fcs[1].bias.  copy_(model.fcs[0].bias)
            model.fcs[2].weight.copy_(model.fcs[0].weight)
            model.fcs[2].bias.  copy_(model.fcs[0].bias)