in BS makes it tend to generate outputs with same prefixes, sentences generated respective to one source still look similar. [@vijayakumar2016diverse] modifies the strategy used in BS to be subject to a diverse behavior goal by reinforcement learning. However such method might reduce the coherence of the outputs. The above methods are based on improved strategies during the inference stage of a encoder-decoder model. But the encoder-decoder model itself is not substantially made better. Their strategies are actually a trade-off between diversity and coherence and thus are restricted.

Additional information could still be used such as topics, speakers’ characteristics in a dialogue session or linguistic prior knowledges. These methods, however, are not applicable for common as extra inputs are required for their unique applications.

VAE and CVAE
------------

Variational Auto Encoder [@rezende2014stochastic; @kingma2013auto] is a popular generative model. It makes use of a latent variable $z$ sampled from a prior distribution to generate data $x$. The logarithm likelihood of the data $x$ is optimized by maximizing the evidence lower bound (ELBO): $${\log{p(x)}}\geq{\mathbb{E}_{q(z|x)}[\log{p(x|z)}]-KL(q(z|x)||p(z))}\label{vae_elbo}$$ while both $q(z|x)$ and $p(z|x)$ are parameterized as encoder $q_{\phi}(z|x)$ and decoder $p_{\theta}(z|x)$. It is obvious that VAE encodes the input $x$ into a probability distribution rather than 