Learn-
Machine Learning
"Learning: Any change in a system that allows it to perform better the second time on repetition of the same task or on another task drawn from the same population" (Herbert Simon)
Martin's Law: "You cannot learn anything unless you almost know it already". 0 The "AM" Rule based system.
Learning in AI:
Learning by Analyzing Differences
Learning by Explaining Experience
Learning by Correcting Mistakes
Learning by Recoding Cases
Learning by Managing Multiple Models
Learning by building identification trees
Neural Networks
Genetic Algorithms
Learning by Analyzing Differences
Use of inductive heuristics.
Provide positive, negative examples and near misses.
Model representation is an important pre-requisite for learning.
Example:
You cannot learn if you cannot know.
Good teachers help their students by being sure that their students acquire the necessary representation.
You cannot learn if you cannot isolate what is important.
Good teachers help their students by providing not only positive examples, but also negative examples and near misses.
Heuristic used in Learning
Require-link heuristic:
used when an evolving model has a link in a place where a near miss does not. The model link is converted to a Must form.
Forbid-link heuristic:
used when a near miss has a link in a place where an evolving model does not. A Must-not form is installed in the evolving model.
Climb-tree heuristic:
used when an object in an evolving model corresponds to a different object in an example. Must-be-a links are routed to the most specific common class in the classification tree above the model object and the example object.
The enlarge-set heuristic:
used when an object in an evolving model corresponds to a different object in an example and the two objects are not related to each other through a classification tree. Must-be-a links are routed to a new class composed of the union of the objects' classes.
The drop-link heuristic:
used when the objects that are different in an evolving model and in an example form an exhaustive set. The drop-link heuristic is also used when an evolving model has a link that is not in the example. The link is dropped from the model.
The close-interval heuristic:
used when a number or interval in an evolving model corresponds to a number in an example. If the model uses a number, the number is replaced by an interval spanning the model's number and the example's number. If the model uses an interval, the interval is enlarged to reach the example's number.
Procedure W
Let the description of the first example, which must be an (positive) example, be the initial description.
For all subsequent examples,
if the example is a near miss, use procedure SPECIALIZE.
if the example is an example, use procedure GENERALIZE.
Procedure SPECIALIZE
Match the evolving model to the example to establish correspondences among parts.
Determine whether there is a single, most important difference between the evolving model and the near miss.
If there is a single, most important difference,
If the evolving model has a link that is not in the near miss, use the require-link heuristic.
If the near miss has a link that is not in the model, use the forbid-link heuristic.
Otherwise, ignore the example.
Procedure GENERALIZE
Match the evolving model to the example to establish correspondences among parts.
For each difference, determine the difference type:
If a link points to a class in the evolving model different from the class to which the link points in the example,
If the classes are part of a classification tree, use the climb-tree heuristic.
If the classes form an exhaustive set, use the drop-link heuristic.
Otherwise, use the enlarge-set heuristic.
If a link is missing in the example, use the drop-link heuristic.
If the difference is that different numbers, or an interval and a number outside the interval, are involved, use the close-interval heuristic.
Otherwise, ignore the difference.
Note that it is
difficult to unlearn. Hence:
use the wait-and-see
principle: when there is doubt about
what to do, do
nothing.
[Avoid building a model that will be wrong.]
there will be
situations where a model is not consistent with an example, even
though the model is basically correct.
e.g. Penguins are birds
but cannot fly.
No altering principle: when an
object or situation known to be an example fails to match a general
model, create a special-case exception model.
[Avoid changing a
model, even if it is wrong, because fixing a general model in one
way is likely to break it in another].
Learning
usually must be done in small steps.
If there is too much to
figure out, there is too much room for confusion and error.