  Top-N recommendation, which aims to learn user ranking-based preference, has
long been a fundamental problem in a wide range of applications. Traditional
models usually motivate themselves by designing complex or tailored
architectures based on different assumptions. However, the training data of
recommender system can be extremely sparse and imbalanced, which poses great
challenges for boosting the recommendation performance. To alleviate this
problem, in this paper, we propose to reformulate the recommendation task
within the causal inference framework, which enables us to counterfactually
simulate user ranking-based preferences to handle the data scarce problem. The
core of our model lies in the counterfactual question: "what would be the
user's decision if the recommended items had been different?". To answer this
question, we firstly formulate the recommendation process with a series of
structural equation models (SEMs), whose parameters are optimized based on the
observed data. Then, we actively indicate many recommendation lists (called
intervention in the causal inference terminology) which are not recorded in the
dataset, and simulate user feedback according to the learned SEMs for
generating new training samples. Instead of randomly intervening on the
recommendation list, we design a learning-based method to discover more
informative training samples. Considering that the learned SEMs can be not
perfect, we, at last, theoretically analyze the relation between the number of
generated samples and the model prediction error, based on which a heuristic
method is designed to control the negative effect brought by the prediction
error. Extensive experiments are conducted based on both synthetic and
real-world datasets to demonstrate the effectiveness of our framework.
