code: def log_norms(self):
      lines = ["NORMS FOR MODEL PARAMTERS"]
      lines.extend(
          [
              "tree_embedding." + x
              for x in self.tree_embedding.get_norms()
          ]
      )
      for name, param in self.named_parameters():
          if param.requires_grad and not name.startswith(
              "tree_embedding."
          ):
              lines.append("%s %.6g" % (name, torch.norm(param).item()))
      logger.info("\n".join(lines))
  
file_path: stanza/stanza/models/classifiers/constituency_classifier.py
imports: import logging
  from types import SimpleNamespace
  import torch
  import torch.nn
  import torch.nn.functional
  from stanza.models.classifiers.base_classifier import BaseClassifier
  from stanza.models.classifiers.data import SentimentDatum
  from stanza.models.classifiers.utils import ModelType, build_output_layers
  from stanza.models.common.utils import split_into_batches, sort_with_indices, unsort
label_desc: Use image node_id 3 for calling the ConstituencyClassifier obj's underlying member method code with example usage: obj.log_norms() without return types