learning

16
10/1/2010 Learning Artificial Intelligence AI systems cannot be called Intelligent until they are able to learn to do new things and to adapt to new situations. Learning in terms of Simon[1983], changes in the system that are adaptive on the sense that they enable the system to do the same task or tasks drawn from the same population more efficiently and more effectively the next time. Learning covers a wide range of phenomenon Skill Refinement Knowledge Acquisition Rote Learning [ databases ] Taking advice from others Learning by own problem solving experience.[any]

Upload: nitesh-mishr

Post on 23-Nov-2014

86 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: learning

10/1/2010

Learning

Artificial Intelligence

AI systems cannot be called Intelligent until they are able to learn to do new things and to adapt to new situations.Learning in terms of Simon[1983], changes in the system that are adaptive on the sense that they enable the system to do the same task or tasks drawn from the same population more efficiently and more effectively the next time.Learning covers a wide range of phenomenonSkill RefinementKnowledge AcquisitionRote Learning [ databases ]Taking advice from others Learning by own problem solving experience.[any]

Page 2: learning

10/1/2010

Learning

Artificial Intelligence

At times Learning may be the difference between solving a problem rapidly and not solving it at all. Moreover, the programs that learnt through problem solving experience may be able to come up with qualitatively better solutions in the future.Another form of learning is – learning from examples. [ cat and dog example]Always consider that – Learning in itself is a problem solving approach. There is no definite definition of Learning, we will combine both problem-solving mechanisms and the knowledge representation techniques to illustrate the concepts.

Page 3: learning

10/1/2010

Learning

Artificial Intelligence

Rote Learning : When a computer stores a piece of data, it is performing a rudimentary(basic/simple) form of learning. It allows the program to perform better in future.In the case of Data Caching, we store computed values, so that we do not have to re compute them later. – This caching known as ROTE LEARNING.Rote learning as stated earlier, is very simple. It does not appear to involve any sophisticated problem solving capabilities. But even it needs capabilities that will become increasingly important in more complex learning systems. The capabilities are discussed in the next slide.

Page 4: learning

10/1/2010

Learning

Artificial Intelligence

The capabilities are as Organized Storage of Information : In order to access a stored value in a faster manner , there must be a way to access the appropriate stored value quickly ( if we are not re computing it). This can be done by indexing and any other storage/retrieval method we can think of.Generalization : The number of distinct objects that might be stored can be very large. To keep this number down, some kind of generalization is required.

Page 5: learning

10/1/2010

Learning

Artificial Intelligence

Learning by taking advice : When a programmer writes a program (series of instructions) into a computer, a simple kind of learning takes place. The programmer acts as a teacher and the computer acts as a student.Now the computer can do something, which it could not do earlier.Imagine a code written in HLL LISP, some interpreter or compiler must change the code into machine level language.Let us work on a program called FOO, which accepts advice for playing hearts, a card game. A human user first translates the advice from English into a representation that FOO can understand.Eg : Avoid taking points - (avoid ( take-points me) trick))

Page 6: learning

10/1/2010

Learning

Artificial Intelligence

Learning by taking advice : FOO must operationalize this advice by turning it into an expression that contains concepts and actions FOO can use when playing the game of hearts.The gist is that the system is learning by taking advice, what ever it is instructed it does and is able to replicate the same thing again in future.To put it in step by step process :Understand the trick.Play the game (do the task) in a better way after understanding .Correct mistakes, learn from advice and redo the process again and again.

Page 7: learning

10/1/2010

Learning

Artificial Intelligence

Learning in Problem Solving : Previously, we have seen that how a problem-solver could improve its performance by taking advice from a teacher. Here, we will talk about, how can a program get better without the aid of a teacher. We can do this by generalizing from its own experiences.Learning by Parameter AdjustmentLearning with Macro-OperatorsLearning by Chunking The utility Problem

Page 8: learning

10/1/2010

Learning

Artificial Intelligence

Learning by Parameter Adjustment Many programs rely on an evaluation procedure that combines information from several sources into a single summary statistic.Eg is the Game Playing programs. A piece advantage and mobility are combined into a single score reflecting the desirability of a particular board position.In designing such programs, it is often difficult to know a priori, how much weight should be attached to each feature being used.One way of finding the correct weights is to begin with some estimate of the correct settings and then to let the program modify the settings on the basis of its experience. Features that appear to be good predictors of overall success will have their weights increased, while those that do not , will have their weights decreased.

Page 9: learning

10/1/2010

Learning

Artificial Intelligence

Learning with Macro-OperatorsAs we did in the previous techniques , the idea is to avoid expensive re computation.Car example .START-CAR can be treated as an atomic action, even though it really consists of several actions – sitting down, adjusting the seat/mirror, inserting the key, turning the key.This sequence of actions that can be treated as a whole are called macro-operators.Example is early problem solving systems like STRIPS

Page 10: learning

10/1/2010

Learning

Artificial Intelligence

Learning with Macro-OperatorsIt is now stated that the set of problems for which macro-operations are critical are exactly those problems with non serializable subgoals. Non-serailizability means that working on one subgoal will necessarily interfere with previous solution of another subgoal.Macro-operations can be useful in such cases, since one macro-operator can produce a small global change in the world, even though the individual operators that make it up produce many undesirable local changes.

Page 11: learning

10/1/2010

Learning

Artificial Intelligence

Learning by ChunkingChunking is similar to macro-operators.The idea comes from the psychological literature on memory and problem solving.To understand this first we need to learn about the system called SOAR.SOAR is a general architecture for building intelligent systems. It is based on a set of specific, cognitively motivated hypotheses about the structure of human problem solving. In SOAR, long term memory is stored as a set of productions. (or rules)Short-Term memory (working memory) is a buffer and serves as a storage area for facts deduced by rules in long term memory.All problem activity takes place at state space traversal and results are remembered ( or chunked) for future reference.

Page 12: learning

10/1/2010

Learning

Artificial Intelligence

Learning by ChunkingSOAR uses chunking to enhance its performance using experience.SOAR solves problems by firing productions, which are stored in long-term memory. Some firings turn out to be more useful than others.When SOAR detects a useful sequence of production firings, it creates a chunk, which is essentially a large production that does the work of an entire sequence of smaller ones.Several chunks may encode a single macro-operator and one chunk may participate in a number of macro sequences.Chunks are generally applicable towards any goal state whereas the macro tables are structured towards reaching a particular goal state from any initial state.Chunks emphasizes on how learning can occur during problem solving, while macro table are usually built during a pre-processor state.

Page 13: learning

10/1/2010

Learning

Artificial Intelligence

The Utility ProblemHere, we quota example of device called PRODIGY which works on a technique called EBL ( Explanation-based –learning) It can examine a trace of its own problem-solving behavior and try to explain why certain path failed. Then it uses those explanations to formulate control rules that help avoid those paths in the future.So, SOAR learned from examples of successful problem solving, PRODIGY learns from failures.It helps identifying the utility problem in learning systems.

Page 14: learning

10/1/2010

Learning

Artificial Intelligence

The Utility ProblemNew search control knowledge can be of great benefit in solving future problems efficiently, there are also some downsides.The learned control rules can take up large amounts of memory and the search programs must take the time to consider each rule at each step during problem solving.This is a time-consuming process.So, we have to do a trade-off between using the best search methods and reducing time as well, PRODIGY maintains a utility measure for each control rule, i.e. it records average savings provided by the rule, the frequency of its application, cost of matching etc. If a proposed rule has negative utility, it is discarded, else it is placed in long term memory, the usage is then continuously monitored.

Page 15: learning

10/1/2010

Learning

Artificial Intelligence

DiscoveryIs the restricted form of learning, in which one entity acquires knowledge without the help of a teacher( sometimes, there is no body in the world who has knowledge about a specific topic, in that case, the kind of action taken is called scientific discovery.)We are going to discuss three type of automated discovery systems AM : Theory Driven DiscoveryBACON : Data Driven DiscoveryClustering

Page 16: learning

10/1/2010

Learning

Artificial Intelligence

Discovery ( AM : Theory Driven Discovery)Discovery is certainly learning, but it is more inclined towards problem solving.A program was written known as AM, which worked from a few basic concepts of set theory to discover a good deal of standard number theory.AM exploits a variety of general-purpose AI techniques. It used a frame system to represent mathematical concepts.