Created Wednesday 25 June 2014
Neural networks (NNs) are easy to understand conceptually and (somewhat) easy to code. A strong math background is also required.
NNs are good at these types of problems:
- Classification - the goal is to assign the input object to a predetermined class or group. We provide input objects that are representative of all groups (training examples). NN deduces classification rules from training examples. Ex: handwriting recognition
- Prediction - ex: sun cycles
- Clustering (data mining) - Similar to classification. However, we don't provide the representative groups. The goal is to figure out the groups that partition the training example. Ex: learn characters in an alien language from sample writings. (This is a type of unsupervised learning.)
- Pattern Association - pick out faces from blurry photographs
- Optimization - minimizing or maximizing a function
In general, NNs are good at bottom-up learning. In contrast, to top-down learning, in bottom-up learning, hard and fast rules either don't exist or are too complicated to express. Real world example: the rules managers use to distribute work at a customer service center. (Managers may not be able to completely verbalize what they do.)