Cogito comprehends natural language because it understands meaning and interprets the concepts contained in text as a human would do. This human-like capability is based on “disambiguation.”
What is disambiguation?
Our language contains many ambiguities. While humans can easily disambiguate meaning in context by leveraging our experience and education, the automatic interpretation of language is a challenge for a technology.
Cogito resolves ambiguity by performing disambiguation through the interaction between its embedded semantic engine and knowledge graph. This allows it to distinguish between the various meanings of all the elements of a sentence through “reasoning”, to differentiate the proper context and to resolve conflicts that arise when a word can express more than one meaning.
In other words, starting from the linguistic analysis of a text, Cogito’s disambiguation process represents a text in terms of concepts, entities and the relationships that exist between them. This is the foundation of a cognitive and conceptual map of text, which constitutes the final output of the disambiguation process and is a key element of language understanding.
Phases of the disambiguation process
Expert System’s text analysis consists of consecutive phases of analysis including:
- Lexical and grammatical analysis to identify nouns, proper nouns, verbs, adjectives, articles, etc.
- Syntactical analysis to identify a first level of word groups represented by “phrases” (noun phrases, verb phrases, prepositional phrases, etc.), a second level of word groups represented by clauses (a clause can be a sentence; multiple clauses can be combined to form a complex sentence), and a third level of word groups represented by sentences (a sentence is a grammatical unit consisting of one or more words that are linked to one other by a syntactic relation in order to convey meaning).
- Semantic analysis to associate words to meanings by leveraging the interaction between Expert System’s natural language understanding or semantic engine and Sensigrafo. After lexical, grammatical and syntactical analysis, words are associated to several concepts among those available in Sensigrafo. The disambiguator begins skimming the list of candidates for each word by considering the context in which every word appears to determine its meaning.