  One of the ultimate goals of Artificial Intelligence is to assist humans in
complex decision making. A promising direction for achieving this goal is
Neuro-Symbolic AI, which aims to combine the interpretability of symbolic
techniques with the ability of deep learning to learn from raw data. However,
most current approaches require manually engineered symbolic knowledge, and
where end-to-end training is considered, such approaches are either restricted
to learning definite programs, or are restricted to training binary neural
networks. In this paper, we introduce Neuro-Symbolic Inductive Learner (NSIL),
an approach that trains a general neural network to extract latent concepts
from raw data, whilst learning symbolic knowledge that maps latent concepts to
target labels. The novelty of our approach is a method for biasing the learning
of symbolic knowledge, based on the in-training performance of both neural and
symbolic components. We evaluate NSIL on three problem domains of different
complexity, including an NP-complete problem. Our results demonstrate that NSIL
learns expressive knowledge, solves computationally complex problems, and
achieves state-of-the-art performance in terms of accuracy and data efficiency.
Code and technical appendix: https://github.com/DanCunnington/NSIL
