Spraak Synthese

In deze introductie wordt je wegwijs gemaakt in de stappen die nodig zijn om tekst uit te laten spreken door een computer. Het bevat de bestudering van een aantal internet tutorials, en het beluisteren en beoordelen van een aantal spraaksynthesesystemen. Je kunt dit onderdeel zowel in de computerleerzalen als thuis uitvoeren. De opdrachten dien je in een verslag te verwerken dat moet worden opgestuurd via SafeAssign.

Voorbereiding: Je zult spraak moeten beluisteren. Dat kan meestal prima thuis. Als je in een computerleerzaal werkt, neem dan een koptelefoon mee. Op het CIM zijn die bij de studentenhelpdesk te leen.

Lees Jurafsky and Martin, hoofdstuk 8 Speech Synthesis. Je hoeft p298/99(tf-idf), p312/3 (target cost, join cost) niet te doen. Formules mag je overslaan alhoewel ze vaak een mooie compacte beschrijving geven.

Inleiding

Wat is er nodig om een computer teksten te laten uitspreken? Daarvoor moet de tekst veel bewerkingen ondergaan. Ten eerste spreken we niet in letters maar in spraakklanken of fonemen. Voor spraakklanken zijn er speciale tekens, het fonetisch alfabet. De omzetting van letter naar foneem kan automatisch gebeuren maar is vrij ingewikkeld. Voor het Nederlands zijn daar meer dan 500 regels voor nodig. Denk alleen al aan de uitspraak van het woord 'verleden'.
de eerste e is een /Ɛ/,
de tweede een /e/,
de derde een /Ə/ (sjwa).

Opdracht 1: Schrijf de grafeem-foneem regels voor Nederlandse woorden (in lower case, geen afkortingen en andere moeilijke gevallen, geen leenwoorden), behalve voor de e (want die neemt het leeuwendeel van de regels voor zijn rekening). Je mag uitgaan van morfologische parsing van de woorden. Zoals in een reguliere expressie is het begin van een woord gemarkeerd met ^ en het einde met $. Lettergreepgrenzen zijn gegeven met %. Bijvoorbeeld: raadhuis  = ^raad%huis$. Voor de klanksymbolen gebruik je die van MBROLA. Dan wordt raadhuis > [rath9ys]
De klanksymbolen staan in een algemene pagina over grafeem-foneem omzetting beschreven.
Je zult contekst eisen moeten stellen. Gebruik daarvoor de Chomsky-Halle notatie.

Je mag regels in volgorde zetten, bv voor b

b%b > [b]                      #heb%ben > hEb@n
b > [p] / _ {$,%}            #eb > Ep ,op einde woord en einde morfeem
b > [b]                          #been > ben ,in alle andere gevallen

De omzetting van a is geregeld via

aa > [a] # dubbele a wordt altijd [a]
au > [Au] # de tweeklank
a > [a] / _ {i,y,$,%} # lange [a] voor i, y op woord- en morfeemeinde
a > [A] #overige korte [A]

Je mag dus ook lettercombinaties in een keer omzetten. Je mag C gebruiken voor de verzameling medeklinkers, en V voor de verzameling klinkers.

--

Behalve spraakklanken zijn er echter ook nog de stemmelodie en de duren en het ritme van de spraakklanken. Dit noemen we samen de prosodie. Daarover vertelt een tekst buiten punctuatie niets. Alleen indirect kunnen we door een taalkundige analyse (het ontleden van de zin en zijn betekenis) een indruk krijgen waar de woordklemtoon en het zinsaccent moeten liggen.

Met deze informatie wordt de uiteindelijke spraaksynthese aangestuurd. Die moet weten hoe fonemen moeten worden omgezet in geluid. Bij mensen gebeurt dat met het basisgeluid dat meestal in het strottenhoofd wordt gemaakt, en door articulatie van de mond-keelholte, waarin dit basisgeluid zijn uiteindelijk klankkleur krijgt zodat het als een klinker 'uu' of een medeklinker 'k' wordt verstaan. Bij spraaksynthese proberen we hetzelfde te bereiken. Daar zijn verschillende aanpakken voor.

De eerste is allofoon synthese, ofwel formant synthese ofwel synthese door regels. De akoestische eigenschappen van elke spraakklank worden in een akoestisch model van spraakproductie verwerkt, met grondtoon, formanten en bandbreedtes als belangrijkste parameters. Het valt niet mee om parameters van het model goed te bepalen, zeker wanneer die dynamisch varieren bij klankovergangen.

In de tweede aanpak wordt gewerkt met vooropgenomen akoestische bouwstenen van twee spraakklanken, van het midden van de eerste naar het midden van de tweede. In het midden zijn de klanken namelijk redelijk stabiel. Zo'n bouwsteen heet difoon, en we spreken dan ook van difoonsynthese wanneer deze bouwstenen aan elkaar worden geplakt (concatenatie) en van duur en toonhoogte worden voorzien.

De recentste aanpak is om van een persoon heel veel spraak op te nemen en dat in allerlei kleine stukken op te delen. Deze stukken worden dan als bouwstenen gebruikt. Dat kunnen enkele fonemen zijn, maar ook difonen, syllaben of hele woorden. De kunst is om voor een nieuwe zin steeds de best beschikbare stukjes te vinden die niet alleen inhoud, maar ook melodie en ritme van de nieuwe zin goed beschrijven. Deze aanpak heet unit selection.


Introductie

De historische ontwikkeling van spraaksynthese is op college besproken. Als je de bijbehorende prestaties van spraaksynthese nog eens wilt horen, ga dan naar de onderstaande milestones site.  Alles over de historische ontwikkeling (met veel plaatjes en voorbeelden) vind je ook op pagina's van Hartmut TraunmŁller. Geluidsvoorbeelden hoor je op onze eigen audiufon site:

Een algemene inleiding in spraaksynthese vind je op Wikipedia.

Alle onderdelen van een tekst-naar-spraaksysteem (TTS system) staan goed uitgelegd in het spraaksynthese tutorial van de universiteit van Dresden. Bestudeer in ieder geval de onderdelen:

  • elements of a TTS system
  • selection of the speech units
  • demonstration of the TTS system
Opdracht 2: Probeer het systeem (Demonstration of the TTS system) met de zin "Kann man hier Kaese aus Holland bekommen?" Welke informatie staat beschreven in "Phoneme string with prosodic annotation"?
 

Nederlandse spraaksynthese

Fluency is de eerste commerciŽle Nederlandse spraaksynthese op basis van difonen (gemaakt met MBROLA), maar tegenwoordig ook met eenvoudige (en goedkope!) unit-selection. Op de Fluency pagina zijn beiden te horen.

Probeer Fluency met een aantal zinnen (bewaar deze zinnen voor volgende testen), en voor de minstens vier sprekers en verschillende spreeksnelheden. Blinde gebruikers hebben liever de difonen van MBROLA omdat die bij sneller spreken beter te verstaan blijven.
Opdracht 3a: Beschrijf je bevindingen.

Fluency moet bijvoorbeeld concurreren met Vocalizer van Nuance en Acapela, allemaal gebaseerd op unit-selection. Duurder maar ook beter! Test deze voor de Nederlandse en Vlaamse mannen- en vrouwenstemmen met een eigen tekst naar keuze.

Opdracht 3b: Kun je aangeven welke TTS je voor het Nederlands het beste vindt: Acapela, Vocalizer of Fluency? Beschrijf zo nauwkeurig mogelijk waarin de verschillen precies zitten, denk daarbij aan foneemrealisatie, timing, en toonhoogtebeweging. Vind je de mannenstemmen beter dan de vrouwenstemmen?
 

Engelse spraaksynthese

Vooral voor het Engels zijn de nodige interactieve tekst-naar-spraak demonstraties te vinden op het internet.

Opdracht 4: Zoek minstens 4 websites op met Engelse spraaksynthese, en test ze met dezelfde langere zin. Orden de systemen van slechts naar best. Beschrijf de systemen kort (geef ook de URL's), en motiveer je keuzes aan de hand van karakteristieke klankverschillen. Het zal niet altijd meevallen de verschillen te benoemen, maar probeer het in eigen woorden zo goed mogelijk.
 

Synthese van expressie

Op deze expressive synthetic speech site worden synthetische zinnen met allerlei expressies gepresenteerd, afkomstig uit vele laboratoria. Naast een neutrale uiting, staan er realisatie van de 'big four' emoties: vreugde, droefheid, boosheid en angst. 

Opdracht 5: Probeer een aantal systemen uit. Wat zijn de belangrijkste akoestische verschillen in de realisaties van de emoties (luister vooral naar variatie in spreektempo, en de variatie in de stemmelodie) in de systemen van
- Felix Burckhard (2005), de Nederlandse stem (negeer de beroerde kwaliteit)
- MARY (2005) voetbalreporter
- Voxygen (2012) extreme karakters
 
Verslag: Maak een verslag van de opdrachten en stuur die voor de deadline in SafeAssign. Denk er aan dat de vorm van het verslag mede beoordeeld wordt. Dus maak er een leesbaar geheel van in wetenschappelijke stijl.


Last update: dinsdag, mei 14, 2013     top