Hey Yossi: microWakeWord model, v1

A custom "Hey Yossi" wake word for microWakeWord, trained 2026-10-29. It is a streaming, int8-quantised TFLite model of 61 KB. It runs on the device in:

  • Android: the Ava satellite app
  • ESPHome micro_wake_word
  • Home Assistant Voice PE

The openWakeWord version, for the Home Assistant server, the desktop and the Pi, is danielrosehill/Hey-Yossi-openWakeWord.

This is a first, personal model. It was trained on two voices only, Daniel's (Irish English) and Hannah's, recorded at one laptop desk.

File What
hey_yossi.tflite The model. Input [1, 3, 40] int8 (30 ms of 40-band features, 10 ms step); output [1, 1] uint8
hey_yossi.json The manifest for ESPHome and Ava, in the micro-wake-word-models v2 format

Settings in hey_yossi.json:

  • probability_cutoff: 0.97
  • sliding_window_size: 5
  • tensor_arena_size: 30000. This is a margin above the 22,860 that ESPHome's own models of the same architecture use. It was not measured on a device; if ESPHome reports a model-load failure, raise it.

Use

  • Ava (Android):
    1. Put hey_yossi.tflite and hey_yossi.json in one folder on the phone.
    2. Point Ava's "Custom wake words" setting at that folder, then pick Hey Yossi.
    3. Ava connects to Home Assistant as an ESPHome device, so "Hey Yossi, turn off the living room AC" runs through your Assist pipeline.
  • ESPHome:
    micro_wake_word:
      models:
        - model: https://huggingface.co/danielrosehill/Hey-Yossi-microWakeWord/resolve/main/hey_yossi.json
    

Results (v1)

On held-out real takes (the dataset's test split, never trained on). Each clip was streamed with 1 s of silence either side, and probabilities were averaged over 5 outputs, as on the device.

Cutoff "Hey Yossi" (43) "Hey Yossi, " (12) Near-misses fired (20)
0.90 95% 100% 15%
0.95 95% 100% 10%
0.97 95% 100% 5%
  • Near-misses still firing at 0.97: "Yossi" on its own (0.99). Below 0.97, "Yossi" whispered and "Hey Josie" also fire.
  • Missed at 0.97: two of Hannah's three test takes (fast, 0.40; Israeli accent, 0.83).
  • Ambient false accepts: microWakeWord's own test on dinner_party_eval, about 5.3 h of dinner-party conversation, gave 0 false accepts per hour at 0.97 and 0.19/h at 0.88.

Training (lean recipe)

  • Positives: 185 real "Hey Yossi" takes from danielrosehill/Wake-Words, revision 90fcadbd906b8cd972b720f027f07a10a482db3f. Each was augmented 50 times with the notebook's augmentation (MIT room impulse responses, AudioSet background noise at -5 to 10 dB SNR, EQ, pitch, distortion, gain). There are no TTS or synthetic voices.
  • Negatives: 90 real near-miss takes, augmented the same way. Also microWakeWord's precomputed speech, dinner_party and no_speech spectrograms (kahrendt/microwakeword), with dinner_party_eval for the ambient test.
  • Model: MixedNet with the notebook's defaults: pointwise filters 64,64,64,64; mixconv kernels [5],[7,11],[9,15],[23]; stride 3. 10,000 steps at lr 0.001, batch 128, negative class weight 20.
  • Run: microWakeWord commit 4665173, 18.2 min on one Modal T4.
  • Code: training/microwakeword/run_mww.sh in the private repo danielrosehill/Wake-Words.

Licence: CC BY-NC 4.0. The microWakeWord notebook notes that its augmentation and negative data carry mixed licences, so models trained with them are for non-commercial, personal use.

Downloads last month
10
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Dataset used to train danielrosehill/Hey-Yossi-microWakeWord