Hi, Can I please get some help here.
I have been using the following code to obtain:
output = model(images)
where model = get_resnet34()
def get_resnet34(num_classes=6, **_):
    model_name = 'resnet34'
    model = pretrainedmodels.__dict__[model_name](num_classes=1000, pretrained='imagenet')
    arc_margin_product=ArcMarginProduct(512, num_classes)
    conv1 = model.conv1
    model.conv1 = nn.Conv2d(in_channels=4,
                            out_channels=conv1.out_channels,
                            kernel_size=conv1.kernel_size,
                            stride=conv1.stride,
                            padding=conv1.padding,
                            bias=conv1.bias)
    model.conv1.weight.data[:,:3,:,:] = conv1.weight.data
    model.conv1.weight.data[:,3:,:,:] = conv1.weight.data[:,:1,:,:]

    model.avgpool = nn.AdaptiveAvgPool2d(1)
    in_features = model.last_linear.in_features   
    model.last_linear = nn.Linear(in_features, num_classes)
    #cosine=arc_margin_product(in_features)
    
    return model

Now I want to use Resnet34 output as features to be an input into the following code
def forward(self, features):
        cosine = F.linear(F.normalize(features), F.normalize(self.weight.cuda()))
        return cosine

i am getting this error 'torch.nn.modules.module.ModuleAttributeError: ‘ResNet’ object has no attribute ‘norm’ '.
May I know how do i get to ‘return features’ from ‘get_resnet34(num_classes=6, **_)’, instead of ‘returning model’.
Thanks