class_docstr: Hard distillation using cross-entropy for classification tasks. Given an input sample, hard-labels
  are generated from a teacher and cross-entropy loss is computed between hard-labels and student model's output.
  
  Args:
      opts: command-line arguments
class_docstr_tok: ["Hard","distillation","using","cross-entropy","for","classification","tasks",".","Given","an","input","sample",",","hard-labels","are","generated","from","a","teacher","and","cross-entropy","loss","is","computed","between","hard-labels","and","student","model","'s","output",".","Args",":","opts",":","command-line","arguments"]
code: def extra_repr(self) -> str:
      return (
          f"\n\t topk={self.topk}"
          f"\n\tlabel_smoothing={self.label_smoothing}"
      )
  
file_path: ml-cvnets/loss_fn/distillation/hard_distillation.py
imports: import argparse
  import torch
  from torch import Tensor
  from torch.nn import functional
  from loss_fn import LOSS_REGISTRY
  from loss_fn.distillation.base_distillation import BaseDistillationCriteria
  from utils import logger
label_desc: Use image node_id 4 for calling the HardDistillationLoss obj's underlying member method code with example usage: obj.extra_repr() and returns: str, self, str, self