Artificial Intelligence 10. Machine Learning Overview : Artificial Intelligence 10. Machine Learning Overview Course V231
Department of Computing
Imperial College
© Simon Colton
Inductive Reasoning : Inductive Reasoning Learning in humans consists of (at least):
memorisation, comprehension, learning from examples
Learning from examples
Square numbers: 1, 4, 9 ,16
1 = 1 * 1; 4 = 2 * 2; 9 = 3 * 3; 16 = 4 * 4;
What is next in the series?
We can learn this by example quite easily
Machine learning is largely dominated by
Learning from examples
Inductive reasoning
Induce a pattern (hypothesis) from a set of examples
This is an unsound procedure (unlike deduction)
Machine Learning Tasks : Machine Learning Tasks Categorisation
Learn why certain objects are categorised a certain way
E.g, why are dogs, cats and humans mammals, but trout, mackeral and tuna are fish?
Learn attributes of members of each category from background information, in this case: skin covering, eggs, homeothermic,…
Prediction
Learn how to predict how to categorise unseen objects
E.g., given examples of financial stocks and a categorisation of them into safe and unsafe stocks
Learn how to predict whether a new stock will be safe
Potential for Machine Learning : Potential for Machine Learning Agents can learn these from examples:
which chemicals are toxic (biochemistry)
which patients have a disease (medicine)
which substructures proteins have (bioinformatics)
what the grammar of a language is (natural language)
which stocks and shares are about to drop (finance)
which vehicles are tanks (military)
which style a composition belongs to (music)
Performing Machine Learning : Performing Machine Learning Specify your problem as a learning task
Choose the representation scheme
Choose the learning method
Apply the learning method
Assess the results and the method
Constituents of Learning Problems : Constituents of Learning Problems The example set
The background concepts
The background axioms
The errors in the data
Problem constituents:1. The Example Set : Problem constituents: 1. The Example Set Learning from examples
Express as a concept learning problem
Whereby the concept solves the categorisation problem
Usually need to supply pairs (E, C)
Where E is an example, C is a category
Positives: (E,C) where C is the correct category for E
Negatives: (E,C) where C is an incorrect category for E
Techniques which don’t need negatives
Can learn from positives only
Questions about examples:
How many does the technique need to perform the task?
Do we need both positive and negative examples?
Example: Positives and Negatives : Example: Positives and Negatives Problem: learn reasons for animal taxonomy
Into mammals, fish, reptile and bird
Positives:
(cat=mammal); (dog=mammal); (trout=fish);
(eagle=bird); (crocodile=reptile);
Negatives:
(condor=fish); (mouse=bird); (trout=mammal);
(platypus=bird); (human=reptile)
Problem Constituents:2. Background Concepts : Problem Constituents: 2. Background Concepts Concepts which describe the examples
(Some of) which will be found in the solution to the problem
Some concepts are required to specify examples
Example: pixel data for handwriting recognition (later)
Cannot say what the example is without this
Some concepts are attributes of examples (functions)
number_of_legs(human) = 2; covering(trout) = scales
Some concepts specify binary categorisations:
is_homeothermic(human); lays_eggs(trout);
Questions about background concepts
Which will be most useful in the solution?
Which can be discarded without worry?
Which are binary, which are functions?
Problem Constituents:3. Background Axioms : Problem Constituents: 3. Background Axioms Similar to axioms in automated reasoning
Specify relationships between
Pairs of background concepts
Example:
has_legs(X) = 4 covering(X) = hair or scales
Can be used in the search mechanism
To speed up the search
Questions about background axioms:
Are they correct?
Are they useful for the search, or surplus?
Problem Constituents:4. Errors in the Data : Problem Constituents: 4. Errors in the Data In real world examples
Errors are many and varied, including:
Incorrect categorisations:
E.g., (platypus=bird) given as a positive example
Missing data
E.g., no skin covering attribute for falcon
Incorrect background information
E.g, is_homeothermic(lizard)
Repeated data
E.g., two different values for the same function and input
covering(platypus)=feathers & covering(platypus)=fur
Example (Toy) ProblemMichalski Train Spotting : Example (Toy) Problem Michalski Train Spotting Question: Why are the LH trains going Eastwards?
What are the positives/negatives?
What are the background concepts?
What is the solution?
Toy problem (IQ test problem)
No errors & a single perfect solution
Another Example:Handwriting Recognition : Another Example: Handwriting Recognition Background concepts:
Pixel information
Categorisations:
(Matrix, Letter) pairs
Both positive & negative
Task
Correctly categorise
An unseen example
Into 1 of 26 categories Positive:
This is a letter S:
Negative:
This is a letter Z:
Constituents of Methods : Constituents of Methods The representation scheme
The search method
The method for choosing from rival solutions
Method Constituents1. Representation : Method Constituents 1. Representation Must choose how to represent the solution
Very important decision
Three assessment methods for solutions
Predictive accuracy (how good it is as the task)
Can use black box methods (accurate but incomprehensible)
Comprehensibility (how well we understand it)
May trade off some accuracy for comprehensibility
Utility (problem-specific measures of worth)
Might override both accuracy and comprehensibility
Example: drug design (must be able to synthesise the drugs)
Examples of RepresentationsThe name is in the title… : Examples of Representations The name is in the title… Inductive logic programming
Representation scheme is logic programs
Decision tree learning
Representation scheme is decision trees
Neural network learning
Representation scheme is neural networks
Other representation schemes
Hidden Markov Models
Bayesians Networks
Support Vector Machines
Method Constituents2. Search : Method Constituents 2. Search Some techniques don’t really search
Example: neural networks
Other techniques do perform search
Example: inductive logic programming
Can specify search as before
Search states, initial states, operators, goal test
Important consideration
General to specific or specific to general search
Both have their advantages
Method constituents3. Choosing a hypothesis : Method constituents 3. Choosing a hypothesis Some learning techniques return one solution
Others produce many solutions
May differ in accuracy, comprehensibility & utility
Question: how to choose just one from the rivals?
Need to do this in order to
(i) give the users just one answer
(ii) assess the effectiveness of the technique
Usual answer: Occam’s razor
All else being equal, choose the simplest solution
When everything is equal
May have to resort to choosing randomly
Example method: FIND-S : Example method: FIND-S This is a specific to general search
Guaranteed to find the most specific solutions (of the best)
Idea:
At the start:
Generate a set of most specific hypotheses
From the positives (solution must be true of at least 1 pos)
Repeatedly generalise hypotheses
So that they become true of more and more positives
At the end:
Work out which hypothes(es) are true of
The most positives and the fewest negatives (pred. accuracy)
Take the most specific one out of the most accurate ones
Generalisation Method in detail : Generalisation Method in detail Use a representation which consists of:
A set of conjoined attributes of the examples
Look at positive P1
Find all the most specific solutions which are true of P1
Call this set H = {H1, …, Hn}
Look at positive P2
Look at each Hi
Generalise Hi so that it is true of P2 (if necessary)
If generalised, call the generalised version Hn+1 and add to H
Generalise by making ground instances into variables
i.e., find the least general generalisation
Look at positive P3 and so on…
Worked Example:Predictive Toxicology : Worked Example: Predictive Toxicology Positives (toxic) Negatives (non-toxic) Template:
Examples:
,
,
Three attributes
5 possible values (H,O,C,N,?) ? ? ?
Worked Example:First Round : Worked Example: First Round Look at P1:
Possible hypotheses are: &
(not counting their reversals)
Hence H = {, }
Look at P2:
is not true of P2
But we can generalise this to:
And this is now true of P2 (don’t generalise any further)
is not true of P2
But we can generalise this to:
Hence H becomes {,,,}
Now look at P3 and continue until the end
Then must start the whole process again with P2 first
Worked ExamplePossible Solutions : Worked Example Possible Solutions Generalisation process gives 9 answers:
Worked ExampleA good solution : Worked Example A good solution This is true of three out of four positives
And none of the negatives
Hence scores 6/7 = 86% for predictive accuracy
Over the set of examples given
How well will this predictor do for unseen examples?
Is this the right question to ask?
Shouldn’t we be more concerned about the chances of the FIND-S method being able to produce good predictors for unseen examples? C ? O
Assessing Hypotheses : Assessing Hypotheses Given a hypothesis H
False positives
An example which is categorised as positive by H
But in reality it was a negative example
Solution to worked example has no false positives
False negatives
An example which is categorised as negative by H
But in reality it was a positive example
Solution to worked example has one false negative
Sometimes we don’t mind FPs as much as FNs
Example: medical diagnosis
FN is someone predicted to be well who actually has disease
But what if the treatment has severe side effects?
Predictive Accuracy overthe Examples Supplied : Predictive Accuracy over the Examples Supplied Simply work out the proportion of examples
which were correctly categorised by the chosen hypothesis
In fact, this is used to choose the hypothesis
in the first place
Question:
Is this a good indication of how the learning method will perform in future
E.g., given a genuinely new drug and a family about which we know toxicity (to learn from)
What is the likelihood of the FIND-S method producing a hypothesis which correctly categorises the new drug?
Illustrative Example : Illustrative Example Positives:
Apple, Orange, Lemon, Melon, Strawberry
Negatives:
Banana, Passionfruit, Plum, Coconut, Apricot
Answers in terms of Predictive Accuracy over Examples : Answers in terms of Predictive Accuracy over Examples Hypothesis one:
Positives are citrus fruits
Scores 7 out of 10 for predictive accuracy
Hypothesis two:
Positives contain the letter ‘l’
Also scores 7 out of 10 for predictive accuracy
Hypothesis three:
Positives are either
Apple, Orange, Lemon, Melon or Strawberry
Scores 10 out of 10 for predictive accuracy. Hoorah!
The Real Test: : The Real Test: Is Lime a positive or a negative?
My underlying assumption was about the letter ‘e’
All positive fruits have a letter ‘e’ in them
Hence Lime is a positive
So, hypotheses one and two get this right
It is a citrus fruit and it does have an ‘l’ in it
But hypothesis three got this wrong
Even though this was seemingly the best at predicting
Training and Test sets : Training and Test sets Standard technique for evaluating learning methods
Split the data into two sets:
Training set: used to learn the method
Test set: used to test the accuracy of the learned hypothesis on unseen examples
We are most interested in the performance of the learned concept on the test set
Methodologies for splitting data : Methodologies for splitting data Leave one out method
For small datasets (<30 approx)
Randomly choose one example to put in the test set
Lime was left out in our example
Repeatedly choose single examples to leave out
Remember to perform the learning task every time
Hold back method
For large datasets (thousands)
Randomly choose a large set (poss. 20-25%) to put into the test set
Cross Validation Method : Cross Validation Method n-fold cross validation:
Split the (entire) example set into n equal partitions
Must cover the entire set (nearly)
Partitions have no elements in common (empty intersections)
Use each partition in turn as the test set
Repeatedly perform the learning task and work out the predictive accuracy over the test set
Average the predictive accuracy over all partitions
Gives you an indication of how the method will perform in real tests when a genuinely new example is presented
10-fold cross validation is very common
1-fold cross validation is the same as leave-one-out
Overfitting : Overfitting We say that hypothesis three was overfitting
It is memorising examples,
Rather than generalising examples
Formal definition:
A learning method is overfitting if it finds a hypothesis H such that:
There is another hypothesis H’ where
H scores better on the training set than H’
But H’ scores better on the test set than H
In our example, H = hyp 3, H’ = hyp 2