code: def log_norms(self):
      lines = ["NORMS FOR MODEL PARAMTERS"]
      for name, param in self.named_parameters():
          if param.requires_grad and name.split(".")[0] not in (
              "charmodel_forward",
              "charmodel_backward",
          ):
              lines.append(
                  "  %s %.6g" % (name, torch.norm(param).item())
              )
      logger.info("\n".join(lines))
  
imports: import os
  import logging
  import numpy
  import torch
  import torch.nn
  import torch.nn.functional
  from torch.nn.utils.rnn import pad_packed_sequence, pack_padded_sequence, pack_sequence, pad_sequence, PackedSequence
  from stanza.models.common.data import map_to_ids, get_long_tensor
  from stanza.models.common.exceptions import ForwardCharlmNotFoundError, BackwardCharlmNotFoundError
  from stanza.models.common.packed_lstm import PackedLSTM
  from stanza.models.common.dropout import WordDropout, LockedDropout
  from stanza.models.common.char_model import CharacterModel, CharacterLanguageModel
  from stanza.models.common.crf import CRFLoss
  from stanza.models.common.foundation_cache import load_bert
  from stanza.models.common.vocab import PAD_ID, UNK_ID, EMPTY_ID
  from stanza.models.common.bert_embedding import extract_bert_embeddings
label_desc: Use image node_id 3 for calling the NERTagger obj's underlying member method code with example usage: obj.log_norms() without return types