class_docstr: Class implementing a simple linear scheduler to grow the certification radius.
class_docstr_tok: ["Class","implementing","a","simple","linear","scheduler","to","grow","the","certification","radius","."]
docstr: Create a .DefaultLinearScheduler instance.
  
  :param step_per_epoch: how much to increase the certification radius every epoch
  :param initial_bound: the initial bound to increase from
docstr_tok: ["Create","a",".DefaultLinearScheduler","instance",".",":","param","step_per_epoch",":","how","much","to","increase","the","certification","radius","every","epoch",":","param","initial_bound",":","the","initial","bound","to","increase","from"]
code: def __init__(
      self, step_per_epoch: float, initial_bound: float = 0.0
  ) -> None:
      """
      Create a .DefaultLinearScheduler instance.
  
      :param step_per_epoch: how much to increase the certification radius every epoch
      :param initial_bound: the initial bound to increase from
      """
      self.step_per_epoch = step_per_epoch
      self.bound = initial_bound
  
file_path: adversarial-robustness-toolbox/art/defences/trainer/certified_adversarial_trainer_pytorch.py
imports: import logging
  import math
  import random
  import sys
  import numpy
  from sklearn.utils import shuffle
  from tqdm import tqdm
  from art.defences.trainer.trainer import Trainer
  from art.attacks.evasion.projected_gradient_descent.projected_gradient_descent import ProjectedGradientDescent
  from art.utils import check_and_transform_label_format
label_desc: Use image node_id 1 to create a new DefaultLinearScheduler object  with example: obj = DefaultLinearScheduler(step_per_epoch, initial_bound)