Scruffy Knowledge Representation Schemes
- Knowledge Graphs (previously "Semantic nets")
- Introduction from
IBM
- Describe the world in terms of objects (nodes) and binary associations (labelled
directed edges).
- Example: Snow and ice
- Common associations
- Classification - instance_of/member_of
- Aggregation - part_of
- Generalization - is_a/subset_of
- Example: My chair
- Example: Choose a student
- Richer associations.
- Any can be made up
- Hyper-edges for n-ary associations.
Example: John gave Mary a book
- Boxed relations for universal quantification.
Double boxed relations for existential quantification.
Example: Mary
- Taking care with object nodes
- Beware confusing instance_of and subset_of.
Example: My chair is a chair
- Beware confusion with relation on sets and instances, e.g., size_of people
- Variable values. Example: John is taller than Bill
- Reasoning
- Paths between nodes (graph theory :-)
- Inheritance in is_a and part_of associations.
Examples: Ontology, the dog parts, Mary's legs
- Intersection search. Example: Mary and people
- Attaching epistemic and assertional status to associations
- Partitions allow
- Quantification. Example: The biting dog
- Meta-statements. Example [ala Lug p.227]
- Implementation
- Direct with linked structures
- Using logic with binary predicates, and having formulae
to express hierarchies, etc.
- Careless use of associations leads to incompleteness (e.g., two labels for the same
association).
- Sets of "adequate" associations have been proposed.
- Conceptual dependancies use hyper edges and a rich set of associations.
Example: John ate the egg.
Example: John prevented Mary from giving a book to Bill.
- Views from
neo4j;
Wikipedia
- Frames and Property Graphs
- A way of representing stereotypical objects and situations.
- A "struct", whose slots may contain
- Data (possibly a (link to) another frame
- Default values
- Constraints
- Procedures to run when a value is needed, inserted, removed
- Example: Hotel room
- Reasoning
- Default reasoning - slots exist => there exists a value, e.g., a room has a door.
- Constraints provide information for reasoning, and violations suggest repairs.
- Attaching epistemic and assertional status to slots
- Scripts
- Frames for sequences of events.
Example: Restaurant
- Components
- Track
- Props
- Roles/actors
- Entry conditions
- Exit results
- Scenes
- Reasoning
- Examples: Restaurant queries
- Used as nodes in Knowledge Graphs to form
Property Graphs
- Historical fact: helped produce the notion of OO programming
Exam Style Questions
- Explain how semantic nets and frames can be viewed as different implementations of the same
basic knowledge representation schema.
Suggest types of knowledge for which each is more suitable.
- Give a property graph representation of the following:
Billy is a mountain.
Ethel is a tree.
All mountains have trees growing on them.
Billy has one tree growing on him.
Ethel grows on Billy.
- Explain what the following are in terms of scripts:
- Track
- Props
- Roles
- Entry conditions
- Scenes
- Results
- Give a script suitable for the typical exam writing event.