NLP

natural language processing.

The trendy approach to NLP involves machine learning (ML). ML solutions are offered by AWS, IBM, Microsoft, and others but suffers from some limitations:

  • Training: ML needs a tedious learning process with samples of possible sentences or utterances you are expecting.
  • Lack of deterministic result: How can you be sure of the correct “understanding” of a query? This is not critical for responses that you can correlate with the question. For example, if you ask, “When was the Internet invented?” and the response is “1600”, you may think that the system did not correctly ‘match’ the sentence with an intent and thus did not provide the right answer. But if you ask, “What was the total revenue of license last quarter in EMEA?”, one needs to trust the understanding in order to trust the response number.
  • Privacy: Current offerings are usually SaaS and use the input to “improve” the ML model. We have customers using natural language for C-level types of questions in an operation control room. They don’t want their queries to be shared via text with a third party in the cloud!

Project Cloud Conversations uses English grammar to understand the structure of the question and then rely on the ontology to verify the nouns used as well as the relations. Relations could be expressed in different ways in natural language:

  • Who is John’s boss?
  • How many deals were created last quarter?
  • Show me the flights from Boston to San Francisco.

In these sentences one can see relations expressed

  • as a noun (“boss”),
  • past tense verb (“created”), and with
  • prepositions (“from/to”).

We found that the usage of the grammar analysis, extractions of entities and relations, and verification in the ontology is a very powerful way to “understand” the question with no ambiguities. The entity/relation type of intent we are creating maps very well to a graph database query.


Last modified January 1, 0001