code: def test_pretrain_consistency(self, model, input_param):
      input_data = torch.randn(1, 3, 64, 64).to(device)
      net = test_pretrained_networks(model, input_param, device)
      with eval_mode(net):
          result = net.features(input_data)
      cadene_net = pretrainedmodels.se_resnet50().to(device)
      with eval_mode(cadene_net):
          expected_result = cadene_net.features(input_data)
      # The difference between Cadene's senet and our version is that
      # we use nn.Linear as the FC layer, but Cadene's version uses
      # a conv layer with kernel size equals to 1. It may bring a little difference.
      self.assertTrue(
          torch.allclose(result, expected_result, rtol=1e-5, atol=1e-5)
      )
  
imports: from __future__ import annotations
  import os
  import unittest
  from typing import TYPE_CHECKING
  from unittest import skipUnless
  import torch
  from parameterized import parameterized
  import monai.networks.nets.senet
  from monai.networks import eval_mode
  from monai.networks.nets import SENet, SENet154, SEResNet50, SEResNet101, SEResNet152, SEResNext50, SEResNext101
  from monai.utils import optional_import
  from tests.utils import test_is_quick, test_pretrained_networks, test_script_save, testing_data_config
label_desc: Use image node_id 4 for calling the TestPretrainedSENET obj's underlying member method code with example usage: obj.test_pretrain_consistency(model, input_param) without return types