An artificial neural network (ANN) is a computer simulation of a "brainlike" system of interconnected processing units.
Processing units are typically viewed as being analogous to neurons, and are presumed to operate in parallel. The behaviour of a single processing unit in an ANN can be characterized as follows: First, the unit computes the total signal being sent to it by other processors in the network. Second, the unit applies an activation function to this total signal, in order to adopt a particular level of internal activity. Third, the unit sends a signal to other processors in the network; this signal is a function of the unit's internal activity. The signal that one processor sends to another is transmitted through a weighted connection, which is typically described as being analogous to a synapse.
In general, an ANN can be viewed as a system that generates a desired response to an input stimulus. The pattern of connectivity in an ANN (i.e., the strengths of the connections between various processing units) defines the causal relations between the network's processors, and is therefore analogous to a program in a conventional computer (e.g., Smolensky, 1988). However, in contrast to a conventional computer, the ANN is not given a step by step procedure to perform some desired task. Instead, the network is taught to do the task.