Porcupine Wake Word Engine - FAQ
Can I use Porcupine Wake Word for keyword spotting?
Yes. Keyword spotting (KWS), word spotting, keyword recognition and wake word detection are terms used interchangeably. Keyword spotting engine uses a machine learning model to process the sounds it is sent and listen for a specific keyword or keywords.
Can I use Porcupine Wake Word for hotword detection?
Yes. Hotword Detection, Trigger Word Detector, and Wake-up Word Recognition are used interchangeably. For example, NASA uses Hot Word Recognition in one project and Wake Word Detection in another project while referring to Porcupine Wake Word.
Can I use Porcupine Wake Word to create a trigger word?
Yes, similar to Keyword Spotting and Hotword Detection, trigger word is another term used interchangeably.
Can I use Porcupine Wake Word to create a WUW?
Yes! WUW stands for the “wake-up word” and it is another term used for the wake word.
Can I train custom wake words with Porcupine?
Yes! You can train custom wake words with Porcupine on Picovoice Console, in seconds. We created a step-by-step tutorial to demonstrate how to create a custom wake word to use with Porcupine Wake Word.
What are wake word examples?
The most popular wake word examples are "Hey Google", "Hey Siri", or "Alexa". These special words activate dormant devices. We have published a guide to help you pick a wake word that achieves optimal performance.
How do I evaluate the performance of wake word engines?
Choosing the best wake word engine is challenging. In order to evaluate the performance of wake word engines, we created metrics and frameworks that quantify and benchmark the alternatives. You can find the open-sourced code, wake word models, and audio files used in this comparison to verify the results or create your own evaluation.
What's the accuracy of Porcupine Wake Word detection library?
We have extensively benchmarked the performance of Porcupine software and compared its accuracy against alternatives. The open-sourced benchmark is published in the Picovoice docs. Porcupine achieves 97%+ accuracy (detection rate) with less than 1 false alarm in 10 hours in the presence of background speech and ambient noise.
Does the accuracy of a wake word detection engine depend on the choice of wake word?
Yes. We have published a guide to help you pick a wake word that achieves optimal performance. In short, you need to avoid using short phrases and make sure your wake word includes diverse sounds and at least six phonemes. Long phrases are also not recommended due to the poor user experience.
What's the CPU and memory usage of the Porcupine Wake Word library?
We offer several trims for our wake word detection model. The standard model uses about 1 MB of memory and less than 4% of a single core on a Raspberry Pi 3.
What should I set the sensitivity value to?
A Sensitivity value shows how well a test can identify true positives. A higher sensitivity value gives a lower miss rate at the expense of a higher false alarm rate. You should pick a sensitivity parameter that suits your application's requirements. A higher sensitivity value gives a lower miss rate at the expense of a higher false alarm rate.
What is a ROC curve?
The accuracy of a binary classifier (any decision-making algorithm with a "yes" or "no" output) can be measured by two parameters: false rejection rate (FRR) and false acceptance rate (FAR). A wake word detector is a binary classifier. Hence, we use these metrics to benchmark it.
The detection threshold of binary classifiers can be tuned to balance FRR and FAR. A lower detection threshold yields higher sensitivity. A highly sensitive classifier has a high FAR and a low FRR value (i.e. it accepts almost everything). A receiver operating characteristic (ROC) curve plots FRR values against corresponding FAR values for varying sensitivity values.
Learn more about ROC curves and benchmarking wake word detection.
If I use Porcupine Wake Word detection in my mobile application, does it function when the app is running in the background?
Developers have been able to successfully run Porcupine Wake Word detection software on iOS and Android in background mode. However, this feature is controlled by the operating system, and we cannot guarantee that this will be possible in future releases of iOS or Android. Please check iOS and Android guidelines, technical documentation, and terms of service. When you become an Enterprise Plan customer, you can also engage with Picovoice Consulting and apply the best industry practices to your application.
Which platforms does Porcupine Wake Word detection support?
- Linux (x86_64)
- macOS (x86_64, arm64)
- Windows (x86_64)
- Arm Cortex-A
- Arm Cortex-M
- Raspberry Pi (Zero, 3, 4, 5)
- Android
- iOS
- Modern Web Browsers (Chrome, Safari, Firefox, Opera)
Does Porcupine Wake Word detection software work with everyone’s voice (universal) or does it only work with my voice (personal)?
Porcupine Wake Word detection software is universal and trained to work with a variety of accents and people’s voices. If you want your voice product to be activated by only your voice, or personalize user experiences for shared devices, use Porcupine Wake Word with Eagle Speaker Recognition. From smart consumer electronics devices to healthcare, personalized wake word detection is used in several applications.
Does the user need to pause and remain silent before saying the wake word?
By default, no. However, if that is a requirement for your project, you can also engage with Picovoice Consulting when you become an Enterprise Plan customer and get Porcupine Wake Word customized.
Does Porcupine Wake Word detection work across accents?
Yes. Porcupine Wake Word, trained in real-life environments, works well across accents. However, it's impossible to quantify it. We recommend you sign up for the Free Trial and test the engine using an accented dataset of your choice to see if it meets your requirements.
You can also engage with Picovoice Consulting when you become an Enterprise Plan customer and get Porcupine Wake Word optimized even further.
How many wake words can Porcupine detect simultaneously?
Porcupine Wake Word can detect multiple wake words across languages. There is no technical limit on the number of wake words the software can listen to simultaneously.
Is the Picovoice "Alexa" wake word verified by Amazon?
Amazon Alexa Certification requirements are different for near, mid, and far-field applications (AVS, AMA, etc.). Also, the certification is typically performed on the end hardware, and the outcome depends on many design choices such as a microphone, enclosure acoustics, audio front end, and wake word. You can directly engage with Amazon to learn more about the requirements. Alternatively, you can hire Picovoice Consulting experts when you become an Enterprise Plan customer and get help with 3rd party certification and acceptance requirements.
Does Picovoice wake word detection software work with Google Assistant?
Yes. However, your product may have to go through a certification procedure with Google. You can directly engage with Google to learn more about the requirements. Alternatively, you can hire Picovoice Consulting experts when you become an Enterprise Plan customer and get help with 3rd party certification and acceptance requirements.
Can you use Picovoice wake word detection software with Cortana, IBM Watson, or Samsung Bixby?
Yes, Picovoice can generate any third-party wake words at your request. However, you are responsible for any necessary integration with such platforms and potential areas of compliance.
What's the power consumption of the Porcupine Wake Word detection engine?
Porcupine Wake Word is a lightweight engine with minimal consumption and requirements. We encourage enterprises to evaluate the efficiency of on-device AI engines, including Porcupine Wake Word, on their target platform as the absolute power consumption (in wattage) depends on numerous factors such as processor architecture, vendor, fabrication technology, and system-level power management design. If your design requires even lower power consumption, you can hire Picovoice Consulting experts when you become an Enterprise Plan customer to meet certain power consumption requirements.
Can Porcupine distinguish words with similar pronunciations?
Distinguishing words with similar pronunciation, such as "Hey Siri" vs. "Hey Syria", or "Hey Q" vs. "Hey Queue" is challenging for both humans and machines. The rigidity of rejecting words with similar pronunciations has several side effects such as rejecting accented pronunciations, as well as a higher rejection rate in noisy conditions. By lowering the detection sensitivity you can achieve lower false acceptance of words with similar pronunciations at the cost of a higher miss rate.
Which languages does Porcupine Wake Word support?
Porcupine Wake Word supports Arabic, Dutch, English, Farsi, French, German, Hindi, Italian, Japanese, Korean, Mandarin, Polish, Portuguese, Russian, Spanish, Swedish, and Vietnamese.
Are you planning to release new languages for Porcupine Wake Word support?
Yes, very soon! If you have a commercial project, please reach out to Picovoice Consulting with details of your project.
What is your licensing model?
Please refer to the pricing page.