De techniek achter spraaktechnologie

Spraakherkenning, ook wel bekend als automatische spraakherkenning (ASR), vertegenwoordigt de voorhoede van de interactie tussen mensen en machines. Het is een indrukwekkende technologie die machines en softwareapplicaties de mogelijkheid geeft om gesproken taal te herkennen en om te zetten naar geschreven tekst, waardoor een naadloze, handsfree communicatie tussen mens en machine mogelijk is. Deze technologie maakt het mogelijk om een breed scala aan taken uit te voeren, variërend van het dicteren van teksten en het bedienen van slimme apparaten, tot het voeren van gesprekken met virtuele assistenten zoals Siri en Alexa.


Het proces van spraakherkenning is verrassend complex en omvat meerdere disciplines, zoals signaalverwerking, taalkundige modellering en machine learning. Het begint met het opvangen van de spraaksignalen en deze om te zetten in een vorm die door computers kan worden geïnterpreteerd. Dit wordt gevolgd door een taalkundige analyse om de structuur en betekenis van de gesproken taal te begrijpen. De laatste stap maakt gebruik van geavanceerde machine learning technieken om deze informatie te interpreteren en de meest waarschijnlijke transcriptie van de gesproken woorden te genereren.


In recente jaren heeft de opkomst van artificiële intelligentie (AI) en deep learning een revolutie teweeggebracht in het veld van spraakherkenning, waardoor aanzienlijke verbeteringen in de nauwkeurigheid en veelzijdigheid van deze technologie mogelijk zijn gemaakt..

 

Hier is een algemene overzicht van de stappen die plaatsvinden in een spraakherkenningssysteem:


  • Geluidscaptatie: Deze stap betreft het opvangen van gesproken woorden via een microfoon en deze omzetten naar een digitaal formaat. Het geluid wordt vastgelegd als een tijdsgebonden golfvorm en omgezet in een reeks digitale waarden die de variaties in luchtdruk over de tijd vertegenwoordigen. Het analoge signaal wordt gedigitaliseerd via een proces dat bekend staat als bemonstering of "sampling".
  • Voorverwerking: Eenmaal gedigitaliseerd, wordt het spraaksignaal voorbereid voor verdere analyse. Dit proces, ook bekend als signaalverwerking, omvat taken zoals ruisvermindering (het verminderen van achtergrondgeluiden die de duidelijkheid van de spraak kunnen verminderen) en normalisatie (het aanpassen van het volume van de spraak om consistentie te waarborgen). De signalen worden ook vaak geframed of opgesplitst in kleine tijdvensters voor verdere analyse.
  • Kenmerkextractie: Tijdens deze stap worden belangrijke kenmerken uit de geframede signalen geëxtraheerd die de inhoud van de spraak vertegenwoordigen. Een veelgebruikte techniek is het Mel-Frequentie Cepstrum (MFCC), dat de spraaksignalen omzet in een reeks kenmerken die de vorm van de vocale tractus van de spreker vertegenwoordigen.
  • Acoustisch Modelleren: Dit is waar de geëxtraheerde kenmerken worden omgezet in fonetische eenheden. In de traditionele spraakherkenning wordt dit vaak gedaan met behulp van Hidden Markov Models (HMM's), die de waarschijnlijkheden van verschillende fonemen gegeven de geëxtraheerde kenmerken modelleren. Meer recentelijk worden ook diepe neurale netwerken (DNN's) gebruikt, die complexere representaties kunnen leren en beter presteren bij grote hoeveelheden data.
  • Taalmodellering: In deze stap wordt de context van de woorden en de grammaticale structuur van de taal gebruikt om de waarschijnlijke sequenties van woorden te bepalen. N-gram modellen zijn traditioneel veelgebruikt voor deze taak, maar meer recentelijk worden ook Recurrent Neural Networks (RNN's) en Transformer-modellen (zoals BERT en GPT) gebruikt, die complexere taalstructuren kunnen modelleren en beter presteren bij grote hoeveelheden data.
  • Decodering: De laatste stap is om de resultaten van het akoestisch model en het taalmodel te combineren om de meest waarschijnlijke sequentie van woorden te genereren die overeenkomen met de gesproken invoer. Dit wordt vaak gedaan met behulp van een zoekalgoritme, zoals het Viterbi-algoritme, dat de meest waarschijnlijke pad door de verschillende mogelijke sequenties van fonemen vindt.

 

 Spraakherkenningstechnologieën: Een Overzicht van Benaderingen


Spraakherkenning, het vermogen van machines en software om menselijke spraak te interpreteren en te transcriberen, is een complex proces dat vele technieken en benaderingen omvat. In dit artikel zullen we enkele van de voornaamste benaderingen in spraakherkenningstechnologieën uitlichten, waaronder de fonetische, op woorden gebaseerde, op subwoorden gebaseerde, eind-tot-eind en statistische taalmodelleringsbenaderingen.


  1. Fonetische benadering: Bij de fonetische benadering van spraakherkenning worden de kleinste betekenisvolle eenheden van geluid, bekend als fonemen, in de gesproken taal herkend en begrepen. Het proces van het omzetten van gesproken woorden in een reeks fonemen wordt fonetische transcriptie genoemd. Fonemen zijn de basisbouwstenen van gesproken taal. Een fonetisch spraakherkenningssysteem probeert deze fonemen te identificeren om de gesproken woorden te begrijpen. Dit maakt het nuttig voor meertalige spraakherkenningssystemen.
  2. Op woorden gebaseerde benadering: In de op woorden gebaseerde benadering worden hele woorden als de kleinste eenheden van herkenning beschouwd. Het model wordt getraind om woorden in hun geheel te herkennen. Deze benadering werkt heel goed in domeinen met een beperkte woordenschat, maar kan minder effectief zijn in open-domein situaties waar de woordenschat veel groter is.
  3. Op subwoorden gebaseerde benadering: Deze benadering bevindt zich ergens tussen de fonetische en woordgebaseerde benaderingen in. De kleinste eenheden van herkenning kunnen lettergrepen, morfemen (de kleinste betekenisvolle eenheden van taal), of andere subwoord eenheden zijn. Deze benadering kan effectiever zijn dan een zuiver woordgebaseerde benadering voor talen met een grote woordenschat of complexe morfologie.
  4. Eind-tot-eind benaderingen: Met de opkomst van deep learning zijn er modellen ontwikkeld die spraak rechtstreeks omzetten in tekst, zonder expliciete fonetische of subwoordstappen. Deze modellen, zoals de Connectionist Temporal Classification (CTC) of modellen op basis van Transformer architecturen, worden getraind om de volledige sequentie van spraakframes om te zetten in een sequentie van karakters of woorden.
  5. Statistische taalmodellering: Dit wordt meestal gebruikt in combinatie met een van de bovenstaande benaderingen. Statistische taalmodellen gebruiken de context van omliggende woorden om de waarschijnlijkheid van een bepaald woord te voorspellen. Traditioneel werden N-gram modellen gebruikt, maar recentelijk zijn neurale netwerktaalmodellen, zoals LSTM's (Long Short-Term Memory) en Transformer-modellen, populair geworden.


Elke benadering heeft zijn eigen voor- en nadelen, en de beste keuze hangt af van de specifieke eisen van de taak, zoals de beschikbare hoeveelheid trainingsdata, de complexiteit van de taal, en de noodzakelijke snelheid en nauwkeurigheid van de herkenning. 


Hier is een overzicht van enkele bekende bedrijven die actief zijn op het gebied van spraakherkenning, en de specifieke technieken die ze gebruiken :


  • Google (Google Assistant): Google maakt gebruik van een combinatie van technieken, waaronder diepe neurale netwerken, en heeft de verschuiving naar end-to-end leren benadrukt, waarbij spraak rechtstreeks wordt omgezet in tekst.
  • Amazon (Alexa): Amazon gebruikt ook deep learning technieken en heeft specifieke technologieën ontwikkeld voor het omgaan met verre veldspraak en ruisreductie.
  • Apple (Siri): Siri maakt gebruik van machine learning technieken, maar de specifieke details zijn minder bekend omdat Apple over het algemeen minder informatie over zijn technologieën vrijgeeft.
  • Microsoft (Cortana): Microsoft heeft aangegeven dat het gebruik maakt van diepe neurale netwerken voor spraakherkenning.
  • IBM (Watson): IBM maakt gebruik van een combinatie van technieken, waaronder machine learning en deep learning.
  • Nuance Communications: Dit bedrijf, dat bekend staat om zijn Dragon NaturallySpeaking software, maakt gebruik van deep learning technieken.
  • Baidu: De Chinese tech gigant Baidu maakt gebruik van deep learning voor spraakherkenning en heeft een systeem genaamd Deep Speech ontwikkeld.
  • Alibaba: Alibaba's spraakherkenningstechnologie wordt voornamelijk gebruikt voor zijn slimme luidspreker, Tmall Genie, en het maakt gebruik van deep learning technieken.
  • iFlytek: iFlytek is een Chinees bedrijf dat zich richt op spraakherkenning en maakt ook gebruik van deep learning technieken.
  • Yandex: Het Russische tech bedrijf Yandex heeft een spraakherkenningssysteem ontwikkeld voor zijn slimme luidspreker, Yandex.Station, en het maakt gebruik van deep learning technieken.
  • Alle bovengenoemde bedrijven maken gebruik van deep learning, wat een vorm van eind-tot-eind leren is. Ze kunnen ook gebruik maken van andere technieken, zoals fonetische herkenning en taalmodellering, als onderdeel van hun systemen, maar de specifieke details zijn vaak niet openbaar gemaakt.
  • Contexta360: Dit bedrijf is gespecialiseerd in gespreksanalyse en maakt gebruik van AI en machine learning om inzichten te halen uit spraak- en tekstgegevens.
  • SoundHound: Bekend om zijn muziekherkenningsapp, heeft SoundHound ook een spraakherkenningsplatform genaamd Houndify dat gebruik maakt van natural language processing en machine learning.
  • OpenAI (GPT-3): Hoewel beter bekend om zijn tekst-naar-tekst transformatiecapaciteiten, heeft GPT-3 ook enige capaciteit voor spraakherkenning en genereert teksten gebaseerd op spraakinvoer. Het maakt gebruik van transformerende neurale netwerken.
  • Verint: Verint biedt spraakherkenning als onderdeel van zijn klantbetrokkenheidsplatform, en maakt gebruik van AI en analytics.
  • VoiceBase: Dit bedrijf biedt AI-gedreven spraakanalyse voor bedrijven en maakt gebruik van machine learning en natural language processing.
  • Voci Technologies: Voci gebruikt AI en machine learning om spraak-naar-tekst transcriptie te bieden.
  • Deepgram: Deepgram biedt op maat gemaakte spraakherkenning voor bedrijven, waarbij het gebruik maakt van deep learning om betere transcripties te leveren.
  • Kaldi: Terwijl de meeste van deze bedrijven gesloten, commerciële systemen zijn, is Kaldi een open-source spraakherkenningstoolkit die veel gebruikt wordt in onderzoek. Het biedt tools voor zowel diep leren als traditionelere methoden zoals Gaussian Mixture Models en Hidden Markov Models.
  • Speechmatics: Dit bedrijf biedt spraak-naar-tekst diensten voor bedrijven en maakt gebruik van machine learning en neurale netwerken.
  • BabbleLabs (nu onderdeel van Cisco): BabbleLabs specialiseerde zich in het verbeteren van spraakkwaliteit en achtergrondruisreductie. Het gebruikte deep learning om ruis van spraak te scheiden. In 2020 werd het overgenomen door Cisco.