Baidus lab för artificiell intelligens avslöjar syntetiskt talsystem

I kampen om att tillämpa djupinlärningstekniker i den verkliga världen står ett företag huvud och axlar över konkurrenterna. Googles DeepMind-dotterbolag har använt tekniken för att skapa maskiner som kan slå människor i videospel och det uråldriga spelet Go. Och förra året förbättrades Google Translate-tjänsterna avsevärt tack vare introduktionen bakom kulisserna av tekniker för djupinlärning.





Så det är intressant att se hur andra företag tävlar för att komma ikapp. Idag är det tur till Baidu, ett sökföretag på internet som ibland beskrivs som den kinesiska motsvarigheten till Google. 2013 öppnade Baidu ett forskningslabb för artificiell intelligens i Silicon Valley, vilket ställde en intressant fråga: vad har det hänt?

Nu har Baidus lab för artificiell intelligens avslöjat sitt arbete med talsyntes. En av utmaningarna i talsyntes är att minska mängden finjusteringar som pågår bakom kulisserna. Baidus stora genombrott är att skapa en maskin för djupinlärning som till stor del tar bort den här typen av inblandning. Resultatet är ett text-till-tal-system som heter Deep Voice som kan lära sig prata på bara några timmar med liten eller ingen mänsklig störning.

Först lite bakgrund. Text-till-tal-system är bekanta i den moderna världen i navigeringsappar, talande klockor, telefonsvarare och så vidare. Traditionellt har dessa skapats genom att spela in en stor databas med tal från en enda individ och sedan kombinera yttrandena för att skapa nya fraser.



Problemet med dessa system är att det är svårt att byta till en ny högtalare eller ändra tyngdpunkten i sina ord utan att spela in en helt ny databas. Så datavetare har arbetat med ett annat tillvägagångssätt. Deras mål är att syntetisera tal i realtid från början när det behövs.

Förra året gjorde Googles DeepMind ett betydande genombrott på detta område. Den avslöjade ett neuralt nätverk som lär sig att tala genom att lyssna på ljudvågorna från verkligt tal samtidigt som man jämför detta med en transkription av texten. Efter träningen kunde den producera syntetiskt tal baserat på text den gavs. Google DeepMind kallade sitt system för WaveNet.

Baidus arbete är en förbättring av WaveNet, som fortfarande kräver en del finjusteringar under träningsprocessen. WaveNet är också beräkningskrävande, så mycket att det är oklart om det någonsin skulle kunna användas för att syntetisera tal i realtid i den verkliga världen.



Baidu säger att de har övervunnit dessa problem. Dess tillvägagångssätt är relativt enkelt. Den använder djupinlärningstekniker för att konvertera text till de minsta perceptuellt distinkta ljudenheterna, så kallade fenomen. Den använder sedan ett talsyntesnätverk för att återge dessa ljud. Den viktigaste skillnaden här är att varje steg i processen fungerar genom djupinlärning, så när de väl har tränats finns det lite behov av mänsklig finjustering.

Ta till exempel ordet hej. Baidus system måste först räkna ut fenomenets gränser på följande sätt: (tystnad HH), (HH, EH), (EH, L), (L, OW), (OW, tystnad). Den matar sedan in dessa i ett talsyntessystem, som uttalar ordet.

De enda variablerna som det nya systemet inte kontrollerar är påfrestningarna på fonem, deras varaktighet och ljudets naturliga frekvens. Detta gör det möjligt för Baidu att ändra talarens röst och den känsla som ordet förmedlar.



Allt detta är beräkningskrävande. Samplingsfrekvensen för realistiskt tal är i området 48 kilohertz. Så en dator har cirka 20 mikrosekunder på sig att generera varje prov. Eftersom processen att skapa detta ljud involverar flera lager måste vart och ett av dessa göra sitt jobb på 1,5 mikrosekunder. För att sätta detta i ett sammanhang kan det ta 0,1 mikrosekunder att komma åt ett värde som finns i huvudminnet på en CPU.

För att utföra slutledning i realtid måste vi vara mycket noga med att aldrig räkna om några resultat, lagra hela modellen i processorcachen (till skillnad från huvudminnet) och optimalt utnyttja de tillgängliga beräkningsenheterna, säger Baidu-forskarna.

Ändå säger de att talsyntes i realtid är möjlig med deras system och har testat det genom att crowdsourcing uppfattningar om det på Amazons Mechanical Turk. Detta innebar att ett stort antal lyssnare bedömde kvaliteten på ljudet samtidigt som de jämfördes med sanningsdata i form av en mänsklig originalinspelning.



Baidu säger att resultaten är av hög kvalitet. Vi optimerar slutledningar till hastigheter som är snabbare än i realtid, vilket visar att dessa tekniker kan användas för att generera ljud i realtid på ett strömmande sätt, säger de.

Men ännu viktigare är användbarheten av systemet, som snabbt kan tränas om på helt nya datamängder. Vårt system går att träna utan mänsklig inblandning, vilket dramatiskt förenklar processen att skapa text-till-tal-system, säger teamet.

Det är intressant arbete som bygger på Googles ansträngningar att göra text-till-tal-system betydligt bättre. Det är viktigt eftersom den decennier gamla drömmen för science fiction-författare är att kunna prata med datorer i realtid och för dem att svara tillbaka. Text-till-tal är en viktig del av det.

Naturligtvis är det osannolikt att Googles DeepMind (eller någon annan i världen av djupinlärning) har suttit stilla medan Baidu fulländar sitt syntetiska talsystem. Det kommer säkert bara att vara en tidsfråga innan vi ser vad de har hållit på med och hur det jämförs.

Ref: arxiv.org/abs/1702.07825 : Deep Voice: Neural text-till-tal i realtid

Dölj