Step 5: Create Q&A knowledge base
A knowledge base (KB) is needed to understand user inputs and answer questions. The simplest KB can be just a repo of objects of different types, with different predefined questions and answers.
There’s a Question Answerer module in MindMeld that can be used to create a KB. There are four reasons why we used the QA module:
Answering questions by selecting the best answer candidate
Disambiguate entities by asking clarification questions
Step 6 and 7: Create training data for different classifiers and training the classifiers
As mentioned previously, we would need to create training data for different ML tasks such as domain, intent, and role classification and entity recognition and resolution. Both training data creation and training can be performed using MindMeld.
Step 8: Implement language parser
The objective here is to organise extracted entities into a meaningful hierarchy. The language parser will take in information from previous ML classifiers and output a parse tree data structure, which captures how entities are related to each other. Below is an example. Entities are grouped into a collection of entity groups. Each entity group has a head entity and child (related) entities.