«Abstract Combinatorial explosion of inferences has always been a central problem in arti cial intelligence. Although the inferences that can be drawn ...»
Subjectivity: People are biased. They interpret stories in a manner that suits them. They jump to conclusions. Computer programs, on the other hand, are usually designed to read stories in an objective manner, and to extract the \correct" or \true" interpretation of a story to the extent that they can.
Variable depth parsing: People don't read everything in great detail. They concentrate on details that they nd relevant or interesting, and skim over the rest. In contrast, computer programs are designed to attend to every aspect of a story that is within the scope of their knowledge structures. Consequently, they either process the entire story in great depth (e.g., BORIS Dyer, 1982]), or else they skim everything in the story (e.g., FRUMP DeJong, 1979]). They can not decide which aspects to process in detail and which ones to ignore.
Learning and change: People change as they read. They never read the same story twice in the same way. They notice di erent things the second time around, or they simply get bored. After reading a story, they interpret other similar stories di erently. Most computer programs, in contrast, are not adaptive; they always read a given story the same way.
What makes people di erent from computer programs? What is the missing element that our theories don't yet account for? The answer is simple: People read newspaper stories for a reason: to learn more about what they are interested in. Computers, on the other hand, don't. In fact, computers don't even have interests; there is nothing in particular that they are trying to nd out when they read. If a computer program is to be a model of story understanding, it should also read for a \purpose."
Of course, people have several goals that do not make sense to attribute to computers. One might read a restaurant guide in order to satisfy hunger or entertainment goals, or to nd a good place to go for a business lunch. Computers do not get hungry, and computers do not have business lunches.
However, these physiological and social goals give rise to several intellectual or cognitive goals. A goal to satisfy hunger gives rise to goals to nd information: the name of a restaurant which serves the desired type of food, how expensive the restaurant is, the location of the restaurant, etc. These are goals to acquire information or knowledge, what we are calling knowledge goals. These goals can be held by computers too;
a computer might \want" to nd out the location of a restaurant, and read a guide in order to do so in the same way as a person might. While such a goal would not arise out of hunger in the case of the computer, it might well arise out of the \goal" to learn more about restaurants.
In other words, speci c knowledge goals can arise from other, more general, desires to learn, to pursue one's intellectual interests, to improve one's model of the world. (We present a more detailed analysis of the origins of knowledge goals below.) These goals can be viewed as questions about the domain of interest. To be interested in terrorism, for example, is to have a lot of questions about various aspects of terrorism, and to think about these questions in the context of input data about terrorism, such as newspaper stories about terrorist incidents. For someone with these knowledge goals, the point of reading newspaper stories about terrorism is to answer one's questions, as well as to reveal aws or gaps in one's model so as to improve it.
These gaps give rise to new questions which in turn stimulate further interest in terrorism. Both computers and people can be \interested" in terrorism in this sense. These interests arise out of the underlying goal of wanting to learn and improve one's model of the world.
2 Computer programs with knowledge goals: Two case studies Speci c desires for knowledge have a clear role in the focus of attention during natural language processing, and in directing machine learning programs. They are apparent in studies of human cognition, and have strong computational advantages in practical resource-constrained reasoning situations. We believe that AI systems should generate and manipulate explicit knowledge goals. This approach has implications for nearly every kind of automated reasoning system. Here we will discuss the general issues and then concentrate on programs in two broadly representative areas: natural language understanding and medical diagnosis.
In complex knowledge-based systems, it is nearly impossible to create a system that contains all the knowledge it needs in order to accomplish its goals. Instead, such systems should be able to improve their performance with experience. Both natural language texts and medical cases provide a multiplicity of possible inferences that might conceivably be useful in improving the abilities of a performance system. In both areas, the use of explicit knowledge goals helps narrow the vast space of possible inferences to a more manageable set, and helps the program make decisions about when to draw potential inferences.
One of our examples is AQUA, a story understanding program that learns from what it reads Ram, 1987;
Ram, 1989]. In order to understand text, the performance system must integrate the text, which is often ambiguous, elliptic and vague, with its world knowledge, which is often incomplete and possibly incorrect. In order to learn from what it reads, it must detect perceived anomalies in the text which may identify aws or gaps in the understander's model of the domain, formulate explanations to resolve those anomalies, con rm or refute potential explanations, and possibly learn new explanations or modify incorrect ones.
These tasks can require a great deal of inference. In formulating an explanation, for example, the understander may need to know more about the situation than is explicitly stated before it can decide which is the best explanation. However, it is impossible to anticipate when a particular piece of knowledge will be available to the understander, since the real world (in the case of a story understanding program, the story) will not always provide exactly that piece of knowledge at exactly the time that the understander requires it.
At some later time, a clue to the missing knowledge may become available, and the inferences necessary to acquire the desired knowledge become worth performing, even if they are complex or a priori unlikely. Thus the understander must be able to suspend a request for that piece of knowledge in memory, and reactivate the request at the right time when the information it needs may have become inferrable. In other words, the understander must be able to remember what it needs to know, and why, and those stored desires should have an e ect on the inference process.
The process of natural language understanding generates knowledge goals (or questions) representing what the understander needs to know in order to perform an understanding task, be it explanation, learning, or some other cognitive task. These questions constitute the speci c knowledge goals of the understander generated during a parsing experience, and are used to focus the reasoning processes on aspects of the input that are actually relevant. These goals are also used to focus the learning process so that the system learns what it needs to know in order to better carry out its tasks. As we shall see, this requires that the system be able to represent and reason about its own reasoning processes, and about the knowledge needed during these processes.
Another, rather di erent, example is IVY, a program that does di erential diagnoses and is intended to improve its accuracy with experience Hunter, 1989]. The basic idea was to design a program that improves its accuracy by storing information from the cases it diagnoses correctly. The problem is that there is a huge amount of information in the correctly diagnosed cases. Most of that information is not useful for improving diagnostic performance: after all, the cases were handled correctly. On the other hand, there are nuggets of information in that set of cases that are very useful for improving performance. How can a program nd the useful bits without drowning in irrelevant information? IVY's approach was to use explanations of failures to identify diagnostic knowledge that is missing or incorrect. Those explanations can be transformed into characterizations of information that would be useful to have to avoid the failures. That characterization is e ectively a knowledge goal, and can be used to rapidly scan correctly diagnosed cases for information that would help address previously encountered problems.
In order improve its accuracy, therefore, a diagnosis learner can identify the cause of a failure in terms of knowledge that was missing (or incorrect) and then use that to build a characterization of knowledge that would address the problem. This characterization constitutes a speci c goal to acquire the correct knowledge. In order to identify the problematic knowledge and generate the goal, the learner must reason about the diagnostic reasoning process. Once analysis of failures has led to the generation of knowledge goals, the program can plan to acquire the knowledge. For IVY, the plans involved looking for speci c kinds of information in one or more cases (either cases already in memory or as they arise for diagnosis), and then to transform and store the information so that it addresses the cause of the motivating failure. IVY's plans were capable of using case information both to supplement its general abilities and to nd (and store) exceptions to its general rules.
Before exploring these two programs in more detail, let us pause to consider the commonalities in use and generation of knowledge goals between the programs. Both programs use desires about knowledge to control potentially explosive inferential processes. For AQUA, the number of inferences that can be drawn from a story is very large. AQUA only draws those inferences that are likely to answer questions that it has. IVY is looking for ways to improve its diagnostic performance. Any given case might be relevant to a problem that has occurred in making a diagnosis. (As will be seen below, sometimes a relevant case may not even involve the same disease that caused the problem in the rst place.) Every aspect of every diagnosed case might be relevant to any of the program's diagnostic knowledge. The number of possible interactions between all aspects of all cases and all knowledge is huge. IVY reduces this search space dramatically by characterizing the knowledge it desires as speci cally as possible.
It is also apparent that, for both programs, characterizing desirable knowledge requires the ability to reason about internal reasoning processes and the knowledge they use. This ability to dynamically evaluate the knowledge used by internal processing (e.g., to nd gaps in that knowledge that would have changed the processing had they been lled) may be a general feature of many kinds of learning systems. This kind of reasoning about internal processing and knowledge is a form of introspection that we conjecture may be a necessary component of human-like learning.
There are certain general questions that arise in any discussion of goal-based systems: Where do the goals come from? Do they con ict? How are con icts resolved? We discussed the origin of goals for knowledge generally above, and describe in more detail below how the particular implementations handle that problem.
AQUA generates knowledge goals when it fails to explain an event in a story; IVY generates knowledge goals when it fails to make a correct diagnosis. In both cases, the set of knowledge goals are dynamic, with new desires for knowledge arising as a result of system performance analysis.
One of the features of goals for knowledge that appears to distinguish them from goals for physical states is that, other than contention for resources like time and storage space, goals for knowledge do not appear to con ict with each other. That is, learning some piece of knowledge does not appear to be able to disable any preconditions for other learning; you cannot \paint the ladder before you paint the ceiling" in the domain of learning. In the programs presented below, we assume that goals for knowledge do not con ict with each other. Even without explicit goal con ict, there can be contention for resources such as time and storage space which may require prioritizing knowledge goals or other methods of resolving the contention. Both systems described here are strictly opportunistic goal pursuers, in that they wait for appropriate knowledge to appear at their inputs. A system that could initiate action in pursuit of a knowledge goal (e.g., issue a database query) would have to prioritize its knowledge goals in ways that IVY and AQUA do not.
2.1 AQUA The AQUA project explored these ideas in a natural language understanding domain. AQUA is a questiondriven story understanding program that learns about terrorism by reading newspaper stories about unusual terrorist incidents in the Middle East. The main point of that research was to create a dynamic story understanding program that is driven by its questions or goals to acquire knowledge (see gure 1). Rather than being \canned," the program is always changing as its questions change; it reads similar stories di erently and forms di erent interpretations as its questions and interests evolve.
The AQUA project explores issues of learning, explanation, and interestingness in an integrated framework. The intent is not to have the program acquire the \right" understanding of terrorism, but rather to be able to wonder about unusual things it reads about and ask questions about them. As it learns more about the domain, it asks better and more detailed questions Ram, 1991]. This kind of questioning forms the origins of creativity; rather than being satis ed with available explanations, a creative person asks questions and tries to explore the explanations in novel ways.
Figure 1: Question-driven understanding: Using knowledge goals to guide story understanding and learning.
\interests" that AQUA begins with.
Text goals: Knowledge goals of a text analysis program, arising from text-level tasks. These are the questions that arise from basic syntactic and semantic analysis that needs to be done on the input text, such as noun group attachment or pronoun reference. An example text goal is to nd the referent of a pronoun.