Evaluating the Apperception Engine
  The Apperception Engine is an unsupervised learning system. Given a sequence
of sensory inputs, it constructs a symbolic causal theory that both explains
the sensory sequence and also satisfies a set of unity conditions. The unity
conditions insist that the constituents of the theory - objects, properties,
and laws - must be integrated into a coherent whole. Once a theory has been
constructed, it can be applied to predict future sensor readings, retrodict
earlier readings, or impute missing readings.
  In this paper, we evaluate the Apperception Engine in a diverse variety of
domains, including cellular automata, rhythms and simple nursery tunes,
multi-modal binding problems, occlusion tasks, and sequence induction
intelligence tests. In each domain, we test our engine's ability to predict
future sensor values, retrodict earlier sensor values, and impute missing
sensory data. The engine performs well in all these domains, significantly
outperforming neural net baselines and state of the art inductive logic
programming systems. These results are significant because neural nets
typically struggle to solve the binding problem (where information from
different modalities must somehow be combined together into different aspects
of one unified object) and fail to solve occlusion tasks (in which objects are
sometimes visible and sometimes obscured from view). We note in particular that
in the sequence induction intelligence tests, our system achieved human-level
performance. This is notable because our system is not a bespoke system
designed specifically to solve intelligence tests, but a general-purpose system
that was designed to make sense of any sensory sequence.
