Original article was published on Artificial Intelligence on Medium
Knowledge Representation Schemes
The simplest way to represent declarative facts is as a set of relations of the same sort used in the database system.
Provides a framework to compare two objects based on equivalent attributes.
Any instance in which two different objects are compared is a relational type of knowledge.
The table below shows a simple way to store facts.
- The facts about a set of objects are put systematically in columns.
- This representation provides little opportunity for inference.
- Given the facts it is not possible to answer simple question such as: “Who is the heaviest player?”
- But if a procedure for finding heaviest player is provided, then these facts will enable that procedure to compute an answer.
- We can ask things like who “bats — left” and “throws — right”.
Here, the knowledge elements inherit attributes from their parents.
The knowledge is embodied in the design hierarchies found in the functional, physical and process domains.
Within the hierarchy, elements inherit attributes from their parents, but in many cases not all attributes of the parent elements be prescribed to the child elements.
The inheritance is a powerful form of inference, but not adequate.
The basic KR (Knowledge Representation) needs to be augmented with inference mechanism.
Property inheritance: The objects or elements of specific classes inherit attributes and values from more general classes.
The classes are organized in a generalized hierarchy.
- Boxed nodes — objects and values of attributes of objects.
- Arrows — point from object to its value.
- This structure is known as a slot and filler structure, semantic network or a collection of frames.
The steps to retrieve a value for an attribute of an instance object:
- Find the object in the knowledge base
- If there is a value for the attribute report it
- Otherwise look for a value of an instance, if none fail
- Otherwise go to that node and find a value for the attribute and then report it
- Otherwise search through using isa until a value is found for the attribute.
This knowledge generates new information from the given information.
This new information does not require further data gathering from source, but does require analysis of the given information to generate new knowledge.
Example: given a set of relations and values, one may infer other values or relations. A predicate logic (a mathematical deduction) is used to infer from a set of attributes. Inference through predicate logic uses a set of logical operations to relate individual data.
Represent knowledge as formal logic:
All dogs have tails ∀x: dog(x) → hastail(x)
- A set of strict rules.
- Can be used to derive more facts.
- Truths of new statements can be verified.
- Guaranteed correctness.
Many inference procedures available to implement standard rules of logic popular in AI systems. e.g. Automated theorem proving.
A representation in which the control information, to use the knowledge, is embedded in the knowledge itself. For example, computer programs, directions, and recipes; these indicate specific use or implementation;
Knowledge is encoded in some procedures, small programs that know how to do specific things, how to proceed.
- Heuristic or domain specific knowledge can be represented.
- Extended logical inferences, such as default reasoning facilitated.
- Side effects of actions may be modeled. Some rules may become false in time. Keeping track of this in large systems may be tricky.
- Completeness — not all cases may be represented.
- Consistency — not all deductions may be correct. e.g. if we know that Fred is a bird we might deduce that Fred can fly. Later we might discover that Fred is an emu.
- Modularity is sacrificed. Changes in knowledge base might have far-reaching effects.
- Cumbersome control information.