Search code examples
azure-language-understandingazure-qna-maker

Does QnAMaker use logistic regression?


I understand that QnAMaker stores the data in Azure Search. I read somewhere that Luis uses "logistic regression" to match the intents. Does QnAMaker use the engine of LUIS (i.e. also logistic regression) or does it do something else, e.g. searching with Azure Search? I am asking this question also to find out if I might get different (better) results if I use LUIS as service instead of QnAMaker.


Solution

  • QnAmaker is a search service. It uses a layer of re-ranking over the results that are returned by Azure search. The re-ranking uses various features like fuzzy match for spell correct, alterations, word match, etc. to determine the final score on which we rank.

    LUIS is an intent understanding service, while QnAMaker is a search service.

    So how the both models behave is different. If you have a small set of QnAs, you would probably get better results by training a LUIS model with one intent per QnA. However, this does not scale for large number of QnAs. That is where QnAMaker is useful, because finds the best match without training intents based on word match.