| Nemotron (chunk end + 7 frames, measured) | 0.56 s |
| ResNet (in parallel, measured) | +0 s |
| Update period (= Nemotron chunk) | – |
| Compute per update (mean) | – |
| Sound → first label shown | – |
| Label revision allowed | – |
| Real-time headroom | – |
Speaker diarization · streaming · e-means
1KAIST AI · 2Ewha Womans University
Any slot head becomes open-speaker without retraining. We show it for the 8-slot Nemotron-3 and the 4-slot Streaming Sortformer.
Bounded-window re-clustering and slot-anchored identities stop early mistakes from spreading through the meeting.
e-means makes frame-level linking of a whole archive affordable, which beats the standard per-speaker centroid linking.
The work per update does not grow with the meeting; re-clustering the whole history instead grows steadily.
Nemotron-3 Diarization (or Streaming Sortformer) runs in its official streaming mode and decides activity and overlap.
Only after every slot has been used, the speaker embeddings of a slot are split with the official spherical e-means.
A bounded 90 s window is re-clustered at every chunk, labels may be revised for 10 s, and identities stay anchored to the slots.
Mean DER (%) over all sessions of each corpus; lower is better. Collar 0.25 s, overlapped speech scored.
| System | VoxConverse | AMI | ICSI | LibriSpeech-OpenSpk |
|---|---|---|---|---|
| streaming, 1.04 s input buffer | ||||
| Streaming Sortformer 4spk v2.1 | 14.1 | 8.3 | 27.7 | 41.4 |
| Nemotron-3 Diarization (8 slots) | 6.4 | 9.3 | 27.4 | 19.8 |
| eDIAR (ours) | 5.8 | 9.1 | 27.4 | 16.4 |
| non-streaming, whole session | ||||
| Streaming Sortformer 4spk v2.1, 30.4 s config | 13.3 | 7.2 | 29.1 | 40.7 |
| Nemotron-3 Diarization (8 slots, 30.4 s) | 5.5 | 9.0 | 27.0 | 18.1 |
| pyannote 3.1 | 5.6 | 27.4 | 33.2 | 32.1 |
| eDIAR (ours) | 4.5 | 8.9 | 26.9 | 8.6 |
VoxConverse 44 sessions (first 480 s), AMI 16 and ICSI 15 test meetings (first 420 s), LibriSpeech-OpenSpk 18 constructed conversations with 2–12 speakers.
Meeting series, podcast archives and corpora collected for conversational speech models contain the same people many times. Linking the speakers of every session to one identity across the archive is a clustering problem with millions of embeddings and thousands of clusters, the regime e-means was designed for.
| Linking 1.16 M frames (k = 1,251) | Time (s) | Loss | Archive DER (%) |
|---|---|---|---|
| Agglomerative clustering of session centroids | 5.1 | – | 25.3 |
| Mini-batch k-means, 5 epochs | 27.0 | 0.757 | 29.5 |
| Lloyd's k-means, 25 iterations | 43.9 | 0.726 | 21.0 |
| e-means, 2 epochs | 5.9 | 0.725 | 20.6 |
| e-means, 5 epochs | 13.9 | 0.723 | 19.3 |
Means over three seeds. e-means runs with its default recipe; batch size and step size come from its scaling laws, without any sweep.
Streaming or non-streaming, one switch. Code and instructions are on Hugging Face.
The replay demo above uses synthetic LibriSpeech conversations; the clips were chosen to illustrate the method. Built on Nemotron-3 Diarization, WeSpeaker ResNet34-LM and the official e-means from Faiss. Page design inspired by e-means.github.io.