class_docstr: The trainer with a supervised learning loss. Supports Cross-Entropy, MSE and MAE losses.
  
  Args:
      policy: The policy to be trained.
code: def __init__(
      self,
      policy: Policy,
      loss_type: str = "mse",  # one of the LOSS_TYPES names
      lr: float = 1e-3,
      weight_decay: float = 0.0,
      *args,
      **kwargs,
  ):
      super().__init__(*args, **kwargs)
      self.scorer = policy.scorer
      self.lr = lr
      self.weight_decay = weight_decay
      self.loss = LOSS_TYPES[loss_type]
  
file_path: ReAgent/reagent/training/cb/supervised_trainer.py
imports: import logging
  import torch
  from reagent.core.types import CBInput
  from reagent.gym.policies.policy import Policy
  from reagent.training.cb.base_trainer import BaseCBTrainerWithEval
label_desc: Use image node_id 1 to create a new SupervisedTrainer object from inherited base classes: BaseCBTrainerWithEval with example: obj = SupervisedTrainer(policy, loss_type, lr, weight_decay)