A neural processing element for use in a modular neural network is
provided. One embodiment provides a neural network comprising an array of
autonomous modules (300). The modules (300) can be arranged in a variety
of configurations to form neural networks with various topologies, for
example, with a hierarchical modular structure. Each module (300)
contains sufficient neurons (100) to enable it to do useful work as a
stand alone system, with the advantage that many modules (300) can be
connected together to create a wide variety of configurations and network
sizes. This modular approach results in a scaleable system that meets
increased workload with an increase in parallelism and thereby avoids the
usually extensive increases in training times associated with unitary
implementations.