  A common objective in the analysis of tabular data is estimating the
conditional distribution (in contrast to only producing predictions) of a set
of "outcome" variables given a set of "covariates", which is sometimes referred
to as the "density regression" problem. Beyond estimation on the conditional
distribution, the generative ability of drawing synthetic samples from the
learned conditional distribution is also desired as it further widens the range
of applications. We propose a flow-based generative model tailored for the
density regression task on tabular data. Our flow applies a sequence of
tree-based piecewise-linear transforms on initial uniform noise to eventually
generate samples from complex conditional densities of (univariate or
multivariate) outcomes given the covariates and allows efficient analytical
evaluation of the fitted conditional density on any point in the sample space.
We introduce a training algorithm for fitting the tree-based transforms using a
divide-and-conquer strategy that transforms maximum likelihood training of the
tree-flow into training a collection of binary classifiers--one at each tree
split--under cross-entropy loss. We assess the performance of our method under
out-of-sample likelihood evaluation and compare it with a variety of
state-of-the-art conditional density learners on a range of simulated and real
benchmark tabular datasets. Our method consistently achieves comparable or
superior performance at a fraction of the training and sampling budget.
Finally, we demonstrate the utility of our method's generative ability through
an application to generating synthetic longitudinal microbiome compositional
data based on training our flow on a publicly available microbiome study.
