Als je een interview of een vergadering met meerdere mensen transcribeert, moet je weten wie welke zin heeft gezegd. Whisper Notes voert spraakherkenning en sprekerherkenning offline uit, op je iPhone of Mac. Bij elk model dat we inbouwen, moeten we daarom nauwkeurigheid afwegen tegen snelheid, en nauwkeurigheid heeft bij ons altijd voorrang gehad. Onlangs hebben we het ingebouwde model voor sprekerherkenning, pyannote community-1, vervangen door Nemotron 3 Diarization van NVIDIA. We vergeleken de twee op 122 openbare opnamen met één tot twaalf sprekers: het diarisatiefoutpercentage (DER) daalde van 16,0% naar 9,9%.
Nemotron 3 verlaagt het diarisatiefoutpercentage van 16,0% naar 9,9%
Het diarisatiefoutpercentage (DER) telt drie soorten fouten op, gemeten in spreektijd: spraak die aan de verkeerde persoon wordt toegeschreven, spraak die het model mist en geluid dat voor spraak wordt aangezien. Het is de gangbare maat voor sprekerherkenning. De tabel toont het naast de fouten die gebruikers het vaakst opmerken, samen met de snelheid en het geheugengebruik van beide modellen op een Mac en een iPhone.
| pyannote community‑1 | Nemotron 3 | |
|---|---|---|
| Diarisatiefoutpercentage, 122 opnamen | 16,0% | 9,9% |
| Juist aantal sprekers | 52% van de opnamen | 80% van de opnamen |
| Spraak toegeschreven aan de verkeerde persoon | 4,5% | 1,0% |
| 1 uur audio op een Mac (M5) | ongeveer 22 s | ongeveer 8,5 s |
| Geheugen op de Mac | 0,88 GB | 0,12 GB |
| Opname van 55 minuten op iPhone 15 | ongeveer 27 s | ongeveer 12 s |
| Extra geheugen op iPhone 15 | ongeveer 830 MB | ongeveer 30 MB |
| Maximaal aantal sprekers | Geen vaste grens (in de app maximaal 10) | 8 |
Groen markeert hier en in alle tabellen en grafieken hieronder de betere waarde als het verschil groter is dan de foutmarge: voor nauwkeurigheid een 95%-interval dat nul uitsluit, voor snelheid en geheugen een verschil dat veel groter is dan de spreiding tussen herhaalde metingen. Bij foutpercentages is lager beter. De nauwkeurigheidscijfers zijn gebaseerd op 122 openbare opnamen (25 uur, Engels en Chinees). Snelheid en geheugen zijn gemeten met beide modellen via Core ML, met Nemotron 3 op de Neural Engine. De tijden op de Mac betreffen alleen de verwerking; op de iPhone lopen ze van de start van de detectie tot het resultaat.
De daling komt niet door een paar opnamen alleen. De grafiek hieronder toont de verandering per opname, voor alle 122, van de grootste daling tot de grootste stijging:
Elke balk is één opname en laat zien met hoeveel procentpunten het foutpercentage met Nemotron 3 veranderde: onder nul daalde het, boven nul steeg het.
Nemotron 3 doet het in drie gevallen slechter: bij opnamen met meer dan acht sprekers, bij opnamen met één spreker en bij alineagrenzen midden in een zin.
Bijna geen verwisselde sprekers meer: 4,5% → 1,0%
Van de drie soorten fouten valt een lezer het eerst op dat spraak bij de verkeerde persoon staat: de woorden kloppen, maar de naam niet. Met Nemotron 3 verdwijnt die fout bijna, en ook gemiste spraak neemt af.
Gemiddelde over de 122 opnamen, in procent van de spreektijd; beide balken in elke rij beginnen bij nul. De dalingen bij verkeerde spreker en gemiste spraak zijn groter dan de foutmarge. Het verschil bij geluid dat voor spraak wordt aangezien, valt binnen de foutmarge, en daarom is die balk lichtgrijs. De waarden zijn afgerond en tellen daardoor niet altijd precies op tot het totaal.
Het juiste aantal sprekers in 80% van de opnamen, tegenover 52% eerder
Als een model te weinig sprekers vindt, heeft het twee stemmen samengevoegd: de spreekbeurten van twee mensen staan dan onder één label. Dat was de fout die pyannote community-1 het vaakst maakte, en Nemotron 3 maakt hem veel minder vaak.
Aantal sprekers dat elk model vond, vergeleken met het echte aantal, op de 122 opnamen. pyannote community-1 vond meestal te weinig. Nemotron 3 zit vaker goed, en als het ernaast zit, vindt het even vaak te veel als te weinig.
Beter bij vergaderingen, uitzendingen en opnamen met twee tot acht sprekers
Opnamen verschillen sterk in moeilijkheid: vergaderingen die met een zaalmicrofoon zijn opgenomen, zijn het moeilijkst, uitzendingen het makkelijkst. Uitgesplitst naar soort opname, taal en aantal sprekers heeft elke groep met minstens tien opnamen een lager foutpercentage; bij de groep met één spreker valt het verschil binnen de foutmarge. De drie opnamen met negen tot twaalf sprekers gingen erop achteruit, maar het zijn er te weinig om te toetsen.
Beide balken in elke groep beginnen bij nul: grijs is pyannote community-1, groen is Nemotron 3, en het getal aan het eind van elke balk is het gemiddelde foutpercentage. Groen markeert een daling groter dan de foutmarge, lichtgrijs een verschil binnen de foutmarge, geel een stijging. De 6 kwartaalcalls met beleggers tellen mee in de totalen, maar zijn te weinig voor een eigen groep.
Een transcript opschonen: handmatige correcties per 10 minuten dalen van 28,9 naar 18,9
Uiteindelijk vertaalt het foutpercentage zich in handwerk: alinea's samenvoegen, splitsen of aan een andere spreker toewijzen tot de sprekerweergave klopt. We telden het kleinste aantal van zulke correcties bij 4 opnamen met twee personen waarvoor een referentietranscript op woordniveau bestaat (2 Nederlands, 1 Chinees, 1 Fins). Een andere fout die lezers opvalt: de zin van één persoon wordt over twee sprekers verdeeld. Bij 12 Engelse vergaderingen met een zaalmicrofoon doen beide modellen dat zelden, en het verschil valt binnen de foutmarge.
| pyannote community‑1 | Nemotron 3 | |
|---|---|---|
| Handmatige correcties per 10 minuten, 4 opnamen met twee personen | 28,9 | 18,9 |
| Zin verdeeld over twee sprekers, 12 Engelse vergaderingen | 0,58% van de zinnen | 0,88% van de zinnen |
Het aantal correcties is gebaseerd op maar 4 opnamen, te weinig voor een statistische toets of een algemene uitspraak. Een verdeelde zin is een zin van één persoon waarvan de tekst in de alinea's van twee sprekers terechtkwam.
Nemotron 3 is sneller en heeft minder dan een zevende van het geheugen nodig
Op het apparaat zelf tellen snelheid en geheugen net zo zwaar als nauwkeurigheid. De tabel toont de verwerkingstijd en het geheugengebruik van beide modellen via Core ML, met Nemotron 3 op de Neural Engine. Op elk apparaat dat we testten, is Nemotron 3 sneller en gebruikt het veel minder geheugen. Dat telt het zwaarst op oudere iPhones met 4 GB geheugen.
| pyannote community‑1 | Nemotron 3 | |
|---|---|---|
| Mac (M5) | ||
| 1 uur audio | ongeveer 22 s | ongeveer 8,5 s |
| Geheugen | 0,88 GB | 0,12 GB |
| iPhone 15 | ||
| Opname van 55 minuten | 26,6 s | 11,8 s |
| Extra geheugen tijdens de detectie | 833 MB | 30 MB |
| iPhone 12 mini | ||
| Opname van 55 minuten | 30,1 s | 17,2 s |
| Piekgeheugen van de app tijdens de detectie | 638 MB | 71 MB |
Mediaan van meerdere metingen (pyannote community-1 draaide één keer op de iPhone 15), allemaal op dezelfde kwartaalcall van 55 minuten met 10 sprekers. Beide modellen draaien via Core ML, Nemotron 3 op de Neural Engine. De tijden op de Mac betreffen alleen de verwerking, zonder het decoderen van de audio of het laden van het model. Op de iPhone lopen de tijden van de start van de detectie tot het resultaat, inclusief het laden van het model en, bij pyannote community-1, de nabewerking die er destijds bij hoorde. De telefoons waren via USB aangesloten, en elke meting begon met een afgekoelde telefoon.
De eerste keer dat Core ML een model op de Neural Engine uitvoert, compileert het dat model voor het apparaat: ongeveer 7 seconden op een Mac en ongeveer een minuut op een iPhone 15. Daarna duurt het laden van het model een fractie van een seconde.
Waar pyannote community-1 nog beter is
- Meer dan acht sprekers. Nemotron 3 labelt maximaal acht personen; bij onze 3 opnamen met negen tot twaalf sprekers deed het op 2 ervan slechter dan pyannote community-1.
- Eén spreker. Bij 14 opnamen met één spreker vond Nemotron 3 in 5 gevallen extra sprekers, pyannote community-1 in 1.
- Alineagrenzen midden in een zin. In 12 Engelse vergaderingen viel 25,8% van de alineagrenzen midden in een zin, tegenover 14,6% met pyannote community-1.
Zo haal je het meeste uit Nemotron 3 in Whisper Notes
- Geef het aantal sprekers op als je het weet. Toen we Nemotron 3 het aantal opgaven, werd het aantal sprekers bij 15 van de 108 opnamen met twee of meer sprekers gecorrigeerd, en bij geen enkele opname werd het fout. Het foutpercentage veranderde daarbij niet duidelijk (+0,16 procentpunt, binnen de foutmarge).
- Spreekt er maar één persoon, sla sprekerherkenning dan over. Zo voorkom je dat er af en toe een tweede ‘spreker’ opduikt.
- Bij meer dan acht sprekers: zie de labels als een eerste aanzet. Voeg sprekers samen en hernoem ze in de sprekerweergave waar nodig.
Het aantal sprekers instellen via ‘Not right?’ in de sprekerweergave op de Mac
Sprekerherkenning werkt op iPhone en Mac hetzelfde, volledig op je apparaat. Hoe je het in de app gebruikt, lees je in Whisper Notes herkent nu sprekers.
Zo werken ze: pyannote knipt en clustert, Nemotron 3 nummert sprekers in de volgorde waarin ze voor het eerst spreken
pyannote community-1 is een pijplijn in drie stappen. Het knipt de audio in vensters van 10 seconden en bepaalt wie er in elk venster spreekt (maximaal 3 personen per venster, maximaal 2 tegelijk). Daarna maakt het voor elk spraaksegment een stemafdruk, een zogenoemde embedding. Ten slotte groepeert VBx-clustering vergelijkbare stemafdrukken tot sprekers. Sprekernummers binnen een venster gelden alleen voor dat venster, dus het totale aantal sprekers ligt pas in de laatste stap vast.
Nemotron 3 Diarization is één model: een Transformer-encoder met 31 lagen die op elk moment acht sprekersporen een score geeft. Elk spoor krijgt een eigen score, dus als meerdere mensen tegelijk praten, zijn meerdere sporen actief. Het model volgt de Sortformer-aanpak van NVIDIA en nummert de sporen naar het moment waarop iemand voor het eerst spreekt: wie als eerste spreekt, staat altijd op spoor 1. Zo hoeft het model nooit te raden bij welk spoor een stem hoort. In de streamingopzet die de modelkaart beschrijft, onthoudt een sprekercache eerdere sprekers in de volgorde waarin ze binnenkwamen, zodat een later segment aan hetzelfde nummer kan worden gekoppeld.
Elk ontwerp heeft een grens. pyannote community-1 heeft geen vaste limiet voor het aantal sprekers, maar onderscheidt hooguit twee mensen op hetzelfde moment. Nemotron 3 kan meerdere mensen labelen die tegelijk praten, maar heeft acht sporen en vindt dus hooguit acht sprekers.
De diagrammen zijn vereenvoudigd. pyannote community-1: ongeveer 21 MB in Whisper Notes, CC BY 4.0 (modelkaart); segmentatiemodel van Plaquet en Bredin (Interspeech 2023), embeddings van WeSpeaker, clustering met VBx (Landini et al., 2022). Nemotron 3 Diarization: 97 MB (8-bit-conversie naar Core ML door Fluid Inference), ongeveer 100 miljoen parameters, OpenMDW 1.1 (modelkaart); de methode staat in de papers over Sortformer en Streaming Sortformer.
Hoe we hebben getest
- Opnamen. 122 openbare opnamen, 25 uur, in het Engels en Chinees, met elk 1 tot 12 sprekers: vergaderingen met een zaalmicrofoon, uitzendingen, kwartaalcalls met beleggers en opnamen met één spreker die uit losse fragmenten zijn samengevoegd. Daarnaast 5 opnamen met twee personen in het Engels, Nederlands, Chinees en Fins, waarvan 4 met een woord-voor-woordreferentie.
- Datasets. AMI, AISHELL-4, AliMeeting, VoxConverse, Earnings-21, LibriSpeech, IFADV en SKN, plus eigen opnamen. Alleen datasets waarvan de licentie publicatie van resultaten toestaat; geen opnamen van onze gebruikers.
- Maatstaf. Diarisatiefoutpercentage, gescoord in frames van 10 ms zonder collar, met overlappende spraak, gemiddeld per opname.
- Statistiek. 95%-intervallen uit 10.000 bootstrap-steekproeven van hele opnamen; geen intervallen voor groepen met minder dan tien opnamen.
- Apparaten. Een Mac met een M5-chip, een iPhone 15 en een iPhone 12 mini; de nauwkeurigheid is op de Mac berekend.
- Preregistratie. Het testplan lag vast op 2 november 2026 en de selectie met twee personen op 4 november, voordat er een model op die fragmenten had gedraaid.
Alle testdetails
Selectie. De vragen en regels lagen vast voor een grotere benchmark voordat er ook maar één model had gedraaid. We kozen deze deelverzameling op licentie, niet op resultaat, en berekenden de cijfers opnieuw uit dezelfde uitvoer met dezelfde scoring. Opnamen met één spreker die uit fragmenten van LibriSpeech en AISHELL-4 zijn samengevoegd, tellen mee onder hun bron. We publiceren alleen geaggregeerde resultaten, nooit audio of referentietekst.
| Dataset | Licentie | Gebruikte opnamen |
|---|---|---|
| AMI Meeting Corpus | CC BY 4.0 | 16 vergaderingen en 16 fragmenten van één minuut |
| AISHELL-4 | CC BY-SA 4.0 | 5 vergaderingen, 5 fragmenten, 5 samengevoegde opnamen met één spreker |
| AliMeeting | CC BY-SA 4.0 | 8 vergaderingen, 8 fragmenten, 1 opname met twee personen |
| VoxConverse | CC BY 4.0 (het auteursrecht op de video's blijft bij de eigenaren) | 30 uitzendingen en 18 fragmenten |
| Earnings-21 | CC BY-SA 4.0 | 6 kwartaalcalls met beleggers, 1 opname met twee personen |
| LibriSpeech | CC BY 4.0 | 5 samengevoegde opnamen met één spreker |
| IFADV | GNU GPL v2 of later | 2 opnamen met twee personen |
| SKN, Finse dialectopnamen | CC BY (Institute for the Languages of Finland) | 1 opname met twee personen |
Licenties zoals vermeld op de eigen pagina van elke dataset, gecontroleerd in november 2026.
Intervallen. Het totale foutpercentage daalde met 6,0 procentpunt (4,5 tot 7,6). Gemiste spraak daalde met 2,3 punt (1,3 tot 3,4) en spraak bij de verkeerde persoon met 3,4 punt (2,4 tot 4,6); geluid dat voor spraak werd aangezien, daalde met 0,30 punt, binnen de foutmarge (−0,02 tot 0,62). Het aandeel opnamen met het juiste aantal sprekers steeg met 27,9 punt (17,2 tot 38,5). In de groepen sluit elk interval nul uit, behalve bij de groep met één spreker. In de 12 Engelse vergaderingen bevat het interval voor verdeelde zinnen nul; dat voor alineagrenzen midden in een zin niet.
Scoring. Onze scorer wijkt hooguit 0,003 punt af van pyannote.metrics.
Meer dan acht sprekers. Resultaten op deze opnamen zijn gevoelig voor kleine verschillen in chip en audiodecodering. Op de kwartaalcall van 55 minuten met 10 sprekers liep Nemotron 3 uiteen van 30,6% tot 42,8%, afhankelijk van chip, instellingen en audiodecoder; pyannote community-1 haalde 21,6%.
Instellingen voor nabewerking. Sommige instellingen voor nabewerking zijn na de preregistratie gekozen, uitsluitend op aparte opnamen voor het afstemmen; de testopnamen zijn alleen gebruikt om resultaten te rapporteren.
Beperkingen. De nauwkeurigheid is alleen in het Engels en Chinees gemeten; het aantal correcties is gebaseerd op 4 opnamen. De tijden op de Mac komen van een Mac met M5 waarop ander werk draaide, met een bètaversie van macOS. De telefoons waren via USB aangesloten, dus het accuverbruik is niet gemeten.
Probeer het
Whisper Notes op iPhone en Mac gebruikt nu Nemotron 3 voor sprekerherkenning. Heb je vragen, schrijf dan naar support@whispernotes.app.