  We introduce Tree-AMP, standing for Tree Approximate Message Passing, a
python package for compositional inference in high-dimensional tree-structured
models. The package provides a unifying framework to study several approximate
message passing algorithms previously derived for a variety of machine learning
tasks such as generalized linear models, inference in multi-layer networks,
matrix factorization, and reconstruction using non-separable penalties. For
some models, the asymptotic performance of the algorithm can be theoretically
predicted by the state evolution, and the measurements entropy estimated by the
free entropy formalism. The implementation is modular by design: each module,
which implements a factor, can be composed at will with other modules to solve
complex inference tasks. The user only needs to declare the factor graph of the
model: the inference algorithm, state evolution and entropy estimation are
fully automated.
