WhisperCorrector

De kwaliteit van automatische spraakherkenning is de afgelopen jaren sterk verbeterd. Bij goede opnameomstandigheden – weinig achtergrondgeluid, duidelijke spraak en geen sterk dialect – zijn de resultaten vaak verrassend goed en soms bijna op menselijk niveau. Toch gaat het in de praktijk nog regelmatig mis. Dat komt niet alleen door minder ideale opnames, maar vooral doordat gesproken taal net iets anders is dan geschreven taal. In een gesprek is het heel normaal om jezelf te corrigeren, bijvoorbeeld: “Ik liep achter het huis, eh… nee, ervoor.” Als luisteraar begrijp je dat meteen, maar spraakherkenning zet alles letterlijk om in tekst en dat kan leiden tot kromme of verwarrende zinnen.

Download Whisper Corrector hier
Download de handleiding hier

WhisperCorrector

De automatisch gegenereerde transcripties moeten bijna altijd door mensen worden gecontroleerd op hun juistheid; ook bij de vaak uitstekende spraakherkenningen van tegenwoordig.
Bij het controleren en eventueel corrigeren van de resultaten is het van belang dat de uitvoerders zowel de getranscribeerde tekst als de audio of video tot hun beschikking hebben. We hebben geprobeerd dat met WhisperCorrector te doen. De getranscribeerde tekst wordt onderverdeeld in turns: fragmenten van ongeveer 500 woorden elk. Van iedere turn weten we de begin- en eindtijd en die worden gebruikt om de audio of videofragmenten aan elke turn te koppelen. De resultaten van de spraakherkenning komen (meestal) van een Whisper-kloon. Maar… iedere kloon gebruikt zijn eigen output-formaat. Dit houdt in dat we voor iedere kloon een interpretator moeten maken die het output formaat omzet in een gestandaardiseerd xml-formaat. Dit xml-formaat wordt vervolgens gebruikt voor de controle en eventuele correcties. Vaak ben je meerdere keren bezig met de controle en correcties. Je kunt de xml-file altijd opslaan en later verder gaan waar je gebleven was.

Is de gehele transcriptie gedaan en ben je tevreden over het eindresultaat, dan sla je eerst de xml-file nog eenmaal op. Vervolgens exporteer je de xml-file naar een SRT- en VTT-file (voor de ondertiteling), een HTML-file waarmee de audio en tekst gelijktijdig worden afgespeeld, een txt-bestand (voor de zekerheid) en een word-achtige bestand dat makkelijk in MS-word kan worden geimporteerd om een “mooie” transcriptie te maken.

WhisperCorrector is beschikbaar in 2 Windows-formaten (32-bit en 64-bit) en 2 Apple formaten (voor oudere Apple computers die nog een Intel-processor gebruiken en de modernere die een Apple-chip hebben). De software en de manual (en) cq handleiding (nl) zijn hier te downloaden.

Spreekwijze en accenten

Whisper is behoorlijk robuust voor “afwijkende” spraak maar heeft toch wel moeite met sprekers die met een zwaar accent of duidelijk dialect spreken. Er wordt aan gewerkt om ook voor die sprekers goede spraakherkenning te krijgen maar dat gaat nog wel een jaar duren. Naast sprekers met sterke accenten of dialecten, kunnen ook sprekers met een andere moedertaal of sprekers die “slordig” en/of ”haastig” spreken, minder goed herkend worden. Waar iemand bijvoorbeeld “we lopen naar huis” zegt, kan de herkenning “we lope naar huis” opleveren. In veel gevallen kun je dat herstellen, maar bij namen of specifieke termen is dat lastiger. Zo kan een naam als “Arjan van Hessen” zomaar als iets anders (bv Arjen van Esse) worden herkend.

Controle en meestal ook correctie blijft daarom altijd nodig als je een betrouwbare transcriptie wilt maken.

Diarisatie en Sprekerherkenning

Een van de bijkomende voordelen van het Open Source karakter van Whisper, was dat verschillende ontwikkelaars zich op allerlei bijkomende spraaktechnologische items hebben geworpen. Whisper-kloons zijn daardoor handzamer, sneller en uitgebreider geworden dan het origineel dat in sept 2022 gelanceerd werd. Een van de in het oog springende zaken is Diarisatie: het opdelen van de audio in “stukken per spreker”.

Diarisatie lijkt op sprekerherkenning maar is niet hetzelfde. Bij sprekerherkenning geeft de computer aan wie er spreekt (bv Marjan of Piet). Bij diarisatie geeft hij aan dat de audio onderverdeeld kan worden in stukken met steeds één bepaalde spreker. Dat kan gedaan worden met of zonder vooraf aan te geven hoeveel verschillende sprekers er aan de opnamen mee hebben gedaan. We krijgen dan iets als:

  • Spreker 1: 00:00 – 01:15
  • Spreker 2: 01:15 – 02:03
  • Spreker 1: 02:03 – 03:10

Wij weten echter wel wie Spreker 1 en Spreker 2 waren, en kunnen dan in WhisperCorrector aangeven dat Spreker 1 “Sanneke” was en Spreker 2 “Lieke”. Wij doen dan de sprekerherkenning op basis van de diarisatie.

Diarisatie werkt meestal redelijk tot goed maar maakt toch nog wel regelmatig fouten bij (vooral) kortere fragmenten en bij familieleden van het zelfde geslacht (bv moeder en dochters).

Over de ontwikkelaar

De tools op deze pagina zijn ontwikkeld door Arjan van Hessen. Hij is specialist op het gebied van spraakherkenning en werkt al jarenlang aan het toegankelijk maken van deze technologie voor onderzoek en erfgoed.

Binnen Oral History heeft hij aan veel projecten bijgedragen, onder andere door het ontwikkelen van praktische tools voor automatische transcriptie en correctie. Daarmee helpt hij om interviews sneller te verwerken en beter toegankelijk te maken voor hergebruik.

Vragen en/of opmerkingen over WhisperCorrector kunnen aan hem gesteld worden: arjan@brs85.nl