Surprisingly, neural networks have nothing to do with our own brain, but with a computer simulation. Their organization mimics that of a collection of human neurons. They can be used to predict things by giving information for the program to process. In theory, they could be used for anything that involves pattern recognition, from economics to chemistry, or physics to business.
How does this work?
Every neural network will start off using some sort of input. From there the program will move into its 'hidden layer'. Each of this layer's nodes will look at a different aspect of the problem, for instance, say you were getting it to identify the state a license plate came from. One of the nodes would look at the dimensions of the plate (to make sure it's a valid US plate), and another may look at the top of the plate to see what state it says it is from. With an image of a plate from Kentucky, this infant network may produce some terribly inaccurate result, if any. But why?
Before any neural network can operate effectively, it must be trained. This is because the hidden layers assign different weights to the input variables, essentially assessing how important one input is in determining the value of the output. Let's say you want to see how the different monetary inputs for making milk affect the price the most. For inputs you may have payroll, upkeep of the facility, shipping, and taxes.
If your network only looks at small farms, it may place a lower importance for the payroll (because a small farm will have less staff). So how do we train a network? Essentially we want to send as much data through the network as possible. This will allow it to adjust the weights for variations in the data (the size of the farm in our case). By passing data from every type of farm it will eventually generate answers that are accurate for all farm sizes.
How will data help it learn? If you've ever tried to serve a tennis ball, you learn how to correct your swing from your bad serves. The same is true for neural networks, it will compare the results it produced (in its learning phase) to the correct result. From there the difference between those results will help it adjust the weights of the hidden layer nodes.
Applications of neural networks
One of the most awe-inspiring applications of these networks is in the field of medicine. One day a very advanced network may be able to detect the early presence of cancer, or identify a person's risk of developing the disease. This technology is also frequently used in information security and trading. Some providers may use a neural network to determine the validity of a credit card purchase. It would likely compare the location it's registered in vs. the location of the purchase. If a person from Tennessee who never travels suddenly has a purchase in France on their credit card, the network will throw up a red flag. This is one of the reasons your bank asks you to let them know when you're about to travel, it allows the network to adjust its weight on location of the purchase.
One of the most frequent utilizers of these algorithms are stock traders, specifically in high volume trading. Although this application has been subject to much scrutiny, as it has led to an increase in volatility in the market. In 2010 these algorithms obliterated $1 trillion worth of value for 36 minutes before they corrected themselves.
They also have really fun applications, watch a neural network learn how to play Mario...
Want to learn more about how these networks work? Check out these videos...