code: def _params_to_names(
      params: Iterable[nn.Parameter], model: nn.Module
  ) -> List[str]:
      """
      Given an iterable of parameters, `params` of a model, `model`, returns the names of
      the parameters from the perspective of `model`. This is useful if, given
      parameters for which we do not know the name, want to pass them as a dict
      to a function of those parameters, i.e. `torch.nn.utils._stateless`.
      """
      param_id_to_name = {
          id(param): param_name
          for (param_name, param) in model.named_parameters()
      }
      return [param_id_to_name[id(param)] for param in params]
  
imports: import warnings
  from functools import reduce
  from typing import Any, Callable, Iterable, List, NamedTuple, Optional, Tuple, TYPE_CHECKING, Union
  import torch
  import torch.nn
  from captum._utils.common import _get_module_from_name, _parse_version
  from captum._utils.gradient import _compute_jacobian_wrt_params, _compute_jacobian_wrt_params_with_sample_wise_trick
  from captum._utils.progress import progress
  from torch import Tensor
  from torch.nn import Module
  from torch.utils.data import DataLoader, Dataset
label_desc: Use image node_id 11 for calling a global function with example usage: _params_to_names(params, model) and returns: unknown