Why neural networks are useful

Programming is the art of describing a precise set of steps necessary to solve a problem — how to add two numbers together, for examples, or what time to switch on your home watering system. These sorts of tasks are easily broken down into steps that a computer can understand:

But some types of problems can’t be solved with such cut-and-dried steps. What does a cat look like? Was the person who wrote this text angry or happy? Sad? Hungry?

Neural networks help us solve problems which are difficult to describe

Neural networks give us an alternative way to approach these complex problems. Instead of telling the program how to solve the problem, we show it lots of data, and then tell it which of the samples match our criteria and which do not. The software then pores over the dataset thousands of times, applying and adjusting mathematical formulas and until it slowly begins to refine a specific equation which can be matched to a correct or incorrect result.