< Terug naar vorige pagina

Project

Efficiente Taalmodellering voor Automatische Spraakherkenning

Sinds het intreden van deep learning heeft automatische spraakherkenning, net zoals vele andere onderzoeksgebieden, een grote vooruitgang gekend. Zowel het akoestische model als het taalmodel zijn nu gebaseerd op artificiële neurale netwerken wat drastische verbeteringen heeft opgeleverd in de nauwkeurigheid van spraakherkenners. Echter, hoewel deze recente verbeteringen reeds opgenomen zijn in de meeste spraakherkenners op het vlak van akoestische modellering, is dit voor taalmodellen niet helemaal het geval. De huidige spraakherkenners gebruiken immers nog steeds n-gram taalmodellen, statistische modellen die ontwikkeld zijn in de jaren '70, omdat deze modellen verrassend nauwkeurig, maar vooral ook extreem efficiënt zijn. Meer geavanceerde taalmodellen zoals modellen die gebaseerd zijn op recurrente neurale netwerken (RNN) vereisen veel rekenkracht en kunnen daarom enkel gebruikt worden om de uitvoer van een herkenner met een n-gram taalmodel te herevalueren. Dit is suboptimaal, zowel voor wat betreft de nauwkeurigheid als de snelheid.

In dit proefschrift stellen we vijf verschillende technieken voor om dit aan te pakken. In een eerste voorstel proberen we de voorspellingsnauwkeurigheid van n-gram taalmodellen te verbeteren zonder daarbij aan efficiëntie in te boeten. Om dit te bereiken stellen we een klassegebaseerd n-gram taalmodel voor dat gebruik maakt van clusters die bestaan uit samenstellingen en hun grondwoord of hoofd. We argumenteren dat samenstellingen goed vertegenwoordigd worden door hun hoofd en dat dit de oververalgemening verzacht die eigen is aan klassegebaseerde modellen. We presenteren een clusteralgoritme dat het hoofd van een samenstelling nauwkeurig kan detecteren en gebruiken geaggregeerde statistieken om zowel ongeziene als infrequente samenstellingen te modelleren. Experimenten op het Corpus Gesproken Nederlands tonen significante word error rate (WER) reducties in vergelijking tot standaard n-gram modellen.

In een tweede voorstel proberen we afhankelijkheden te modelleren tussen woorden die zich op grotere afstand van mekaar bevinden. We doen dit door n-gram taalmodellen te combineren met semantische taalmodellen: modellen die semantische gelijkenis tussen woorden kunnen meten. We voeren een grondig onderzoek uit op twee bestaande semantische taalmodellen nl. cachemodellen en modellen gebaseerd op Latent Semantische Analyse (LSA), en vergelijken deze met een nieuw model dat gebaseerd is op het continue skip-grammodel, het model dat momenteel het best scoort in woordgelijkenis. Dit nieuwe model behaalt niet alleen een consistent hogere voorspellingsnauwkeurigheid op Nederlands kranten- en tijdschriftmateriaal, maar het is ook twee keer zo snel als het LSA-model en combineert goed met cachemodellen.

Een volgende poging om afhankelijkheden over lange afstanden te modelleren is Sparse Non-negative Matrix (SNM) schatting. Deze nieuwe schattingstechniek kan niet alleen willekeurige features combineren, maar is ook erg schaalbaar naar grote hoeveelheden data. We tonen aan dat SNM taalmodellen die gebruik maken van n-gram features de performantie van Kneser-Ney modellen benaderen en dat een model met n-gram en skip-gram features kan wedijveren met de allerbeste RNN modellen. De modellen worden experimenteel gevalideerd en behalen uitstekende resultaten op twee verschillende datasets: de One Billion Word Benchmark en een kleiner subcorpus van het LDC Gigaword Corpus. Tenslotte tonen we aan dat een eerste implementatie reeds 10x sneller is dan een geoptimaliseeerde implementatie van een RNN model.

Een van de obstakels die het toepassen van een complexer taalmodel in spraakherkenning bemoeilijken is het feit dat de meeste herkenners alle kennisbronnen combineren tot een grote zoekruimte. Het doorzoeken van deze enorme ruimte vereist dat elk van de kennisbronnen -- het akoestisch model, het uitspraakwoordenboek en het taalmodel -- eenvoudig gehouden wordt. Als alternatief stellen we een gelaagde architectuur voor die de uitvoer van een eerste akoestische laag als invoer gebruikt voor een tweede laag die instaat voor de woordherkenning. Deze ontkoppeling verlicht de taak van de herkenner wat het mogelijk maakt om in de tweede laag meer geavanceerde taalmodellen te gebruiken. We tonen aan op de Nederlandse N-Best Benchmark dat deze architectuur reeds kan wedijveren met de standaard architectuur, terwijl ze nog niet van haar volledige potentieel gebruik maakt.

Tenslotte stellen we een nieuwe taalmodeladaptatietechniek voor die kan gebruikt worden bij het automatisch herkennen van gesproken vertalingen. De techniek bestaat erin de bestaande n-gramkansen te verhogen door ze te vermenigvuldigen met exponentiële gewichten die gebaseerd zijn op kansen uit een vertalingsmodel zonder nadien renormalisatie toe te passen. Onze experimenten op het Corpus Gesproken Nederlands tonen aan dat de techniek een grote word error rate reductie behaalt zonder de snelheid of opslag van het systeem nadelig te beïnvloeden. Dit laat toe dat de aangepaste modellen in real time gebruikt worden in een praktische applicatie die vertalers ondersteunt.

Datum:7 sep 2010 →  5 mei 2017
Trefwoorden:Language Modeling, Automatic Speech Recognition
Disciplines:Artificiële intelligentie, Cognitieve wetenschappen en intelligente systemen
Project type:PhD project