How does the lookup table in rasa_nlu work? Is there something similar to keyword_intent_classifier for entity extractors?

Hi,

I have searched for some clarification regarding the use of look-up tables in this forum with no success. I would like to have a better understanding of the way look-up tables work and I hope this topic helps others as well.

For example, I want my extractor to get the names of 100 countries. Do I have to provide an example for each country in “common_examples” and also provide the list of 100 countries in the NLU data: { “rasa_nlu_data”:{ “common_examples”:[], “lookup_tables”:[] } }

If yes, then I will have to provide 100 examples/sentences. So, what’s the advantage of using the lookup table? Does it reduce the number of training examples? (ner_crf would need around 5 examples for each country name. So, I would end up providing 500 examples for 100 countries).

Is there a keyword based entity extractor just like keyword_intent_classifier? For e.g, do string match of all the words in a sentence with the list provided in lookup_tables. In this way, I don’t have to provide any training examples and the accuracy will be better.

I can implement this myself but I just want to know whether RASA_NLU already has this feature. Also, will there be any drawbacks with this string match method?

Cheers,

Achinta

1 Like

No you don’t have to provide all examples, just a few of them. Take a look here for further info: Training Data Format

1 Like

You might find this useful:

To akelad,

Hi Akela

By using Regex, do we have chances to extract the Regex pattern name in custom Action. If possible this could work around the limitation on the “Need to give exhaustive training examples” and better control the utterance response through custom actions

Pls enlighten us here! Pls refer and help us in this link ( Regex Name Extraction from custom Action )

@amn41 Could you please share the actual purpose of having lookup table? Because there is no any improvement in entity extraction by adding it.

1 Like

Is there a way instead of using a file to lookup common first names of people using lookup table like the system entities in dialogflow ( like sys.givenname) to improve the bot to better capture the results.

@akelad this link (https://rasa.com/docs/rasa/nlu/about/#lookup-tables) shows page not found…