Blog Post

Natural Language Processing

Natural Language Processing (NLP) capability has been added to KnowledgeKube Data Sources. Applying this feature to a data source lets users search the data using plain English sentences, and find results based on linguistic interpretation (e.g. products that cost more than 12 dollars or products that are not red) rather than strict logic (e.g. productCost > 12 or productColour <> “Red”). 

This way, it is easier to find text-driven search terms and cultivate the data to a huge degree. This new feature also allows us to anticipate user's habits and tendecies and improve their workflow's efficiency. 

Creating an NLP-based search interface involves two new types of question, namely Natural Language Input and Natural Language Results.

You can manually link a pair of these questions together by adding a Parameter Expression Attribute to the Results question. The parameter key should be set to “SearchTerm”, and the value should be the Input question’s keyword. If you have the necessary option enabled, creating an Input question using the Toolbox View will ask if you want to create an associated Results question with the necessary parameter added automatically.

Similar to Full Text Search, when a user types a search term into the Input field and clicks the attached button, the results of that search – which in this case are based on the configuration of the data source’s NLP – are displayed by the linked question.

To configure a data source’s NLP settings, click the NLP button in the Model Data Sources dialog. This opens the Natural Language Definition window.

You can set a Noun or Verb to reference the data source in user searches. When you start typing into this field, you have the option to select any of the suggestions that appear. To use multiple terms at once, separate each one with a pipe symbol (|).

Expressions determine how the NLP will interpret a user’s query. The first time you access the Expressions panel for a given data source, KnowledgeKube will generate expressions based on the data source’s fields.

You can create a new expression by clicking Add, or edit an existing one by clicking the expression itself. An expression can be as simple as checking a single field, or something more complex such as True/False equivalence, numeric evaluation, or date checking.

The way an expression is written depends on its type. For example, a string-type expression only requires a string value together with one or more Nouns or Verbs, while a numeric expression lets you specify the Dimension and Unit of the numeric value.

Examples are used to suggest suitable queries to the user. An expression that calls the numeric value Cost might include the examples Cost is between 10 and 20 USD and Cost is less than 2 GBP.

The Advanced panel includes the option to remove all NLP settings from the current data source, if it is either no longer required or in need of total replacement.


Posted on 03 October 2017
Blog post currently doesn't have any comments.
 Security code