Abstract
Multi-core processors, cheaper computer networks and the data deluge from the internet
allow larger and better models to be built using Deep Learning architectures. Distributed
Artificial Intelligence with agent-based programming is a paradigm for constructing such
models. Many Neural Networks are implemented in a single thread of control, negating
their benefits. An actor-oriented approach leverages the inherent parallelism of such architectures.
The relationship between object-oriented and multi-agent paradigms is discussed
in this dissertation. In addition, constraints on concurrency are discussed with
reference to implementing such systems via the Actor Model in the form of the Akka
toolkit. The proposed actor model is applied to a Supervised Learning classification
problem using Convolutional Neural Networks. Since the architecture of a Convolutional
Network allows computations to be parallelised, it is suited to the concurrent and
distributed programming paradigm. Performance and accuracy of the model is evaluated
using Receiver Operating Characteristic (ROC) curve analysis, confusion matrices
and cost function plots. Performance of the model is compared and evaluated next to
existing implementations of Convolutional Neural Networks using confidence intervals
of model statistics and hypothesis testing.
M.Sc.