Knowledge Hierarchies
"Because [an NLP] requires such large amounts of broad-based knowledge, natural language understanding has always been a driving force for research in knowledge representation." (Luger & Stubblefield, 1998)
For language parsing, comprehension and translation, a machine must have a knowledge base of information from which it can process the incoming language. Current systems base their knowledge storage on the way that human brains operate (Luger & Stubblefield, 1998). This knowledge is stored in object hierarchies, with each object having a set of properties and value associated with it. Like all object orientated storage, subclasses inherit properties from their superclass. Examples of these properties could be "colour is yellow" and "size is small" for the object canary. However, the object canary will inherit the properties "can fly" and "lays eggs" from the superclass object: bird. However, there can also be class exceptions. For example, a penguin is an instance of the bird class, but it has an exceptions: it can not fly. This knowledge is stored in a tree (see diagram from Luger & Stubblefield, 1998), and during the process of language parsing, this tree may need to be referred to. This provides the NLP with a basic set of "common sense"
Semantic Networks
The first computer implementation of semantic networks were developed in the early 1960s for use in machine translation (Luger & Stubblefield, 1998)
An early influential program that illustrates many of the features of early semantic network was written by Quillian in the late 1960s (Quillian, 1967). He defined words based on other words, this sometimes resulted in circular definitions, but the program traversed the tree until it gained satisfactory understanding.
Quillian suggested that a natural language system would have to:
- Determine the meaning of a body of text by building up collections of these intersection nodes
- Choose between multiple meanings, by finding the closest meaning as an intersection on the relationship path
- Answer a flexible range of queries based on associations between word concepts in the queries and concepts in the system.
