After studying this material, you should be able to:
Imagine your phone transcribing your speech entirely locally — no internet, no cloud server. This is Apple's System-wide Dictation.
Your Voice → [Audio Encoder/Tokenizer] → [Language Model] → Text
On a mobile device, you have limited:
The language model already uses most of these resources. The audio encoder (tokenizer) competes for the same memory.
Key Insight: The tokenizer runs always-on — it never stops listening. Even small inefficiencies multiply over time.
Shrink the tokenizer without significantly hurting transcription accuracy.
A neural audio tokenizer converts raw audio waveforms into representations a language model can read.
Raw Audio Waveform
↓
[Short Window of Sound]
↓
[Neural Encoder — many layers]
↓
Latent Representation (numbers/vectors)
↓
[Quantizer] → Discrete Token
↓
Language Model reads token
| Component | Role |
|---|---|
| Encoder | Extracts meaningful features from audio |
| Latent | The internal numerical representation before quantization |
| Quantizer | Converts continuous latent into discrete tokens |
| Token | The final discrete symbol the language model reads |
Think of it like: The encoder is a translator converting sound waves into a language the AI understands.
You have a large, accurate model (Teacher) and want to train a small, efficient model (Student) to behave similarly.
Teacher Model (Large, Accurate)
↓
Teaches/Supervises
↓
Student Model (Small, Fast)
Training from scratch on raw data is harder. The teacher provides richer, softer signals than raw labels alone.
This is crucial for understanding the paper:
Audio Input
↓
[Encoder]
↓
LATENT ← Target Option 3 (This Paper)
↓
[Quantizer]
↓
DISCRETE TOKEN ← Target Option 1
↓
[Language Model]
↓
OUTPUT DISTRIBUTION ← Target Option 2
| Option | Target | Problem |
|---|---|---|
| 1. Token Distillation | Discrete token | Loses nuance; tokens are coarse |
| 2. Output Distribution | LM probability distribution | Requires full LM during training; expensive |
| 3. Latent Distillation ✅ | Pre-quantizer representation | Rich signal, no LM needed |
Teacher Encoder (Large)
↓
Teacher Latent Vector [d_teacher dimensions]
↓
↑ Compare (Squared Error Loss)
↑
[Affine Projection Layer] ← bridges size mismatch
↑
Student Latent Vector [d_student dimensions]
↑
Student Encoder (Small) ← Only this is trained
y = Wx + bLoss = Σ (Teacher_Latent[frame] - Projected_Student_Latent[frame])²
Critical Reasoning:
Before Quantizer:
✅ Continuous values → rich gradient signal
✅ No information lost to discretization
✅ Works regardless of which token interface is used
After Quantizer:
❌ Discrete → gradients don't flow well
❌ Information bottleneck
❌ Interface-specific
The latent is the last shared representation between both token interfaces the system supports. One training recipe covers both cases.
The paper handles two situations:
| Scenario | Description |
|---|---|
| Standalone Tokenizer | Encoder pretrained independently |
| Joint Training | Encoder trained together with a language model |
Normally, these might need different distillation strategies. But because the latent precedes both the quantizer and the language model bridge, the same method works for both.
[Encoder] → LATENT → [Quantizer] → [LM Bridge] → Language Model
↑
Target here = works before everything downstream
2.8× compression = the student has roughly 1/2.8th the parameters of the teacher
| Comparison | Result |
|---|---|
| Student vs. Teacher (5 of 6 pairs) | Within 1.9% relative WER |
| Student vs. independently trained same-size model | 3.9% relative improvement |
Teacher WER: 10.0%
Student WER: 10.19% ← within 1.9% relative
(barely noticeable difference)
vs.
Independent same-size model WER: 10.59%
Student WER: 10.19% ← 3.9% better
Key Takeaway: The distilled student is nearly as good as its much larger teacher, AND better than a model of the same size trained without distillation.
The related paper mentions distillation scaling laws — the idea that:
Student Performance = f(Compute Budget, Teacher Size, Student Size)
You can predict how well distillation will work before running expensive experiments, enabling compute-optimal allocation.
PROBLEM:
Large tokenizer competes for memory with LM on mobile device
SOLUTION:
Train smaller student encoder to mimic teacher's latent representations
METHOD:
1. Run teacher → get latent vectors per audio frame
2. Run student → get smaller latent vectors
3. Project student latents to teacher size (affine layer)
4. Minimize squared error between them
5. Deploy only the student
RESULT:
2.8× smaller model, <2% accuracy loss, no fine-tuning needed
Bottom Line: This paper solves a real engineering problem — making AI work efficiently on your phone — using an elegant insight: teach the small model to think like the large model internally, not just to output like it externally.