class_docstr: Manages the privacy budget for privacy loss distributions.
  
  It manages the privacy budget for the pipeline using the
  Privacy Loss Distribution (PLD) implementation from Google's
  dp_accounting library.
  
  This class is experimental. It is not yet compatible with DPEngine.
class_docstr_tok: ["Manages","the","privacy","budget","for","privacy","loss","distributions",".","It","manages","the","privacy","budget","for","the","pipeline","using","the","Privacy","Loss","Distribution","(","PLD",")","implementation","from","Google's","dp_accounting","library",".","This","class","is","experimental",".","It","is","not","yet","compatible","with","DPEngine","."]
docstr: Calculates an upper bound for the noise to satisfy the budget.
docstr_tok: ["Calculates","an","upper","bound","for","the","noise","to","satisfy","the","budget","."]
code: def _calculate_max_noise_std(self) -> float:
      """Calculates an upper bound for the noise to satisfy the budget."""
      max_noise_std = 1
      pld_epsilon = self._total_epsilon + 1
      while pld_epsilon > self._total_epsilon:
          max_noise_std *= 2
          pld = self._compose_distributions(max_noise_std)
          pld_epsilon = pld.get_epsilon_for_delta(self._total_delta)
      return max_noise_std
  
imports: import abc
  import collections
  import logging
  import math
  from typing import Optional
  from dataclasses import dataclass
  import pipeline_dp.aggregate_params
  from pipeline_dp import input_validators
label_desc: Use image node_id 5 for calling the PLDBudgetAccountant obj's underlying member method code with example usage: obj._calculate_max_noise_std() and returns: max_noise_std