Knowledge Representation

advertisement
AI – CS364
Knowledge Representation
Introduction to Knowledge Representation
12th September 2006
Dr Bogdan L. Vrusias
b.vrusias@surrey.ac.uk
AI – CS364
Knowledge Representation
Contents
•
•
•
•
•
Defining Knowledge Representation
Knowledge Representation Schemes
Semantic Networks
Taxonomy
Ontology
12th September 2006
Bogdan L. Vrusias © 2006
2
AI – CS364
Knowledge Representation
Knowledge Representation
• 'A representation is a set of conventions about how to describe a class
of things. A description makes use of the conventions of a
representation to describe some particular thing.' (Winston 1992:16).
• 'Good representations make important objects and relations explicit,
expose natural constraints, and bring objects and relations together'
(ibid: 45)
• The representation principle:
– Once a problem is described using an appropriate representation, the
problem is almost solved.
12th September 2006
Bogdan L. Vrusias © 2006
3
AI – CS364
Knowledge Representation
Starting with an Example
•
The Farmer, The Fox, The Goose and The Grain:
–
•
The farmer must get a fox, a goose and a sack of grain across a river,
however his boat is small and he can only carry one thing at a time. His
problem is that if he leaves the fox with the goose the goose will be
eaten, and if he leaves the goose with the grain, the grain will be eaten…
A good representation makes it easier for us to solve the problem:
1.
2.
3.
4.
Draw possible safe combinations in a diagram.
Arrange appropriate combinations in order.
Link appropriate arrangements to represent boat trips.
Problem is solved!
12th September 2006
Bogdan L. Vrusias © 2006
4
AI – CS364
Knowledge Representation
Farmer
Fox
Goose
Grain
Grain
Farmer
Goose
Grain
Fox
Farmer
Goose
Fox
Fox
Grain
Farmer
Fox
Grain
Goose
Farmer
Goose
Farmer
Goose
Goose
Farmer
Fox
Grain
Fox
Grain
12th September 2006
Fox
Farmer
Fox
Goose
Farmer
Goose
Grain
Grain
Bogdan L. Vrusias © 2006
Farmer
Goose
Fox
Grain
5
AI – CS364
Knowledge Representation
Knowledge Representation Schemes
• A number of knowledge representation schemes (or formalisms) have
been used to represent the knowledge of humans in a systematic
manner. This knowledge is represented in a knowledge base such that
it can be retrieved for solving problems. Amongst the well-established
knowledge representation schemes are:
–
–
–
–
–
–
–
–
–
Production Rules
Semantic Networks
Frames
Conceptual Dependency Grammar
Conceptual Graphs
Ontology
Predicate and Modal Logic
Conceptual or Terminological Logics
XML / RDF
12th September 2006
Bogdan L. Vrusias © 2006
6
AI – CS364
Knowledge Representation
Semantic Networks
• Ross Quillian (1966 and 1968) was among the early AI workers to
develop a computational model which represented 'concepts' as
hierarchical networks.
• This model was amended with some additional psychological
assumptions to characterise the structure of [human] semantic memory.
12th September 2006
Bogdan L. Vrusias © 2006
7
AI – CS364
Knowledge Representation
Semantic Networks
• Collins and Quillian (1969) proposed that:
– Concepts can be represented as hierarchies of interconnected concept nodes (e.g. animal, bird, canary)
– Any concept has a number of associated attributes at a given level
(e.g. animal --> has skin; eats etc.)
– Some concept nodes are superordinates of other nodes (e.g.
animal > bird) and some are subordinates (canary < bird)
12th September 2006
Bogdan L. Vrusias © 2006
8
AI – CS364
Knowledge Representation
Semantic Networks
• For reasons of cognitive economy, subordinates inherit all the
attributes of their superordinate concepts.
• Some instances of a concept are excepted from the attributes that help
[humans] to define the superordinates (e.g. ostrich is excepted from
flying)
• Various [psychological] processes search these hierarchies for
information about the concepts represented.
12th September 2006
Bogdan L. Vrusias © 2006
9
AI – CS364
Knowledge Representation
Semantic Network Example
canary
can sing, is yellow
bird
is-a
can fly, has wings,
has feathers
ostrich
animal
can breathe, can eat,
has skin
is-a
is-a
runs fast, cannot fly,
is tall
salmon
fish
is-a
can swim, has fins, has gills
lays eggs; swims upstream,
is pink, is edible
is-a
12th September 2006
Bogdan L. Vrusias © 2006
10
AI – CS364
Knowledge Representation
Semantic Network Example
• From the above taxonomic organisation of knowledge about a number
of different animals, one can conclude, by inheriting properties down
the taxonomy, that canaries, ostriches and salmon all have skin and
can breathe.
• But we as humans can also make exceptions to inherited properties in
that we can represent an not-flying bird in a (sub-) hierarchy of birds
by simply noting the exception, can't fly.
• Collins and Quillian carried out a number of tests on human subjects
and found that the subjects recognise propositions lower down the
hierarchy (canary is a yellow bird) more readily than propositions
higher up the hierarchy (canary has skin).
12th September 2006
Bogdan L. Vrusias © 2006
11
AI – CS364
Knowledge Representation
Defining Inheritance
• AI researchers have refined the notion of inheritance:
– It is called a specialised inferencing technique 'for representing properties
of classes, exceptions to inherited properties, multiple superclasses, and
structured concepts with specific relations among the structural elements'
(Touretzky 1992:690).
12th September 2006
Bogdan L. Vrusias © 2006
12
AI – CS364
Knowledge Representation
Semantic Networks
• A semantic network is a structure for representing knowledge as a
pattern of interconnected nodes and arcs. Nodes in the net represent
concepts of entities, attributes, events, values. Arcs in the network
represent relationships that hold between the concepts.
• A semantic network is a graph theoretic data structure whose nodes
represent word senses and whose arcs express semantic relationships
between these word senses.
• Quillian gave an account, perhaps first used by a computer scientist, of
the associate features of human memory that incorporated a spreading
activation model of computation.
12th September 2006
Bogdan L. Vrusias © 2006
13
AI – CS364
Knowledge Representation
Networks and 'Meaning' Representation
• The biosystematic notions of taxonomies, where the concept of
superordinates and subordinates plays a major role on the knowledge
representation literature.
• TAXONOMY OF LIFE: The taxonomic organisation of species in a
hierarchical structure:
– Kingdom > Phylum (division in botany) > Class > Order > Family >
Genus > Species
• Carolus Linneaus (c.18th century Swedish botanist) devised the system
of binomial nomenclature used for naming species:
– each species has a two-part Latin name, formed by appending a specific
epithet to the genus name.
– The latter is capitalised and both parts italicised.
12th September 2006
Bogdan L. Vrusias © 2006
14
AI – CS364
Knowledge Representation
Modern Taxonomy Example
DOG
SUGAR
MAPLE
BREAD
MOULD
INTESTINAL
BACTERIUM
POND ALGAE
KINGDOM
Animalia
(animals)
Plantae
(plants)
Fungi (fungi)
Prokaryotae
(bacteria)
Protoctista (algae,
protozoa, slim
moulds)
PHYLUM
Chordata
Magnoliophyta
Zygomycota
Omnibacteria
Chlorophyta
CLASS
Mammalia
Rosidae
Zygomycetes
Enterobacteria
Euconjugatae
ORDER
Carnivora
Sapindales
Macorales
Eubacteriales
Zygnematales
FAMILY
Canidae
Aceraceae
Mucoraceae
(E. coli does not
have a family
classification)
Zygnemataceae
GENUS
Canis
Acer
Rhizopus
Escherichia
Spirogyra
SPECIES
C. familiaris
A.saccharum
R. stolonifer
E. Coli
S. crassa
12th September 2006
Bogdan L. Vrusias © 2006
15
AI – CS364
Knowledge Representation
Representation and Biosystematics
• Work in knowledge representation has been influenced by key notions
in biosystematics.
• However, there are crucial differences between what a taxonomist does
and a knowledge engineer does.
• The key difference is that of the intended audience in the two cases:
– for the taxonomist the audience is intelligent and human
– and for the knowledge engineer the primary 'audience' is a computer
system, or more accurately the representation program.
12th September 2006
Bogdan L. Vrusias © 2006
16
AI – CS364
Knowledge Representation
Ontology
• Definition:
– “The science or study of being; that department of metaphysics
which relates to the being or essence of things, or to being in the
abstract.”
(OED online, http://www.oed.com/)
12th September 2006
Bogdan L. Vrusias © 2006
17
AI – CS364
Knowledge Representation
Ontology
• AI experts, like Tom Gruber, suggest that:
– 'In the context of knowledge sharing, I use the term ontology to mean a
specification of a conceptualization. That is, an ontology is a description
(like a formal specification of a program) of the concepts and relationships
that can exist for an agent or a community of agents. This definition is
consistent with the usage of ontology as set-of-concept-definitions, but
more general. And it is certainly a different sense of the word than its use
in philosophy.‘
(www-ksl.stanford.edu/kst/what-is-an-ontology.html; last visited 10/09/06)
12th September 2006
Bogdan L. Vrusias © 2006
18
AI – CS364
Knowledge Representation
Ontology
• Also Tom Gruber, suggest that:
'An ontology is an explicit specification of a conceptualization. The term is
borrowed from philosophy, where an Ontology is a systematic account of
Existence. For AI systems, what "exists" is that which can be represented.
When the knowledge of a domain is represented in a declarative formalism,
the set of objects that can be represented is called the universe of discourse.
This set of objects, and the describable relationships among them, are reflected
in the representational vocabulary with which a knowledge-based program
represents knowledge. Thus, in the context of AI, we can describe the ontology
of a program by defining a set of representational terms. In such an ontology,
definitions associate the names of entities in the universe of discourse (e.g.,
classes, relations, functions, or other objects) with human-readable text
describing what the names mean, and formal axioms that constrain the
interpretation and well-formed use of these terms. Formally, an ontology is the
statement of a logical theory.‘
(www-ksl.stanford.edu/kst/what-is-an-ontology.html; last visited 10/09/06)
12th September 2006
Bogdan L. Vrusias © 2006
19
AI – CS364
Knowledge Representation
Ontology as a Specification Mechanism
• A body of formally represented knowledge is based on a
conceptualization: the objects, concepts, and other entities that are
assumed to exist in some area of interest and the relationships that hold
among them (Genesereth & Nilsson, 1987).
• A conceptualization is an abstract, simplified view of the world that we
wish to represent for some purpose.
• Every knowledge base, knowledge-based system, or knowledge-level
agent is committed to some conceptualization, explicitly or implicitly.
12th September 2006
Bogdan L. Vrusias © 2006
20
AI – CS364
Knowledge Representation
Ontology
12th September 2006
Bogdan L. Vrusias © 2006
21
AI – CS364
Knowledge Representation
Closing
•
•
•
•
Questions???
Remarks???
Comments!!!
Evaluation!
12th September 2006
Bogdan L. Vrusias © 2006
22
Download