Concept Learning
A concept is a boolean-valued function over a set of input instances (each comprising input attributes). Concept learning is a form of supervised learning. Infer an unknown boolean-valued function from training-examples.
Hypothesis
There is a trade-off between expressive power and smaller hypothesis space. Large hypothesis spaces are bad, because search is going to take a long time, and also requires more data. Humans exploit structure in the hypothesis space to guide search and learn faster.
A hypothesis
Inductive Learning
Any hypothesis found to approximate the target function well over a sufficient large set of training examples will also approximate the target function well over other unobserved examples.
Concept Learning is Search
The goal is to search for a hypothesis
Exploit Structure in Concept Learning
This is relation is a partial order.
Find-S Algorithm
Intuition: Start with the most specific hypothesis
Limitations
- Can’t tell whether Find-S has learnt the target concept
- Can’t tell when training examples are inconsistent
- Picks a maximally specific
- Depending on
, there may be several solutions
Version Space
- If
, then D can reduce to . - If D is insufficient, then
represents the uncertainty of what the target concept is contains all consistent hypotheses, including maximally specific hypotheses
The general boundary G of
The specific boundary S of
List-Then-Eliminate Algorithm
Iterate through all hypotheses in
Candidate-Elimination Algorithm
Start with most general and specific hypotheses. Each training example “minimally” generalizes S and specializes G to remove inconsistent hypotheses from version space.