El meu blog :)

Wednesday, October 18, 2006

El meu projecte: "HMM-based speech synthesis"

Bé, doncs. Ja que el motiu "oficial" que m'ha portat a Mons és fer-hi el meu projecte final de carrera, trobo just dedicar un post a explicar una mica a què em dedico aquí.

M'he decidit a fer el post després d'adonar-me que no tinc gaire, per no dir gens, d'idea de què s'han dedicat a fer els meus amics que han marxat fora, telequilment parlant. Intentaré fer una explicació assequible a tots els públics i sense fer servir gaire vocabulari tècnic.

Per resumir-ho en una frase, treballaré per fer un sintetitzador de veu en francès. A partir d'aquí, us poso una mica en context i us explico:

Un sintetitzador permet generar una senyal acústica, de veu, a partir d'un text escrit. Com es fa? Bé, el procés consta de dues parts. Primer, s'ha d'entrenar el sistema. Això vol dir, donar-li molts fitxers d'audio amb frases gravades acompanyats de fitxers de text amb la transcripció fonètica del que s'ha gravat i demés informació. Així, durant hores, es deixa que el PC vagi fent estadístiques de manera que "aprengui" quins són els paràmetres de la senyal de veu que corresponen a cada fonema, tenint en compte molts factors, com ara quins fonemes té al costat, si la síl·laba és accentuada o no, la categoria gramatical de la paraula en que es troba, etc.

Una vegada el sistema està entrenat, ja se li pot entrar un fitxer de text a sintetitzar. Aquest, primer, haurà de ser convertit en una llista de fonemes (simplificant molt) i el programa, gràcies a la informació que ha rebut durant l'entrenament, sabrà decidir segons on està col·locat cada fonema, quins són els paràmetres de la veu que li corresponen i així podrà generar la senyal d'àudio de sortida.

La part complicada és aquesta última, saber trobar el bon camí que uneix el teu fonema a una correcta realització sonora d'aquest, de manera que la frase, a part d'intel·ligible sigui pronunciada amb naturalitat i amb l'entonació correcta.

Últimament, s'ha començat a utilitzar una tècnica nova per sintetizar veu, que consisteix en utilitzar Models Ocults de Markov (HMM) (perdoneu, és l'únic tecnicisme), que fins ara es feien servir només pel reconeixement de veu. S'ha desenvolupat ja un sintetitzador basat en HMMs, HTS, però està fet només per llengua anglesa i japonesa.

I aquí és quan entro jo. El que he de fer és entendre com funciona el codi del programa HTS per poder-hi fer les modificacions necessàries perquè sintetitzi veu en francès, a partir d'un corpus de frases franceses que m'han proporcionat.

No és fàcil, encara estic lluny de veure la llum al final del túnel. De moment, llegeixo. Em documento de mil coses que necessito saber, siguin llibres sobre síntesi de veu, com tutorials per aprendre les comandes de Linux... perquè sí, inevitablement he hagut de rendir-me a l'evidència. Quan vas pel món i necessites l'ordinador per fer alguna cosa més que xatejar i escriure mails, t'adones que acabes necessitant Linux. Ara és quan m'arrepenteixo d'haver ignorat el pingüino durant tota la carrera.

El que té de bo i de dolent el projecte és que yo me lo guiso, yo me lo como. Ni equip de treball ni res. Si d'aquí 6 mesos hi ha un sintetizador de veu basat en HMMs en francès, l'hauré fet jo (bé, amb l'inestimable ajuda d'en Laurent, un company que està fent la tesi i que m'ho explica tot). I si no n'hi ha... doncs hauran d'esperar-se al proper estudiant que vagi a fer-hi el projecte.

1 Comments:

Anonymous Anonymous said...

Bon post, ha estat entès per un matemàtic completament ignorant de telecos :p
M'agrada molt mirar el blog encara q no escrigui gaires comentaris eh! Ja veig q va tot molt bé, disfruta!!! :)

6:38 PM  

Post a Comment

<< Home