No option to set custom wake words unlike before


#1

I have recently decided to try using a custom wakeword instead of sticking to the default 4 options, but for some reason the custom option (the one with the phonemes) is not present when trying to edit a device, unlike before.

I wonder what has changed since the last major update?


#2

I set mine in the local configuration file. The wakeword still shows up on home, but you can’t select anything but the four there. That may have changed with the big update to home that occurred recently.


#3

Here is my local mycroft.core file: (~/.mycroft/mycroft.conf)

{
  "max_allowed_core_version": 19.2,
  "hotwords": {
      "custom": {
          "module": "pocketsphinx",
          "phonemes": "Y OW . R AH S AH L .",
          "threshold": 1e-90,
          "lang": "en-us"
    }
}
}

#4

This is how my config is formatted:

  "hotwords": {
    "yourwordhere": {
        "module": "precise",
        "phonemes": "U R W ER D HE R E",
        "threshold": "1e-30",
        "local_model_file": "/home/pi/.mycroft/precise/yourwordhere.pb"
        }
    },

#5

Interesting. Do I need to create the local model file manually?


#6

Only if you’re using precise. There’s docs on that elsewhere, and hopefully soon, more tools to improve that process.


#7

Tried to create a blank pb file with the precise on the mycroft.conf file, but still did not load and reverted to “Hey Jarvis” even after performing an “update configuration” command.


#8

Sounds right. If you don’t use the precise modeling tools, it won’t recognize the model as valid and will revert back.


#9

Currently dual-booted to a Linux machine and made a precise model, will get back if something weird happens.

EDIT: Results are in.
=== False Negatives ===
hey-russell/test/wake-word/hey-russell-09.wav
hey-russell/test/wake-word/hey-russell-12.wav
hey-russell/test/wake-word/hey-russell-10.wav
hey-russell/test/wake-word/hey-russell-11.wav

=== Counts ===
False Positives: 23
True Negatives: 11
False Negatives: 4
True Positives: 0

=== Summary ===
11 out of 38
28.95%

67.65% false positives
100.00% false negatives


#10

That’s a lot of false pos/negs. Are you also using the generated sounds as part of the not-wake-word data? How many samples are you using for your training set (both wake and not)?


#11

8 wakes, plus the 600+ on the not-wake-word data.
If you like I can send the zip with the folder.


#12

Can you record about 10-15 more wake words and then try again?


#13

Forgot to emphasize. It’s 8 on the wake-word outside the test folder, while 4 inside the test folder, like in the tutorial.

EDIT: Results have changed (added 6-8 more recordings to the wake word data):
Please use rate instead of keep_prob. Rate should be set to rate = 1 - keep_prob.
Data:
=== False Positives ===
hey-russell/test/not-wake-word/generated/CDmaschine2-0.wav
hey-russell/test/not-wake-word/generated/boatbyawharf_3-306.wav
hey-russell/test/not-wake-word/generated/electric-beater-371.wav
hey-russell/test/not-wake-word/generated/2008 04 19 fermeture du jardin-241.wav
hey-russell/test/not-wake-word/generated/vogel-81.wav
hey-russell/test/not-wake-word/generated/boatbyawharf_3-307.wav
hey-russell/test/not-wake-word/generated/2008 04 19 fermeture du jardin-345.wav
hey-russell/test/not-wake-word/generated/2008 06 15 ping pong-0.wav
hey-russell/test/not-wake-word/generated/boatbyawharf_3-305.wav
hey-russell/test/not-wake-word/generated/typing_medium-0.wav
hey-russell/test/not-wake-word/generated/2008 04 19 fermeture du jardin-233.wav
hey-russell/test/not-wake-word/generated/puhpuhpuh_ouilleAieaie-56.wav
hey-russell/test/not-wake-word/generated/fasten_your_seat_belt-0.wav
hey-russell/test/not-wake-word/generated/silvester_fireworks_close_to_two_neighbor_parties_on_street03-21.wav
hey-russell/test/not-wake-word/generated/boatbyawharf_3-172.wav

=== False Negatives ===
hey-russell/test/wake-word/hey-russell-19.wav
hey-russell/test/wake-word/hey-russell-18.wav

=== Counts ===
False Positives: 15
True Negatives: 56
False Negatives: 2
True Positives: 2

=== Summary ===
58 out of 75
77.33%

21.13% false positives
50.00% false negatives