'Computes a sample and its probability from each of a batch of states.
Args:
state: An RnnNadeStateTuple containing the state of the RNN-NADE for each
sample, sized
`([batch_size, self._nade.num_hidden], [batch_size, num_dims],
[batch_size, self._rnn_cell.state_size]`).
Returns:
sample: A sample for each input state, sized `[batch_size, num_dims]`.
log_prob: The log probability of each sample, sized `[batch_size, 1]`.'

def sample_single(self, state):

    (sample, log_prob) = self._nade.sample(state.b_enc, state.b_dec)
    return (sample, log_prob)
