class_docstr: Diffusion model which uses the true posterior instead of the prior.
class_docstr_tok: ["Diffusion","model","which","uses","the","true","posterior","instead","of","the","prior","."]
code: def __init__(self, data: np.ndarray, *args, **kwargs):
      super().__init__(*args, **kwargs)
      self.data = data
  
file_path: NeuralCompression/projects/bits_back_diffusion/test.py
imports: from copy import deepcopy
  from typing import Optional, Tuple
  import numpy
  import numpy.random
  import torch
  from bits_back_diffusion.codec import BitsBackCodec, DiffusionModel, GaussianParams, diag_gaussian_unif_bins
  from bits_back_diffusion.script_util import create_gaussian_diffusion
  from craystack import rans
  from craystack.codecs_test import check_codec
label_desc: Use image node_id 1 to create a new CheatingDiffusionModel object from inherited base classes: DiffusionModel with example: obj = CheatingDiffusionModel(data)