The methods based on neural networks may outperform other methods in tough problems, where the prior knowledge cannot help much in the classification and the system characteristics must be learned automatically from the data. For those complicated situations it is advantageous that the algorithm consists of a large number of very simple units capable of learning locally. This kind of structure can be efficiently parallelized to exploit all the available computational power. Simple algorithms often have the tendency to be widely applicable and provide easy integration with other methods for efficient hybrid solutions.