This is meant to be a minimal driver for executing TransitionKernels; for
something more featureful, see run_kernel.
Args
num_steps
Integer number of Markov chain steps.
current_state
Tensor or Python list of Tensors representing the
current state(s) of the Markov chain(s).
previous_kernel_results
A Tensor or a nested collection of Tensors.
Warm-start for the auxiliary state needed by the given kernel.
If not supplied, step_kernel will cold-start with
kernel.bootstrap_results.
If True, then the final kernel results are
returned alongside the chain state after num_steps steps are taken.
This can be useful to inspect the final auxiliary state, or for a later
warm restart.
parallel_iterations
The number of iterations allowed to run in parallel. It
must be a positive integer. See tf.while_loop for more details.
seed
Optional, a seed for reproducible sampling.
name
Python str name prefixed to Ops created by this function.
Default value: None (i.e., 'mcmc_step_kernel').
Returns
next_state
Markov chain state after num_step steps are taken, of
identical type as current_state.
final_kernel_results
kernel results, as supplied by kernel.one_step after
num_step steps are taken. This is only returned if
return_final_kernel_results is True.