Teza doctorat (pdf) - Universitatea Tehnică

Teza doctorat (pdf) - Universitatea Tehnică Teza doctorat (pdf) - Universitatea Tehnică

users.utcluj.ro
from users.utcluj.ro More from this publisher
15.06.2013 Views

Cost 180 Cap. 6. Metode de sinteză de voce 6.3.2.4. Calculul costurilor şi măsurile distanţelor dintre unităţi [Mob00] Există două metode pentru calculul costurilor (Target Cost Tij , respectiv Concatenation i k C ij ) 1 ( ) din graful stărilor: metoda de căutare în spaţiul stărilor ( Weight Space Search) şi metoda de grupare a unităţilor în funcţie de context (Context Clustering). 6.3.2.4.1. Metoda de căutare în spaţiul stărilor (Weight Space Search) Această metodă calculează spaţiul total de ponderi (costuri) din graf prin intermediul unei abordări de tip analiză-sinteză. Astfel, se iau diferite texte de intrare care se sintetizează prin toate posibilităţile de combinare a unităţilor din baza de date. Apoi textul se rosteşte propriu-zis de către un vorbitor uman şi apoi se calculează distanţele dintre rostirea sintetizată şi rostirea naturală. Distanţele calculate în interiorul unităţilor dau costul unităţii (Target Cost), iar distanţele calculate în vecinătatea punctelor de concatenare dau costurile de tranziţie (Concatenation Cost). Pentru calculul distanţelor se poate folosi distanţa euclidiană cepstrală, calculată pe baza parametrilor de semnal ai unităţilor acustice. i ( c ') D i c i 2 (6.18) unde: - D este distanţa euclidiană cepstrală; - Ci, respectiv Ci’ sunt coeficienţii cepstrali ai segmentelor acustice comparate. Pe lângă distanţele cepstrale se pot folosi diferenţe perceptuale între semnalul sintetizat şi rostirea naturală. Se pot calcula şi predictorii perceptuali care să cuantifice calitatea rostirii sintetizate prin concatenarea a două unităţi. Metoda de căutare în spaţiul stărilor este o metodă care dă rezultate bune, dar are dezavantajul că necesită un număr mare de rostiri pentru calculul ponderilor. Metoda pe care o vom prezenta în paragraful următor nu necesită rostiri suplimentare pentru determinarea acestor ponderi, folosind distanţe bazate pe similarităţi acustice. 6.3.2.4.2. Metoda de grupare a unităţilor în funcţie de context (Context Clustering) Metoda aceasta se bazează pe construirea unor arbori de decizie (decision tree clustering) care grupează în clase de echivalenţă toate apariţiile fonematice din baza de date. O clasă de echivalenţă conţine toate apariţiile unei foneme din baza de date care se referă la acelaşi context lexical. În exemplul următor, pentru fonema « a », celor trei contexte lexicale diferite le sunt asociate trei clase de echivalenţă, fiecare clasă conţinând costuri asociate fiecărei apariţii ale fonemei în contextul respectiv din baza de date : [a] : Clasa 1. « masă » : Ctx=[ms] ; Costuri: [T11, CC11], ..., [T1n , CC1n]; Clasa 1. « casă » : Ctx=[cs] ; Costuri: [T21, CC21], ..., [T2n , CC2n]; Clasa 2. « fată » : Ctx=[ft] ; Costuri: [T31, CC31], ..., [T3n , CC3n]; . . . . .

181 Cap. 6. Metode de sinteză de voce În exemplul de mai sus, parametrul Ctx indică apariţia contextuală a fonemei, Tij este costul unităţii ( Target Cost), CCij este costul de concatenare ( Concatenation Cost), aici fiind luate în considerare ponderile asociate contextului stânga, respectiv dreapta al fonemei. Arborele de decizie asociat acestui exemplu cu trei clase de echivalenţă este dat în figura 6.10: Figura 6.10. Arborele de decizie pentru fonema “a” În interiorul clasei de echivalenţă pentru o anumită fonemă, costurile se păstrează ca nişte măsuri de similaritate acustică. Astfel, pentru costul unităţii Target Cost se calculează o distanţă spectrală a segmentului faţă de un segment de referinţă ales din interiorul clasei, iar pentru costul de concatenare Concatenation Cost - o distanţă spectrală calculată în punctele de concatenare, relativă la acelaşi segment de referinţă. Dacă în cadrul unui cuvânt de sintetizat, pentru o anumită fonemă nu se găseşte o clasă de echivalenţă corespunzătoare contextului dorit, se va folosi aceeaşi fonemă dar dintr-o altă clasă de echivalenţă (dintr-un alt context), iar costurile se vor interpola pe baza ponderilor existente. La fel se va proceda şi în cazul în care nu este disponibilă o fonemă cu caracteristicile prozodice de tipul dorit. Selecţia unităţilor de concatenat se face pe baza arborilor de decizie fonematici, folosind costurile de unitate şi de concatenare pentru fonemele componente. Funcţiile de cost TC (Target Cost) şi CC (Concatenation Cost) sunt minimizate folosind un algoritm de programare dinamică. Secvenţa de foneme care minimizează costul global pe toată propoziţia va fi secvenţa optimă de concatenat. T11, CC11 Avantajul metodei Context Clustering este acela că baza de date cu unităţile acustice e organizată off-line, reducându-se astfel timpul de calcul al sintezei. a Ctx=[ms] Ctx=[cs] Ctx=[ft] T1n , CC1n T21, CC21 T2n , CC2n T31, CC31 T3n , CC3n

181<br />

Cap. 6. Metode de sinteză de voce<br />

În exemplul de mai sus, parametrul Ctx indică apariţia contextuală a fonemei, Tij este<br />

costul unităţii ( Target Cost), CCij este costul de concatenare ( Concatenation Cost), aici fiind<br />

luate în considerare ponderile asociate contextului stânga, respectiv dreapta al fonemei. Arborele<br />

de decizie asociat acestui exemplu cu trei clase de echivalenţă este dat în figura 6.10:<br />

Figura 6.10. Arborele de decizie pentru fonema “a”<br />

În interiorul clasei de echivalenţă pentru o anumită fonemă, costurile se păstrează ca nişte<br />

măsuri de similaritate acustică. Astfel, pentru costul unităţii Target Cost se calculează o distanţă<br />

spectrală a segmentului faţă de un segment de referinţă ales din interiorul clasei, iar pentru costul<br />

de concatenare Concatenation Cost - o distanţă spectrală calculată în punctele de concatenare,<br />

relativă la acelaşi segment de referinţă.<br />

Dacă în cadrul unui cuvânt de sintetizat, pentru o anumită fonemă nu se găseşte o clasă de<br />

echivalenţă corespunzătoare contextului dorit, se va folosi aceeaşi fonemă dar dintr-o altă clasă<br />

de echivalenţă (dintr-un alt context), iar costurile se vor interpola pe baza ponderilor existente.<br />

La fel se va proceda şi în cazul în care nu este disponibilă o fonemă cu caracteristicile prozodice<br />

de tipul dorit.<br />

Selecţia unităţilor de concatenat se face pe baza arborilor de decizie fonematici, folosind<br />

costurile de unitate şi de concatenare pentru fonemele componente. Funcţiile de cost TC (Target<br />

Cost) şi CC (Concatenation Cost) sunt minimizate folosind un algoritm de programare dinamică.<br />

Secvenţa de foneme care minimizează costul global pe toată propoziţia va fi secvenţa optimă de<br />

concatenat.<br />

T11, CC11<br />

Avantajul metodei Context Clustering este acela că baza de date cu unităţile acustice e<br />

organizată off-line, reducându-se astfel timpul de calcul al sintezei.<br />

a<br />

Ctx=[ms] Ctx=[cs] Ctx=[ft]<br />

T1n , CC1n<br />

T21, CC21<br />

T2n , CC2n<br />

T31, CC31<br />

T3n , CC3n

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!