Artificial neural networks (ANNs) are inspired by biological neural networks and are composed of interconnected processing elements called neurons. ANNs are configured through a learning process to solve problems like pattern recognition or data classification. Early research in the 1940s and 1950s laid the foundations, like McCulloch and Pitts developing the first neural network model and Hebb developing the first learning rule. ANNs use weighted connections and activation functions to learn from examples through training. Feedforward and feedback networks differ in whether signals travel in one or both directions between layers of neurons. Perceptrons were influential early neural network models that could perform tasks linear programs could not.