class_docstr: A base distribution and normalizing flow for applying transformations.
  
  Normalizing flows are effective for any application requiring
  a probabilistic model that can both sample from a distribution and
  compute marginal likelihoods, e.g. generative modeling,
  unsupervised learning, or probabilistic inference. For a thorough review
  of normalizing flows, see [1]_.
  
  A distribution implements two main operations:
      1. Sampling from the transformed distribution
      2. Calculating log probabilities
  
  A normalizing flow implements three main operations:
      1. Forward transformation
      2. Inverse transformation
      3. Calculating the Jacobian
  
  Deep Normalizing Flow models require normalizing flow layers where
  input and output dimensions are the same, the transformation is invertible,
  and the determinant of the Jacobian is efficient to compute and
  differentiable. The determinant of the Jacobian of the transformation
  gives a factor that preserves the probability volume to 1 when transforming
  between probability densities of different random variables.
  
  References
  ----------
  .. [1] Papamakarios, George et al. "Normalizing Flows for Probabilistic Modeling and Inference." (2019). https://arxiv.org/abs/1912.02762.
class_docstr_tok: ["A","base","distribution","and","normalizing","flow","for","applying","transformations",".","Normalizing","flows","are","effective","for","any","application","requiring","a","probabilistic","model","that","can","both","sample","from","a","distribution","and","compute","marginal","likelihoods",",","e.g",".","generative","modeling",",","unsupervised","learning",",","or","probabilistic","inference",".","For","a","thorough","review","of","normalizing","flows",",","see","[","1","]","_",".","A","distribution","implements","two","main","operations",":","1",".","Sampling","from","the","transformed","distribution","2",".","Calculating","log","probabilities","A","normalizing","flow","implements","three","main","operations",":","1",".","Forward","transformation","2",".","Inverse","transformation","3",".","Calculating","the","Jacobian","Deep","Normalizing","Flow","models","require","normalizing","flow","layers","where","input","and","output","dimensions","are","the","same",",","the","transformation","is","invertible",",","and","the","determinant","of","the","Jacobian","is","efficient","to","compute","and","differentiable",".","The","determinant","of","the","Jacobian","of","the","transformation","gives","a","factor","that","preserves","the","probability","volume","to","1","when","transforming","between","probability","densities","of","different","random","variables",".","References","--","--","--","--","--","..","[","1","]","Papamakarios",",","George","et","al",".","``","Normalizing","Flows","for","Probabilistic","Modeling","and","Inference",".","''","(","2019",")",".","https",":","\/\/arxiv.org\/abs\/1912.02762","."]
docstr: Loads model from joblib file on disk.
docstr_tok: ["Loads","model","from","joblib","file","on","disk","."]
code: def reload(self):
      """Loads model from joblib file on disk."""
      self.model = load_from_disk(
          self.get_model_filename(self.model_dir)
      )
  
imports: import logging
  from typing import List, Optional, Sequence, Callable
  import tensorflow
  from deepchem.models.keras_model import KerasModel
  from deepchem.utils.typing import OneOrMany
  from deepchem.utils.data_utils import load_from_disk, save_to_disk
label_desc: Use image node_id 4 for calling the NormalizingFlowModel obj's underlying member method code with example usage: obj.reload() without return types