  Boolean matrix factorisation aims to decompose a binary data matrix into an
approximate Boolean product of two low rank, binary matrices: one containing
meaningful patterns, the other quantifying how the observations can be
expressed as a combination of these patterns. We introduce the OrMachine, a
probabilistic generative model for Boolean matrix factorisation and derive a
Metropolised Gibbs sampler that facilitates efficient parallel posterior
inference. On real world and simulated data, our method outperforms all
currently existing approaches for Boolean matrix factorisation and completion.
This is the first method to provide full posterior inference for Boolean Matrix
factorisation which is relevant in applications, e.g. for controlling false
positive rates in collaborative filtering and, crucially, improves the
interpretability of the inferred patterns. The proposed algorithm scales to
large datasets as we demonstrate by analysing single cell gene expression data
in 1.3 million mouse brain cells across 11 thousand genes on commodity
hardware.
