Talsyntes

Slutförd

Anmärkning

Mer information finns på fliken Text och bilder !

Talsyntes – även kallat text till tal (TTS) – konverterar skriven text till talat ljud. Du stöter på talsyntes när virtuella assistenter läser upp meddelanden, navigeringsappar anger vägbeskrivningar eller hjälpmedel som hjälper användare att lyssna på skrivet innehåll.

Talsyntessystem bearbetar text genom fyra distinkta steg. Varje steg transformerar indata stegvis och bygger mot en slutlig ljudvågform som låter naturlig och begriplig.

Textnormalisering: Standardisera texten

Textnormalisering förbereder rå text för uttal genom att expandera förkortningar, siffror och symboler till talade former.

Tänk på meningen: "Dr Smith beställde 3 artiklar för $ 25.50 den 12/15/2023.".

Ett normaliseringssystem konverterar det till: "Doktor Smith beställde tre artiklar för tjugofem dollar och femtio cent den femtonde december, två tusen tjugotre."

Vanliga normaliseringsuppgifter är:

  • Expanderande förkortningar ("Dr" blir "Doctor", "Inc." blir "Incorporated")
  • Konvertera tal till ord ("3" blir "tre", "25,50" blir "tjugofem punkt fem noll")
  • Hanteringsdatum och tider ("12/15/2023" blir "den femtonde december tjugohundratjugotre")
  • Bearbetning av symboler och specialtecken ("$" blir "dollar", "@" blir "at")
  • Lösa homografer baserat på kontext ("läs" som nutid kontra dåtid)

Textnormalisering hindrar systemet från att försöka uttala råa symboler eller siffror, vilket skulle ge onaturliga eller obegripliga utdata.

Tips/Råd

Olika domäner kräver specialiserade normaliseringsregler. Medicinsk text hanterar läkemedelsnamn och doser annorlunda än finansiell text hanterar valuta och procentandelar.

Språkanalys: Mappa text till fonem

Språkanalysen delar upp normaliserad text i fonem (de minsta ljudenheterna) och bestämmer hur varje ord ska uttalas. Språkanalyssteget:

  1. Segmenterar text i ord och stavelser.
  2. Söker efter ord uttal i lexikon (uttalsordlistor).
  3. Använder G2P-regler eller neurala modeller för att hantera okända ord.
  4. Markerar stavelsegränser och identifierar stressade stavelser.
  5. Avgör fonetikkontext för intilliggande ljud.

Grafem-till-fonem-konvertering

Grapheme-to-phoneme (G2P) konvertering mappar skriftliga bokstäver (graphemes) till uttalsljud (fonem). Engelsk stavning indikerar inte uttal på ett tillförlitligt sätt, så G2P-system använder både regler och inlärda mönster.

Till exempel:

  • Ordet "though" uttalas som /θoʊ/
  • Ordet "through" konverteras till /θruː/
  • Ordet "hosta" konverteras till /kɔːf/

Varje ord innehåller bokstäverna "ough", men uttalet skiljer sig dramatiskt.

Moderna G2P-system använder neurala nätverk som tränas på uttalsordlistor. Dessa modeller lär sig mönster mellan stavning och ljud, hantering av ovanliga ord, korrekta namn och regionala variationer mer graciöst än regelbaserade system.

Vid bestämning av fonem använder språkanalys ofta en transformeringsmodell för att ta hänsyn till kontexten. Till exempel uttalas ordet "read" annorlunda i "Jag läser böcker" (nuvarande tempus: /riːd/) jämfört med "Jag läste den boken igår" (tidigare tempus: /rɛd/).

Prosodigenerering: Bestämma uttal

Prosody refererar till de rytm-, stress- och intonationsmönster som får tal att låta naturligt. Prosody generation bestämmer hur man säger ord, inte bara vilket ljud som ska produceras.

Elementen av prosodi

Prosody omfattar flera sångegenskaper:

  • Tonhöjdskonturer: Stigande eller fallande tonhöjdsmönster som signalerar frågor kontra instruktioner
  • Varaktighet: Hur länge varje ljud ska hållas, vilket skapar betoning eller naturlig rytm
  • Intensitet: Volymvariationer som markerar viktiga ord
  • Paus: Avbrott mellan fraser eller meningar som underlättar förståelsen.
  • Stressmönster: Vilka stavelser får betoning inom ord och meningar

Prosody har en betydande effekt på hur talad text tolkas. Tänk till exempel på hur följande mening ändras beroende på vilken stavelse eller ord som framhävs:

  • "Jag sa aldrig att han åt tårtan."
  • "Jag sa aldrig att han åt tårtan."
  • "Jag sa aldrig att han åt tårtan."
  • "Jag sa aldrig att han åt tårtan."

Transformermodellbaserad prosodiprediktion

Moderna talsyntessystem använder neurala transformatornätverk för att förutsäga prosodi. Transformatorer utmärker sig för att förstå kontexten i hela meningar, inte bara intilliggande ord.

Processen för prosodigenerering:

  1. Indatakodning: Transformatorn tar emot fonetiksekvensen med språkliga funktioner (skiljetecken, del av tal, meningsstruktur)
  2. Kontextuell analys: Mekanismer för självuppmärksamhet identifierar relationer mellan ord (till exempel vilket substantiv ett pronomen refererar till, var meningsgränser befinner sig)
  3. Prosody-prediktion: Modellen matar ut förutsagda värden för tonhöjd, varaktighet och energi vid varje fonem
  4. Stilfaktorer: Systemet tar hänsyn till talstil (neutrala, uttrycksfulla, konversationsmässiga) och talaregenskaper

Transformatorer förutsäger prosody genom att lära sig av tusentals timmar inspelade tal i kombination med transkriptioner. Modellen upptäcker mönster: frågor stiger i tonhöjd i slutet, kommatecken signal korta pauser, betonade ord förlängs något och meningsslutord ofta faller i tonhöjd.

Faktorer som påverkar prosodyval:

  • Syntax: Satsgränser anger var du ska pausa
  • Semantik: Viktiga begrepp framhävs
  • Diskurskontext: Kontrasterande information eller svar på frågor kan medföra extra stress
  • Talaridentitet: Varje röst har ett karakteristiskt tonhöjdsintervall och talarfrekvens
  • Känslomässig ton: Spänning, oro eller neutralitet formar prosodiska mönster

Prosodiförutsägelserna skapar en målspecifikation: "Producera fonetiken /æ/ vid 180 Hz i 80 millisekunder med måttlig intensitet och pausa sedan i 200 millisekunder."

Viktigt!

Prosody påverkar dramatiskt naturlighet. Robotljudande tal är ofta resultatet av platt, monoton prosody – inte från ofullkomligt uttal av fonetik.

Talsyntes: Generera ljud

Talsyntes genererar den slutliga ljudvågformen baserat på fonetiksekvensen och prosodyspecifikationerna.

Metoder för vågformsgenerering

Moderna system använder neurala vocoders – djupinlärningsmodeller som genererar ljudexempel direkt. Populära vocoder-arkitekturer är WaveNet, WaveGlow och HiFi-GAN.

Syntesprocessen:

  1. Akustisk funktionsgenerering: En akustisk modell (ofta en transformerare) omvandlar fonem och prosodimål till mel-spektrogram – visuella representationer av ljudfrekvenser över tid
  2. Vocoding: Den neurala vocoderen konverterar mel-spektrogram till råa ljudvågformer (sekvenser av amplitudvärden vid 16 000–48 000 prover per sekund)
  3. Efterbearbetning: Systemet tillämpar filtrering, normalisering eller ljudeffekter för att matcha målutdataspecifikationer

Anmärkning

Vad gör neurala vocoders effektiva:

  • Hög återgivning: Generera ljudkvalitet som närmar sig studioinspelningar
  • Naturlighet: Fånga subtila röstegenskaper som andning och röstkvalitet
  • Effektivitet: Realtidsgenerering på modern maskinvara (viktigt för interaktiva program)
  • Flexibilitet: Anpassa till olika talare, språk och talstilar

Vocoder utför i princip inversen av vad automatisk taligenkänning gör – medan taligenkänning konverterar ljud till text konverterar vocoder språkrepresentationer till ljud.

Den fullständiga pipelinen i praktiken

När du begär talsyntes för "Dr. Chens möte är kl. 15:00":

  1. Textnormalisering expanderar det till "Doktor Chens möte är klockan tre på eftermiddagen"
  2. Språklig analys konverterar den till fonem: /ˈdɑktər ˈtʃɛnz əˈpɔɪntmənt ɪz æt θri əˈklɑk pi ɛm/
  3. Prosody-generationen förutspår att tonhöjden ökar något vid "avtalad tid", en paus efter "is" och betoning på "tre"
  4. Talsyntes genererar en ljudvågform som matchar dessa specifikationer

Hela processen slutförs vanligtvis på mindre än en sekund på modern maskinvara.