class_docstr: Optimizer and Learning Rate Scheduler configuration.
  Args:
      optimizer (str): Any of the standard optimizers from
              [torch.optim](https://pytorch.org/docs/stable/optim.html#algorithms) or provide full python path,
              for example "torch_optimizer.RAdam".
  
      optimizer_params (Dict): The parameters for the optimizer. If left blank, will use default
              parameters.
  
      lr_scheduler (Optional[str]): The name of the LearningRateScheduler to use, if any, from
              [torch.optim.lr_scheduler](https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-
              rate). If None, will not use any scheduler. Defaults to `None`
  
      lr_scheduler_params (Optional[Dict]): The parameters for the LearningRateScheduler. If left blank,
              will use default parameters.
  
      lr_scheduler_monitor_metric (Optional[str]): Used with ReduceLROnPlateau, where the plateau is
              decided based on this metric
class_docstr_tok: ["Optimizer","and","Learning","Rate","Scheduler","configuration",".","Args",":","optimizer","(","str",")",":","Any","of","the","standard","optimizers","from","[","torch.optim","]","(","https",":","\/\/pytorch.org\/docs\/stable\/optim.html","#","algorithms",")","or","provide","full","python","path",",","for","example","``","torch_optimizer.RAdam","''",".","optimizer_params","(","Dict",")",":","The","parameters","for","the","optimizer",".","If","left","blank",",","will","use","default","parameters",".","lr_scheduler","(","Optional","[","str","]",")",":","The","name","of","the","LearningRateScheduler","to","use",",","if","any",",","from","[","torch.optim.lr_scheduler","]","(","https",":","\/\/pytorch.org\/docs\/stable\/optim.html","#","how-to-adjust-learning-","rate",")",".","If","None",",","will","not","use","any","scheduler",".","Defaults","to","`","None","`","lr_scheduler_params","(","Optional","[","Dict","]",")",":","The","parameters","for","the","LearningRateScheduler",".","If","left","blank",",","will","use","default","parameters",".","lr_scheduler_monitor_metric","(","Optional","[","str","]",")",":","Used","with","ReduceLROnPlateau",",","where","the","plateau","is","decided","based","on","this","metric"]
code: def read_from_yaml(filename: str = "config/optimizer_config.yml"):
      config = _read_yaml(filename)
      if config["lr_scheduler_params"] is None:
          config["lr_scheduler_params"] = {}
      return OptimizerConfig(**config)
  
imports: import os
  import re
  from dataclasses import MISSING, dataclass, field
  from typing import Any, Dict, Iterable, List, Optional
  from omegaconf import OmegaConf
  from pytorch_tabular.models.common import heads
  from pytorch_tabular.utils import get_logger
label_desc: Use image node_id 1 for calling the OptimizerConfig obj's underlying member method code with example usage: obj.read_from_yaml(filename) and returns: OptimizerConfig