Pytorch 用预训练的resnet实现压缩和激励模块

Pytorch 用预训练的resnet实现压缩和激励模块,pytorch,Pytorch,我正在尝试用任何预训练的resnet架构实现SE块 self.encoder = torchvision.models.resnet34(pretrained=pretrained) self.conv1 = nn.Sequential( self.encoder.conv1, self.encoder.bn1, self.encoder.relu SeBlock(64,2), nn.MaxPool2d(2, 2) ) self.conv2 = nn.

我正在尝试用任何预训练的resnet架构实现SE块

self.encoder = torchvision.models.resnet34(pretrained=pretrained)

self.conv1 = nn.Sequential(
    self.encoder.conv1,
    self.encoder.bn1,
    self.encoder.relu
    SeBlock(64,2),
    nn.MaxPool2d(2, 2) )

self.conv2 = nn.Sequential(
    self.encoder.layer1,
    SeBlock(64,2),
    )

self.conv3 = nn.Sequential(
    self.encoder.layer2,
    SeBlock(128,2),
    )

self.conv4 = nn.Sequential(
    self.encoder.layer3,
    SeBlock(256,2),
    )

self.conv5 = nn.Sequential(
    self.encoder.layer4,
    SeBlock(512,2),
    )
以上是我的代码,但它不工作。在githubs中,他们从头开始构建resnet,并引入SE块,然后加载模型。为resnet的各层声明_dict()权重,并训练剩余的模型。 我只需要知道在预训练的resnet中使用SE块的正确步骤是什么

谢谢