This is the first step in a Natural Language (i.e.,
English) Processing application. The input text is parsed sentence by sentence.
Every word is identified as to its grammatical category (such as noun, verb,
adjective, adverb, conjunction, preposition, etc.). Morphological information,
such as the tense of a verb, or whether a noun is plural or singular, is
extracted. The function of constituents is identified (subject, verb, object,
complement, adverbial). A constituent of a sentence is a clause, the
constituent of a clause is a phrase, and the constituent of a phrase is one or
more words or collocations.
Our parsing technology goes beyond traditional parsing, by assigning
meaning to sentence constituents.
Being able to represent a piece of text as a logic-form (i.e.,
using Ontological entities and relations) is the key to being able to
understand language. Even simple things that humans take for granted, such as
"if someone just arrived to a place, he or she is in that place", or
"if A killed B, then B is dead." require 'understanding'.
Within certain limits, our technology is able to
correctly answer questions on a factual English text.
Ontologies are critical in Natural Language Processing
since they encode concepts unambiguously. Words are inherently ambiguous, and highly
context dependent. Consider the three senses of the verb 'order' in the
following examples: 1) A commanding officer orders
individuals under his command to carry out a specific action. 2) Somebody orders
pizza. 3) A mailman orders letters by zip code.
An ontology first classifies things into categories, and then specifies how one thing relates to another through the use of logic predicates. Cyc, SUMO or Dolce are examples of ontologies.
To be able to answer questions on a piece of text (queries), the text and the question have first to be translated into logic form. A program called a reasoner may then 'reason' on both logical forms, and see if and how the logical form of the query can be satisfied by the logic form of the text.
Natural Language Generation deals with converting a logic
form back into human language.
Dialogue Management is concerned with keeping track of the user's goals, clarifying user intent, providing feedback to the user and structuring the output effectively.
© 2008 North Side Inc. | All rights reserved | Webmaster