class_docstr: This class is used for updating the value of β during the annealing process.
  When β reaches the value of anneal_cap, it stops increasing.
docstr: Constructor
  
  Args:
      beta (float): current value of beta.
      anneal_cap (float): maximum value that beta can reach.
      total_anneal_steps (int): total number of annealing steps.
code: def __init__(self, beta, anneal_cap, total_anneal_steps):
      """Constructor
  
      Args:
          beta (float): current value of beta.
          anneal_cap (float): maximum value that beta can reach.
          total_anneal_steps (int): total number of annealing steps.
      """
      # maximum value that beta can take
      self.anneal_cap = anneal_cap
  
      # initial value of beta
      self.beta = beta
  
      # update_count used for calculating the updated value of beta
      self.update_count = 0
  
      # total annealing steps
      self.total_anneal_steps = total_anneal_steps
  
imports: import numpy
  import matplotlib.pyplot
  import seaborn
  from recommenders.evaluation.python_evaluation import ndcg_at_k
  import tensorflow
  from tensorflow.keras.layers import *
  from tensorflow.keras.models import Model
  from tensorflow.keras import backend
  from tensorflow.keras.callbacks import ReduceLROnPlateau, Callback
label_desc: Use image node_id 1 to create a new AnnealingCallback object from inherited base classes: Callback with example: obj = AnnealingCallback(beta, anneal_cap, total_anneal_steps)