The conventional approach to solving the recommendation problem greedily ranks
 individual document candidates by prediction scores. However, this method fails to
 optimize the slate as a whole, and hence, often struggles to capture biases caused
 by the page layout and document interdepedencies. The slate recommendation
 problem aims to directly find the optimally ordered subset of documents (i.e.
 slates) that best serve users’ interests. Solving this problem is hard due to the
 combinatorial explosion of document candidates and their display positions on the
 page. Therefore we propose a paradigm shift from the traditional viewpoint of solving a ranking problem to a direct slate generation framework. In this paper, we introduce List Conditional Variational Auto-Encoders (ListCVAE),
 which learn the joint distribution of documents on the slate conditioned
 on user responses, and directly generate full slates. Experiments on simulated
 and real-world data show that List-CVAE outperforms greedy ranking methods
 consistently on various scales of documents corpora.
We used a CVAE type model structure to learn to directly generate slates/whole pages for recommendation systems.