The neural network has long been the main stay of Artificial Intelligence (AI) programming. As programmers, we can create programs that do fairly amazing things. Programs can automate repetitive tasks such as balancing checkbooks or calculating the value of an investment portfolio. While a program could easily maintain a large collection of images, it could not tell us what any of those images are of. Programs are inherently unintelligent and uncreative. Ordinary computer programs are only able to perform repetitive tasks.
A neural network attempts to give computer programs human like intelligence. Neural networks are usually designed to recognize patterns in data. A neural network can be trained to recognize specific patterns in data. This chapter will teach you the basic layout of a neural network and end by demonstrating the Hopfield neural network, which is one of the simplest forms of neural network.