Chapter 9

Semantic Nets and Frames

(alias: Weak Slot-and-Filler Structures)

Weak because no commitments are made about the content --

here we are looking at the form of the knowledge representation

attributes are slots

values are fillers

Knowledge structures

knowledge: data about a particular domain

structures: organization

(e.g., schema ... frames, scripts )

Barlett (1932) Minsky(1975) Schank(1977)

psych AI

read Chapter 9, 10 for interesting perspectives and insights

AI considerations:

(1) are there properties of objects that are ubiquitous

*basic over problem domains

(2) what level should knowledge be represented

*primitives

(3) access

(remember AI: * what is knowledge

* how organized

* so accessed and used)

Examples:

(1) properties of objects

ISA (instances), ISPART, AKO (subclasses)

(or some books (this one) say ISA is subclass

INSTANCE means instance)

allows property inheritance and transitivity

In predicate logic: ISA(arg, predicate)

How get this transitive property?

ISA(x,y) and ISA(y,z) then ISA(x,z)

(2) level of detail

primitives - small number of low-level primitives from which to build larger structures

(e.g.)

John spotted Sue

spotted( agent( John)

object (Sue) )

roles in the event "spotted"

nl. spotted => saw ...? distinct? keep both?

advantage of primitives:

* rules can be written considering a small number of primitives for inferences

arguments against:

*what are they really... finite? definative? reducable? best?

*conversion - how much work to convert to primitives

*simple high-level facts may require unreasonable storage when converted (get rid of redundancy using arguments)

(e.g. primitives)

represent aunt/uncle/cousin using

mother/father/son/ daughter

cousin

* Mary = daughter(brother(mother(Sue)))

Mary = daughter(sister(mother(Sue)))

Mary = daughter(sister(father(Sue)))

Mary = daughter(brother(father(Sue)))

using parent/child/sibling/male/female

Mary = child(sibling(parent(Sue)))

* correct set is not obvious

e.g., John broke the window ... meaning ambiguous ...

primitive is the action - how?

Functional representation - primitives are "types" of function

(3)access

Finding "right" structures as needed

Script for restaurants

- how index ... how identify (Schank "all of AI is indexing (reminding)")

- what expected ... how much

Methods to invoke

- index structure directly by content words

(e.g., verbs -> e.g., meanings of fly

- consider each content word as pointer to (all) "script"

parallel exploration ...movie: Hollywood, date, etc.

- locate a major clue in text to select structure

(>1 word)

same questions: what to represent, how to represent, access

General Solutions: Semantic Nets and Frames

A representation is a set of syntactic and semantic conventions that make it possible to describe things.

- syntax specifies the symbols that may be used and the ways the symbols may be arranged

- semantics specifies how meaning is embodied in the symbols and the arrangements allowed

Semantics distinguishes semantic nets from ordinary nets

Semantic Nets: first structured representations

(Quillian, 1968)

Information is represented as a set of nodes connected by a set of label arcs which represent relationships

E.g., LISP implementation Graphically

ATOM propertylist

Marcus (instance Man)

chair (ISA furniture)

my-chair (instance chair)

each property is a one-way link

Semantic Nets and problem solving

Spreading Activation - "intersection search"

find relationships among objects by 'spreading activation' out from each node and see where activation meets

(connectionism and neural nets)

(e.g., answer "what is the relationship between Dodgers and blue?" (Rich, pg. 252))

Also used for representing sentences

(e.g. ATN's Augmented Transition Networks - representation for grammar and used to parse sentences)

Restrictions on way info is represented?

- in principle, none ... but

e.g. Mychair can be wet but concept chair cannot

e.g. Size of American population differs from size of a man 5'11"

e.g. What is best organization & what links in net? (Object-oriented design)

(question of what hierarchical representation emphasises important relationships)

inheritance, demons (a.v.), defaults - led to frames

Structured Representations of Knowledge

share the notion that complex entities can be described as a collection of attributes and associated values

Associative memory

OBJECT ATTRIBUTE VALUE

common approach: associate with object with 'property list'

(list of (attribute value) pairs)

Expert System 'shells' and recent AI languages (KRL, FRL) provide 'slot-and-filler' structures as part of the language.

The programmer need not be concerned with implementation

Structures developed to represent knowledge so can be used to solve problems... thus they are associated with particular inference mechanisms .

Decisions of "good representations" ...

Computational efficiency vs formally complete

Good representations

* make important things explicit

* expose natural constraints, facilitating some class of computations

* are complete. One can say all that needs to be said

* are concise. One can say things efficiently

* are transparent to us. One can understand what is being said

* facilitate computation. One can store and retrieve information quickly

* suppress detail. Rarely used info is 'out of sight' but available when necessary

* are computable by an existing procedure

Frames - Minsky, 1975

frame - a collection of semantic net nodes and slots that together describe a stereotyped object, act, or event

psychological insight -

*intelligent agents have available in memory a large collection of structures representing previous experiences with objects, locations, situations, and people

*analysis of new experiences draw on past experiences

*concept/implementation: a frame describes a class of objects using a collection of slots that describe aspects of the objects

slots can have - conditions

- defaults

- procedural information

*if-needed to -establish

and

*Demons: if-added active values

* frames contain information about 'important' aspects of the object or situations they describe (expectations)

* frames contain attributes that must be true of objects - used to build a description

* frames describe typical instances

Perspectives

Use: make it easy to infer as yet unobserved facts about a new situation

Instantiation: how match "best"

keywords (how many times)

events

frames in natural language processing

Schank & Abelson - scripts