-
Notifications
You must be signed in to change notification settings - Fork 17
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
Lab 2,3,4,5 Submission #6
base: main
Are you sure you want to change the base?
Conversation
Good! |
79e44e6
to
389c1aa
Compare
Lab 4 comments: Most things work, but there are some states where ASR_NOINPUT isn't caught correctly, so the machine simply stops if the user is silent. Also, something seems to be off with the entity recognition for times: By saying reasonable things to the machine (at least what I find reasonable) the machine asked me if I wanted to book "a meeting with Vlad on Monday at meeting". It can also pick up the time as "at" if you say, for example "at ten". I think you should have another look at the training data for the entities, so that time is picked up correctly. |
Can you give me some examples of the times that didn't work? I just used the prebuilt time entity that azure provided so I figured it had all the normal times. |
In the first example I think I said "the meeting is at ten", which made it pick up the time to be "meeting". In the other example I simply said "at ten", and it picked up the time as "at". |
I fixed the ASRNOINPUT problem and added some more training for time. But I couldn't manage to make the machine recognize "the meeting is at 10" it still takes meeting as time. I am not sure how to fix that. Now it does recognize times without saying o'clock though. |
Lab 5 comments: Many things work as expected, but there are a couple of things that I'd like you to take a look at. The system recognises very weird things as days (I was trying to speak unclearly to test the confidence thresholds), for example "Moon Day" and "Crafty". This is similar to the comment I had on your lab 4, where strange things were being picked up as times. I'd like you to try to fix this, so that I can also test that the confidence threshold works properly. The other thing (and possibly related) is that in certain situations, the machine stops when I want to meet with someone called "Flash" (I was trying to mispronounce "Vlad" and this is what the machine thought I said...). I think it is picking up this as an "whoIsX" intent, but then there is a guard in the state that is assuming that it should have received an entity instead. This is the error message I'm getting: Unable to evaluate guard in transition for event 'RECOGNISED' in state node 'DM.PromptAndAsk.ListenForPerson': Cannot read properties of undefined (reading 'length') You can probably fix this by changing the guard (for example also by adding confidence checks here too). Since lab 5 is basically a continuation of lab 4, you could put everything together in lab 5 instead of resubmitting lab 4 separately. |
I fixed the issues you mentioned but I didn't use the confidence threshold to do so. When discussed in the lab it was said that it's not necessary to put it in all states and that it was enough to have it when checking the intents. I hope that this isn't a problem since the machine is working as intended now. |
The confidence threshold works fine, but there is still something off with the entity recognition. First, it seems that the NLU is still picking up on the category "day_time", which means that the newly added guard that checks if the category is "day" always fails. I had to change this back to "day_time" to get past this stage. I think the old category is still there, on the NLU side. Did you clean it up (+ retrain and redeploy the model) after adding the "day" category? (I can also accept that "Moon Day" is still there, if it helps for getting other things to work.) Also, I tried answering with examples from your training data (appointment.json): which gave me back: You could have a look at the labelling in the data: For example, the utterance "Set an appointment at 3" is labelled as "at 3" being the entity, whereas in "I would like a meeting at 10" only "10" is the entity. Perhaps this is confusing the model? I'm now realising that appointment.json in the repo is perhaps an old version. Could you please export and reupload the new version once you've looked over the labelling? Thanks! |
I just tried with the example you gave and it worked. I also uploaded an updated json file. |
Thanks! I'm going to pass you for both 4 and 5. The machine still sometimes picks up the meeting day as "on Monday" instead of just "Monday", but that's a minor thing. |
No description provided.