Batch training requires binding observed variables to TensorFlow placeholders in the Inference class. The intuition is that you are conditioning on values that you don’t specify until runtime.
In the feed_dict during update(), you then bind the TensorFlow placeholders to realized values (NumPy arrays).
The WIP tutorial here might be helpful.