class_docstr: Allows dynamic batch training, extends pooling batcher with a scheduler
  config, which specifies how batch size should increase
class_docstr_tok: ["Allows","dynamic","batch","training",",","extends","pooling","batcher","with","a","scheduler","config",",","which","specifies","how","batch","size","should","increase"]
code: def __init__(
      self,
      train_batch_size=Config.train_batch_size,
      eval_batch_size=Config.eval_batch_size,
      test_batch_size=Config.test_batch_size,
      pool_num_batches=Config.pool_num_batches,
      num_shuffled_pools=Config.num_shuffled_pools,
      scheduler_config=Config.scheduler_config,
  ):
      super().__init__(
          train_batch_size,
          eval_batch_size,
          test_batch_size,
          pool_num_batches,
          num_shuffled_pools,
      )
      self.scheduler_config = scheduler_config
      self.curr_batch_size: int = 0
      self.curr_epoch: int = -1
      self.step_epoch()
  
imports: import math
  from typing import Iterable
  from pytext.common.constants import Stage
  from pytext.config.module_config import ModuleConfig
  from .data import PoolingBatcher
  from .sources import RawExample
label_desc: Use image node_id 2 to create a new DynamicPoolingBatcher object from inherited base classes: PoolingBatcher with example: obj = DynamicPoolingBatcher(train_batch_size, eval_batch_size, test_batch_size, pool_num_batches, num_shuffled_pools, scheduler_config)