3

The LUIS has been a great tool. We started to set out to write a chatbot and we wanted to consume LUIS services. We want LUIS to identify various Microsoft Products from a given text.

Let's say, I want LUIS to identify sharepoint 2010, sharepoint 2013, visual studio 2013, visual studio 2010" etc as Technology Products. We tried adding "Products" feature and added coma separated values as shown above. However the model sticks to only sharepoint, visual - basically single word. It is not able to identify the phrase.

After training with some data, it is able to identify sharepoint and visual as Technology (entity) however, the whole phrase as needed is not working.

Then we switched over to simple RegEx also with this (SharePoint)\s*(2013|2007|2010) very straight forward. It is still not able to identify it as a single phrase.

Can somebody help me with this?

greuze
  • 4,250
  • 5
  • 43
  • 62

2 Answers2

1

Quick update...I am able to get the logic right to make the model understand that "SharePoint 2013" on its whole is a Product. However, after giving the same context it is not able to predict any other Products that are not in the "Phrase list Features".

I have been training with "I worked on BizTalk", 'I worked on SQL" .... (all single letter words), once it starts predicting the single letter "Technology/Product" properly. I gave the Utterance as "I worked on Sharepoint 2016", then it predicted only "SharePoint" as Product. Then I added all the success-single-word Products and along with them I gave "SharePoint 2016" and bingo... it worked.

So far so good...

Here is the tricky thing, now that the model is pretty much stabilized about the pattern of the context and also the way various Products are named, I wanted it to predict "I worked on Exchange 2016" unfortunately it didn't work. It only predicted "Exchange" alone as a Product. Then I trained a lot with the same context ("I worked on YYYY") with a few items. At least now, the pattern matching algo should have understood the pattern. When gave the Utterance as "I worked on Visual Studio 2016" it failed to predict that "Visual Studio 2016" is the product. It only predicted "Visual Studio" as a Product. Now please note that in the phrases I also added "Visual Studio", "Visual Studio 2013", "Visual Studio 2010" and trained and are being predicted successfully. Howcome it is now not able to predict "Visual Studio 2016" is a Product ???? How many such products should I add to the Phrase list ? How is it AI now ?

Idea is based on the context and with a few patterns it should be able to predict rest of the 'Products' with ease. What am I missing ???

0

I have faced a similar learning curve with LUIS. For what you want you should just use a simple entity. I have found that you must train with a minimum of 3 utterances for each number-of-word variations you want. So if the entity you're trying to pick up can have 1 to 5 words you need 15 utterances per phrase. So that is 15 "I worked on such and such" phrases. If you want another phrase also, such as "I know how to use such and such", you need at least another 15 utterances for that as well. In short, you need lots of utterances. And I've also experienced that if your entity mixes in number words such as "2017" or "three", or words like "of" "the" "for" "in" etc, you might need additional utterances. In your case you would need a bare minimum of:

I worked on studio
I worked on visual
I worked on 2017
I worked on visual studio
I worked on outlook 2017
I worked on fake application
I worked on Microsoft visual studio
I worked on 2017 word documents
I worked on Skype for business
I worked on Google maps pedometer app
I worked on visual basic for applications
I worked on computer application training information
I worked on big small little boat sails
I worked on one two three four five
I worked on green blue red orange yellow

Get the idea? Make sure you tag the entity in each utterance.

Further, if you have similar but different types of phrases, you can use the Phrase List feature of LUIS instead of putting in another 15 items. So let's say you also want "I know how to use..." just create a phrase list named something like "I worked on" and add phrase lists such as:

I worked on
I know how to use
I am good with
I'm good with
I'm good at
I'm the best at
...etc

Kevin D.
  • 143
  • 8