Learning from examples rather than rules.
THE TRADITIONAL APPROACH
A programmer writes rules. If this, then that.
Works where the rules are known and finite.
THE MACHINE LEARNING APPROACH
Show the system labelled examples. It works out the rules itself.
Works where the rules are too numerous or too subtle to write.
AN EXAMPLE
Distinguishing spam from legitimate email.
Writing rules fails: spammers adapt, and legitimate mail varies enormously.
Showing a system a hundred thousand examples of each works considerably better.
WHAT THE SYSTEM PRODUCES
A model: a set of learned values that turn input into output.
WHAT IT DOES NOT PRODUCE
An explanation. Many models cannot tell you why they decided something, which matters in regulated contexts.
WHERE IT SUITS
Problems with many examples available, where patterns exist, and where occasional errors are tolerable.
WHERE IT DOES NOT
Problems with few examples, where every error is serious, or where the reasoning must be auditable.