ai – cs289 knowledge representation introduction to knowledge representation 11 th september 2006...
TRANSCRIPT
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Introduction to Introduction to Knowledge RepresentationKnowledge Representation
11th September 2006
Dr Bogdan L. [email protected]
11th September 2006 Bogdan L. Vrusias © 2006 2
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
ContentsContents• Defining Knowledge Representation
• Knowledge Representation Schemes
• Semantic Networks
• Taxonomy
• Ontology
11th September 2006 Bogdan L. Vrusias © 2006 3
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Knowledge RepresentationKnowledge 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.
11th September 2006 Bogdan L. Vrusias © 2006 4
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Starting with an ExampleStarting 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. Draw possible safe combinations in a diagram.
2. Arrange appropriate combinations in order.
3. Link appropriate arrangements to represent boat trips.
4. Problem is solved!
11th September 2006 Bogdan L. Vrusias © 2006 5
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Grain
FoxFarmerGoose
FarmerGooseGrain
Fox
FarmerFoxGooseGrain
FoxGrain
FarmerGoose
FarmerFoxGrain
Goose
Goose
FarmerFoxGrain
FarmerGoose
FoxGrain
FarmerGooseFoxGrain
Fox
FarmerGooseGrain
FarmerFoxGoose
Grain
11th September 2006 Bogdan L. Vrusias © 2006 6
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Knowledge Representation SchemesKnowledge 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
11th September 2006 Bogdan L. Vrusias © 2006 7
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic NetworksSemantic 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.
11th September 2006 Bogdan L. Vrusias © 2006 8
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic NetworksSemantic Networks• Collins and Quillian (1969) proposed that:
– Concepts can be represented as hierarchies of inter- connected 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)
11th September 2006 Bogdan L. Vrusias © 2006 9
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic NetworksSemantic 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.
11th September 2006 Bogdan L. Vrusias © 2006 10
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic Network ExampleSemantic Network Example
birdcan fly, has wings,
has feathers
salmonlays eggs; swims upstream,
is pink, is edible
ostrichruns fast, cannot fly,
is tall
canarycan sing, is yellow
fishcan swim, has fins, has gills
animalcan breathe, can eat,
has skin
is-a
is-a
is-a
is-a
is-a
11th September 2006 Bogdan L. Vrusias © 2006 11
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic Network ExampleSemantic 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).
11th September 2006 Bogdan L. Vrusias © 2006 12
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Defining InheritanceDefining 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).
11th September 2006 Bogdan L. Vrusias © 2006 13
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Semantic NetworksSemantic 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.
11th September 2006 Bogdan L. Vrusias © 2006 14
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Networks and 'Meaning' RepresentationNetworks 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.
11th September 2006 Bogdan L. Vrusias © 2006 15
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
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
Modern Taxonomy ExampleModern Taxonomy Example
11th September 2006 Bogdan L. Vrusias © 2006 16
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Representation and BiosystematicsRepresentation 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.
11th September 2006 Bogdan L. Vrusias © 2006 17
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
OntologyOntology• 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/)
11th September 2006 Bogdan L. Vrusias © 2006 18
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
OntologyOntology• 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)
11th September 2006 Bogdan L. Vrusias © 2006 19
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
OntologyOntology• 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)
11th September 2006 Bogdan L. Vrusias © 2006 20
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
Ontology as a Specification MechanismOntology 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.
11th September 2006 Bogdan L. Vrusias © 2006 21
AI – CS289AI – CS289Knowledge RepresentationKnowledge Representation
OntologyOntology