Wake word

Last updated 6 months ago

Your voice assistant is listening to a wake word to know when it should start interacting with you. Wake workds are generally small phrases like Google’s “Ok Google”, Apple’s “Hey Siri”, or Amazon Echo’s “Alexa”.

Snips comes with a built-in, deep-learning based wake word detection system that responds to the keyword “Hey Snips”. For example, if you want to turn on the lights:

"Hey Snips – Turn on the lights"

Snips’ built-in wake word detection is powered by deep-learning and runs on-device. It was trained to handle a variety of microphones and English speaker accents (US). You can also create your personal wake word that will react to your own voice.

A bit more details...

The wakeword is the way you initiate a conversation with your vocal assistant. It is a predefined keyword automatically detected from continuously streaming audio. Its detection will « wake » your assistant and initiate voice input. The speech recognition system will then be triggered so that your vocal command can be analyzed and parsed.

Wakeword detection is quite close to looking for a needle in a haystack: most of the stream must be ignored by the detector but it still has to trigger correctly and instantly.

The performance of such a system is therefore a tradeoff between false alarms (the assistant wakes up although the keyword was not pronounced) and false rejects (the assistant fails to trigger).

This tradeoff is controlled by the sensitivity parameter, a number between 0 and 1 set to 0.5 by default. Choosing a smaller sensitivity will make it harder to wake up the assistant, but will also limit the number of false alarms. On the contrary, setting a larger sensitivity will make the assistant to trigger easily, leading also to more false alarms.

If you use Snips for the first time, you shouldn't worry about the sensitivity parameter and leave it to its default value.

We propose two kinds of wakewords: « universal » and « personal ». The universal wakeword has been trained on a large variety of voices from native speakers and the underlying model is a larger deep learning algorithm, so it can recognize anyone. The personal wakeword is trained locally on your device on a lot less data, based on the voice samples you provided, therefore it might not work as well for other people. Note however that it does not mean no one else will be able to trigger it, so do not use the personal wakeword as a fingerprint security.