Neural Networks are made up of simple processor nodes (neurons) connected by weighted links (synapses), each node receives one or more inputs, and each node produces one output which can be sent to other neurons.

A neural network learns through repeated adjustments of weighted links between neurons. They can be used in a variety of situations and can be use to calculate linear regression (and a few other regression models) automatically. It can be used for unsupervised, supervised and reinforcement learning.