CS
337 -- Intro
to Semantic Information Processing-- L. Birnbaum
LECTURE
5: INFERENCE: AN INTRODUCTION
We now turn to a discussion of Rieger's theory of
inference. Like all
AI theories, it consists of two parts:
CONTENT
(Rieger and Schank): 16 classes of inference that can be
drawn
given an act, state, or causal relation.
We have already seen three of these classes: enablement
inference, result inference, function inference.
PROCESS
(Rieger): Spontaneous, automatic, "bottom-up" inference
from
inputs and inferred concepts, searching for matches with
previously
known concepts in memory, or others inferred from the
input
itself.
Let's consider the process first.
Rieger's claim is that just about
all inferences that it is possible to draw, should
in fact be drawn.
The
purpose of inference in his system is to discover unforeseen
relations
among concepts.
"The
'goal' of inferencing is rather amorphous: make an inference,
then
test to see whether it looks similar to, is identical to, or
contradicts
some other piece of information in the system.
When
one
of these situations occurs, the memory can take special action
in
the form of discontinuing a line of inferencing, asking a
question,
revising old information, creating new causal
relationships,
or perhaps invoking some sort of higher-level,
goal-directed
belief pattern..."
This
is perhaps not so clear as it should be. The
biggest problem
with
Rieger's process theory is that the system never really does
much
with the inferences it draws.
In more detail:
Indexed
under each predicate and object in each input concept, by
the
name of the inference type, are "inference molecules" that
specify
(1) what the appropriate inference of that type is for
that
predicate or object, and (2) how to apply it to the current
input
concept. Inference molecules are
really just little
fragments
of LISP code -- or they may be viewed as productions or
inference
rules to be executed by a special rule interpreter.
Each
input concept is placed on a queue, and all of the inferences
that
can be drawn from it are drawn, and the resulting concepts
are
placed on the end of the queue for later inference. In other
words,
breadth-first expansion through inference space.
"When
a new inference is generated, one of three conditions can
apply:
(1) The new inference can match something else in memory.
When this happens, the new information is said to CONFIRM the
old.
(2) The new inference CONTRADICTS (is incompatible with) some
old information. This means
either that something is
Conceptually peculiar about the utterance, or that memory has
made an incorrect decision about some referent, or has
generated a probabilistic inference which turns out to be
unlikely.
(3) The new inference can neither be determined to contradict
nor confirm old knowledge. In
this case, the new information
is simply remembered, and is said to AUGMENT existing
knowledge."
Let's look at an example:
John
told Mary that Bill wants a book.
1
John believes that Bill wants a book.
2
Mary now knows that Bill wants a book.
3
Bill wants a book.
4
Bill wants to come to possess a book.
5
Bill probably wants to read a book.
6
Bill might want to know the concepts contained in a book.
7
A book about what?
8
Bill might get himself a book.
9
John might give Bill a book.
10
Mary might give Bill a book.
11
John may want Mary to give Bill a book.
12
John and Mary may have been together recently.
Some
of these seem quite reasonable (e.g., 1-4, 7-8, 12) or even
insightful
(11). On the other hand, others
seem a bit weird (9).
A clearer example of the problem here:
John
hit Mary.
1
John probably used his hand.
2
Mary was probably hurt.
3
John probably wanted to hurt Mary.
4
John might have been angry at Mary.
5
Mary now wants to feel better.
6
John probably wants Mary to feel better.
What's
wrong with 6? The inference being
used here is
motivational
-- people usually want the outcomes of their actions.
(This
is how 3 was derived). But
obviously it has been taken too
far.
In other words, the problem with the lack of
goal-direction in
Rieger's theory is that it's hard to know when to
STOP making
inferences.
There
are several ways to handle this problem: (ask for class
input)
Unprincipled:
Stop expanding an inference chain after it reaches a
specified
length.
Principled:
Stop expanding an inference chain after it leads to
confirmation
of or contradiction with other information
Principled:
(special case of above) Keep checking for inherent
reasonableness
of inferences. Stop expanding an
inference chain
when
it generates an unreasonable inference.
Turning now to the 16 inference classes themselves:
SPECIFICATION:
The representation of an action has certain
conceptual
cases which must be filled in (specified).
If the
input
language leaves them unspecified, they must be inferred as
specifically
as available information allows.
John picked up a rock. He
hit Bill.
JOHN HIT BILL WITH THE ROCK.
CAUSATIVE:
What were the likely causes of an action or state?
John hit Mary.
JOHN WAS PROBABLY MAD AT MARY.
RESULTATIVE:
What are the likely results (effects on the world) of
an
action?
Mary gave John a car.
JOHN HAS THE CAR.
MOTIVATIONAL:
Why did (or would) an actor want to perform an
action?
What were his intentions? In
the absence of information
to
the contrary, people can be assumed to perform actions for the
probable
consequences of those actions.
Mary hit John.
MARY PROBABLY WANTED JOHN TO BE HURT.
ENABLEMENT:
What states of the world must be (or have been) true
in
order for some action to occur?
Pete went to Europe.
WHERE DID HE GET THE MONEY?
FUNCTION:
Why do people desire to possess objects? Usually,
in
order
to perform their normal functions.
John wants the book.
JOHN PROBABLY WANTS TO READ IT.
ENABLEMENT-PREDICTION:
If a person wants a particular state of the
world
to exist, is it because of some predictable action that
state
would enable?
Dick looked in the cookbook to find out how to make a roux.
DICK WILL NOW BEGIN TO MAKE A ROUX.
MISSING-ENABLEMENT:
If a person cannot perform some action he
Desires,
can it be explained by some missing prerequisite state of
the
world?
Mary couldn't see the horses finish.
She cursed the man in
front of her.
THE MAN BLOCKED HER VISION.
INTERVENTION:
If an action in the world is causing (or will cause)
undesired
results, what might an actor do to prevent or curtail
the
action?
The baby ran into the street. Mary
ran after him.
MARY WANTS TO PREVENT THE BABY FROM GETTING HURT.
ACTION-PREDICTION:
Knowing a person's needs and desires, what
actions
is he likely to perform to attain those desires?
John wanted some nails.
HE WENT TO THE HARDWARE STORE.
KNOWLEDGE-PROPAGATION:
Knowing that a person knows certain things,
what
other things can he also be predicted to know?
Pete told Bill that Mary hit John with a bat.
BILL KNEW THAT JOHN HAD BEEN HURT.
NORMATIVE:
Relative to knowledge of what is normal about the
world,
determine how strongly a piece of information should be
believed
in the absence of specific knowledge.
Does Pete have a gall bladder?
IT'S HIGHLY LIKELY.
STATE-DURATION:
Approximately how long can some state or
protracted
action be predicted to last?
John handed a book to Mary yesterday.
Is Mary still holding
it?
PROBABLY NOT.
FEATURE:
Knowing some features of an entity, and the situations in
which
that entity occurs, what additional things can be predicted
about
that entity?
Andy's diaper is wet.
ANDY IS PROBABLY A BABY.
SITUATION:
What other information surrounding some familiar
situation
can be imagined or inferred?
Mary is going to a masquerade.
SHE WILL PROBABLY WEAR A COSTUME.
UTTERANCE-INTENT:
What can be inferred from the WAY in which
something
was said? Why did the speaker say
it? (Once his
reasons
have been inferred, the proper response, e.g., to offer
help,
might become clearer.)
Mary couldn't jump the fence.
WHY DID SHE WANT TO?
Let's look at how specification inferences get made:
John
hit Bill.
(RESULTS
Action (PROPEL Actor (JOHN) Object (X) To (BILL) From (JOHN))
State (IN-PHYSICAL-CONTACT Object1 (BILL) Object2 (X)))
What
is the X that John PROPELled?
A
general rule: If all else fails, find an X in memory which has
the
appropriate conceptual features, and which was recently
created
or referenced.
A
specific rule for determining the OBJECT of PROPEL: If the ACTOR
had
has something in his hand at the time the PROPEL takes place,
assume
that it is the OBJECT of the PROPEL. Else,
assume that the
OBJECT
of the PROPEL is the ACTOR's hand.
Causal chains:
Input causals are often incomplete.
Mary
didn't like Bill.
Mary
kissed John because he hit Bill.
Working
forwards from "hit":
1
John propelled his hand towards Bill.
results
2
John's hand came in physical contact with Bill.
enables
3
John propelled Bill.
results
4
Bill suffered a negative change in physical state.
initiates
5
Mary's happiness increases.
initiates, in
conjunction with 3
6
Mary likes John.
Working
backwards from "kiss":
7
Mary kissed John.
Reason-is
8
Mary likes John.
Recall
that memory is always looking for matches between concepts.
Because
6 and 8 match, they are merged, and a connected causal
chain
is the result.
-------------------------------------------------------------------------------
Assignment
Write
a Rieger inference program. Implement
the following classes
of
inference, where applicable,
Causative
Resultative
Motivational
Enablement
Function
for,
at least, the following actions, states, and objects
ATRANS
PTRANS
MTRANS
PROPEL
ATTEND
EATING
LOCATION
POSSESSION
KNOWLEDGE
WANTING
HEALTH
HAPPINESS
BOOKS
TELEPHONES
FOOD
And more if you like. The program will take instances of concepts as
input (not English), and will be used in two modes:
(1)
Simply to draw inferences from a single input concept,
stopping
an inference chain at some fixed length.
(2)
To build causal chains.
Including the following examples:
John went over
to the book.
John looked up
something in it.
Mary gave John
some money.
John bought a
car.
Mary went over
to the telephone.
She told John
that she would be home at 8.
John bought a
book.
He read the
book.
And any others you want.
-------------------------------------------------------------------------------