code: def filter_fc_layer(
      model,
      learning_rate=0.001,
      fc_names=_TIMM_FC_NAMES,
      feature_lr_mult=0.01,
      fc_lr_mult=1,
  ):
      """Filter linear projection layers from the network"""
      if feature_lr_mult == 1 and fc_lr_mult == 1:
          return model.parameters()
      feat = []
      fc = []
      for name, param in model.named_parameters():
          is_fc = False
          if any([name.startswith(pattern) for pattern in fc_names]):
              is_fc = True
          if not param.requires_grad:
              continue  # frozen weights
          if is_fc:
              fc.append(param)
          else:
              feat.append(param)
  
      return [
          {"params": feat, "lr": feature_lr_mult * learning_rate},
          {"params": fc, "lr": fc_lr_mult * learning_rate},
      ]
  
imports: from timm.optim.optim_factory import *
label_desc: Use image node_id 3 for calling a global function with example usage: filter_fc_layer(model, learning_rate, fc_names, feature_lr_mult, fc_lr_mult) and returns: list, model