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:
- Check the time every 500 milliseconds
- IF the time is after 3pm
- AND if the time is before 4pm
- AND the water is not running
- THEN turn the water on.
- Otherwise, make sure the water is turned off.
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.