-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding NLP interfaces #71
Comments
Does this issue include the integration of NLP into our speech recognition solution? If not then maybe we could open another issue for that? |
Yeah, this issue is basically for that. On the todos for @ErickKramer there’s still:
- making the appropriate changes in the nlu fork, specially limiting the dependencies installed on the robot and documenting the resources that need to be added and how to get them
- subscribing to the right speech topic (we were using recognized_speech in the lab)
- adding the required launch files in mas_domestic
|
I think the topic will remain the same. In case you have not taken care of this already, we will need to check what else needs to be adjusted in order to get the NLP component to work correctly. |
Is that the same for the questions and the commands? |
For questions it is taken care of... but when is a command a command in order to forward it to NLP? We have to think of how to categorize this correctly. Are we going to maintain all command possibilities in the ontology, e.g. "go to kitchen", "go to living room", "go to bathroom" etc. or do we just reduce the threshold for this category, so that the "go to" will already be enough to mark it as a command and instead of forwarding what we have in our ontology we forward the original content?! |
I think we need to check for typical ways in which questions are asked, e.g. what, where, which, etc. But I guess in the end what matters for now is not really how we separate the two, but what is the information flow? When it's detected as a command, is it published in |
We made our thoughts about that... We are publishing everything that is recognized as speech to |
mdr_speech_recognition>mdr_speech_matching>[mdr_question_answering, NLP?] |
I think that the processing should be done before reaching the answering or the nlp topic. Both of them only care about the string they have to process, not the category or the distance. Architecturally, a component can make requests to the nlp module and the answer action server, and decide whether to send it to the right topic or make a request with the next best option. Which I think is part of the responsibility of the speech matcher, right? |
This was the original idea, but rather than making a publisher for each category we need only one. Otherwise we would have two +x (for every possible future category). |
Perhaps, we could try to catch whether the sentence interpreted by the speech recognition is a question or a command. This could be done by looking for the Wh words and/or the symbol "?". And depending on the result of this, the sentence could be either send to the NLU (mbot) or to the module getting the answer from the ontology. If I am not mistaken, the GPSR command generator will always add the "?" at the end of a question. PS: This is how socrob did a module to catch questions. |
We check whether it is a question or a command, but don't differentiate the receiver of this information. Rather the NLU has to check if "msg.type == command then do something otherwise ignore". Regarding your thoughts about recognizing questions, keep in mind that there are questions without the W's and also you don't get punctuation from our speech recognition modules. However we have a solution for that. If you want I can show it to you on Friday. |
Yeah, I'd be glad to take a look into that. I also found the answer to your question about expanding the knowledge of the model. I'll show it to you on friday as well. |
I disagree, NLU expects a command, the processing of whether is a command or not should be done beforehand, most likely in the speech matcher. You are right about the questions, going over details during Friday’s meeting sounds good to me! |
@ErickKramer I have updated the description of this issue, and opened b-it-bots/mbot_natural_language_processing#1 for you |
Can this be closed? |
We have RASA implemented, but the I'm not sure about @ErickKramer 's RnD work... |
Mbot is currently implemented on Lucy and the classifier for GPSR category 1 and 2 is there as well. The only thing missing is to put it on mas_domestic repository. |
Isn't this what you added in #92? Or what is missing? |
No, that one is an interface that collects the output of mbot and execute an action (at the moment, just navigation). It's missing everything that it's inside the Mbot folder (physically on Lucy) and to add my dataset to the dataset repository you mentioned last time. |
Closed in favor of #155 |
The text was updated successfully, but these errors were encountered: