class_docstr: Abstract base class for variational inference. Specific
  variational inference methods inherit from `VariationalInference`,
  sharing methods such as a default optimizer.
  
  To build an algorithm inheriting from `VariationalInference`, one
  must at the minimum implement `build_loss_and_gradients`: it
  determines the loss function and gradients to apply for a given
  optimizer.
class_docstr_tok: ["Abstract","base","class","for","variational","inference",".","Specific","variational","inference","methods","inherit","from","`","VariationalInference","`",",","sharing","methods","such","as","a","default","optimizer",".","To","build","an","algorithm","inheriting","from","`","VariationalInference","`",",","one","must","at","the","minimum","implement","`","build_loss_and_gradients","`",":","it","determines","the","loss","function","and","gradients","to","apply","for","a","given","optimizer","."]
docstr: Print progress to output.
      
docstr_tok: ["Print","progress","to","output","."]
code: def print_progress(self, info_dict):
      """Print progress to output."""
      if self.n_print != 0:
          t = info_dict["t"]
          if t == 1 or t % self.n_print == 0:
              self.progbar.update(t, {"Loss": info_dict["loss"]})
  
file_path: edward/edward/inferences/variational_inference.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import abc
  import numpy
  import six
  import tensorflow
  from edward.inferences.inference import Inference
  from edward.models import RandomVariable
  from edward.util import get_session, get_variables
label_desc: Use image node_id 4 for calling the VariationalInference obj's underlying member method code with example usage: obj.print_progress(info_dict) without return types