Extragere îmbunătățită a parametrilor caracteristicilor din semnalele vocale folosind algoritmul de învățare automată (1)
May 30, 2023
Abstract: Recunoașterea vorbirii se referă la capacitatea software-ului sau hardware-ului de a primi un semnal de vorbire, de a identifica caracteristicile vorbitorului în semnalul de vorbire și de a recunoaște difuzorul ulterior. În general, procesul de recunoaștere a vorbirii implică trei etape principale: procesarea acustică, extragerea caracteristicilor și clasificarea/recunoașterea. Scopul extragerii caracteristicilor este de a ilustra un semnal de vorbire folosind un număr predeterminat de componente ale semnalului. Acest lucru se datorează faptului că toate informațiile din semnalul acustic sunt excesiv de greoaie de manipulat, iar unele informații sunt irelevante în sarcina de identificare. Acest studiu propune o abordare bazată pe învățarea automată care efectuează extragerea parametrilor caracteristici din semnalele de vorbire pentru a îmbunătăți performanța aplicațiilor de recunoaștere a vorbirii în medii de orașe inteligente în timp real. Mai mult, principiul mapării unui bloc de memorie principală la cache este utilizat eficient pentru a reduce timpul de calcul. Dimensiunea blocului memoriei cache este un parametru care afectează puternic performanța cache. În special, implementarea unor astfel de procese în sisteme în timp real necesită o viteză mare de calcul. Viteza de procesare joacă un rol important în recunoașterea vorbirii în sistemele în timp real. Necesită utilizarea unor tehnologii moderne și algoritmi rapizi care cresc accelerația în extragerea parametrilor caracteristici din semnalele de vorbire. Problemele legate de overclock în timpul procesării digitale a semnalelor de vorbire nu au fost încă rezolvate complet. Rezultatele experimentale demonstrează că metoda propusă extrage cu succes caracteristicile semnalului și realizează performanțe de clasificare fără întreruperi în comparație cu alți algoritmi convenționali de recunoaștere a vorbirii.

Cistanche deserticola
Cuvinte cheie: recunoaștere a vorbirii; calcul paralel; calcul distribuit; procesor multicore; extragerea caracteristicilor; analiza spectrală
1. Introducere
Stabilirea abordărilor de comunicare între oameni și tehnologia computerelor este o sarcină critică în inteligența artificială modernă. Una dintre cele mai ușoare metode pentru utilizatori de a introduce informații este prin semnale vocale. Prin urmare, tehnologia de procesare a semnalului de vorbire și instrumentele sale au devenit o parte necesară a societății informaționale. Recunoașterea vorbirii este un aspect esențial de cercetare al procesării semnalului vorbirii și o tehnică vitală de interacțiune om-calculator. Semnalele de vorbire conțin informații semantice, personale și de mediu [1]. Abordarea generală a procesării semnalului de vorbire este utilizarea analizei pe termen scurt, în care semnalul este împărțit în ferestre de timp de o dimensiune fixă, presupunând că parametrii semnalului nu se modifică. O suprapunere este plasată între ferestre pentru a obține o reprezentare mai precisă a semnalului. Fiecărei ferestre sunt aplicați algoritmi de extracție a caracteristicilor, cum ar fi analiza spectrală și predicția liniară. Cu toate acestea, aceste procese ar trebui să ia în considerare și viteza și timpul.

Ginsengul din desert
Timpul este o preocupare semnificativă în mai multe domenii ale procesării semnalului în timp real. Raportul vitezei de procesare poate fi crescut prin utilizarea eficientă a resurselor procesorului și dezvoltarea unor algoritmi noi și rapidi pentru a reduce timpul de procesare digitală. Cu toate acestea, problemele de calcul de înaltă performanță nu au fost încă rezolvate în întregime [2]. Mai mult, s-au înregistrat progrese substanțiale în recunoașterea automată a vorbirii odată cu dezvoltarea hardware-ului și software-ului de procesare a semnalului digital. Cu toate acestea, în ciuda acestor progrese, mașinile nu pot egala performanța omologilor lor umani în ceea ce privește recunoașterea preciziei și vitezei, în special în recunoașterea vorbirii independentă de vorbitor. Astfel, o mare parte de cercetări care au fost efectuate asupra recunoașterii vorbirii s-au concentrat asupra problemelor de recunoaștere a vorbirii care sunt independente de vorbitor, datorită gamei largi de aplicații și limitărilor tehnicilor de recunoaștere a vorbirii disponibile [3].
Pe scurt, principalele contribuții ale studiului sunt următoarele:

ceai de Cistanche
Faceți clic aici pentru a vedea produsele din ceaiul Cistanche deserticola
【Cereți mai multe】 E-mail:cindy.xue@wecistanche.com / Whats App: 0086 18599088692 / Wechat: 18599088692
Procesul de identificare a unei persoane prin semnale de vorbire constă în mai multe etape. Printre aceștia, unii pași necesită mai mult timp de calcul. Aceasta este o analiză spectrală. Unul dintre parametrii care este deosebit de importanți în algoritmii de învățare automată este timpul de antrenament. În această lucrare, am constatat că procesul de extragere a caracteristicilor este important pentru identificarea semnalelor de vorbire. În plus, este nevoie de mult timp în învățarea automată. Se stabilește că procesul de analiză spectrală constă în operații independente, iar paralelizarea este posibilă.
Experimentele au arătat că transformările spectrale FFT și DCT dau rezultate bune în analiza spectrală. Procesul de analiză spectrală este valabil pentru fiecare segment al semnalului de vorbire. Acest lucru ne permite să distingem clar aceste caracteristici de semnalul de vorbire. Cu ajutorul instrumentelor OpenMP și TBB, a fost dezvoltat un algoritm de calcul paralel care a făcut posibilă accelerarea calculelor.
Mărimea segmentului este importantă atunci când se împarte un semnal de vorbire în segmente. În timpul experimentelor, s-a constatat că dimensiunea segmentului semnalului de vorbire depinde de memoria cache a procesorului central. În special, s-a descoperit că potrivirea segmentului cu dimensiunea memoriei cache în procesoarele multicore are un efect pozitiv asupra vitezei de calcul în învățarea automată.
O nouă metodă de implementare paralelă este propusă pentru transformările spectrale ale semnalelor pentru extragerea parametrilor caracteristici din semnalele de vorbire folosind un algoritm de învățare automată pe procesoare multicore care utilizează TBB și OpenMP.
De asemenea, s-a constatat că utilizarea eficientă a principiului mapării blocului de memorie principal la cache și dimensiunea blocului de memorie cache poate crește viteza de procesare.

Supliment Cistanche lângă mine-Îmbunătățirea memoriei
Restul acestei lucrări este organizat după cum urmează. Secțiunea 2 analizează studiile existente pentru extragerea proprietăților specifice semnalului de vorbire. Secțiunea 3 descrie pașii de extragere a caracteristicilor cu experimente. Secțiunea 4 prezintă algoritmul de calcul de înaltă performanță propus pentru extragerea parametrilor caracteristici din semnalele de vorbire în detaliu. Rezultatele experimentale bazate pe implementarea noastră sunt discutate în Secțiunea 5. Secțiunea 6 evidențiază limitările metodei propuse. În cele din urmă, Secțiunea 7 încheie studiul prin rezumarea constatărilor și notând direcțiile viitoare de cercetare.
2. Lucrări conexe
Metode noi, algoritmi și aplicații mai moderne sunt în prezent dezvoltate și îmbunătățite pentru segmentarea semnalelor de vorbire și calculul indicatorilor parametrici ai fragmentelor selectate, creând astfel o spectrogramă a semnalelor de vorbire folosind analiza spectrală [4–7]. Identificarea vorbitorului cu clipuri vocale diversificate de pe tot globul este o sarcină crucială și provocatoare, în special în extragerea de caracteristici viguroase și discriminatorii [8]. Un nou sistem de extracție a coeficienților Mel Frequency Cepstral (MFCC) care este mai rapid și mai eficient din punct de vedere energetic decât realizarea tradițională a MFCC a fost propus de Korkmaz și colab. [9]. În loc să folosească un filtru trece-înalt de pre-accentuare, au folosit un filtru trece-jos. Ei au implementat un filtru trece-bandă cu un filtru trece-înalt, deoarece este nevoie de pre-accentuare pentru a crește energia semnalului la frecvențe înalte. În lucrarea noastră anterioară [10], am prezentat o nouă metodă bazată pe MFCC pentru identificarea vorbitorului. În loc să folosim MFCC convenționale, folosim pixeli din spectrograma Mel ca set de caracteristici. Spectrograma a fost transformată într-o matrice 2-D pentru a crea un nou set de date. Pentru a identifica vorbitorul, mai mulți algoritmi de învățare au fost puși în practică cu o tehnică de validare încrucișată 10-fold. Cu ajutorul unui perceptron multistrat (MLP) cu o funcție de activare tanh, a fost obținută cea mai bună precizie de 90,2%.
Extragerea caracteristicilor este realizată prin schimbarea formei de undă a vorbirii într-o formă de reprezentare parametrică la o rată de date relativ mai mică pentru procesarea și analiza ulterioară [11–14]. Abordările de extracție a caracteristicilor produc de obicei un vector caracteristic multidimensional pentru fiecare semnal de vorbire. Extragerea caracteristicilor este cea mai relevantă parte a recunoașterii vorbitorului. Caracteristicile vorbirii au un rol vital în segregarea unui vorbitor de ceilalți. Extragerea caracteristicilor reduce amploarea semnalului de vorbire, fără a provoca vreo deteriorare a puterii semnalului de vorbire [15–17]. În [18], autorii au introdus o nouă abordare care exploatează reglarea fină a parametrilor de dimensiune și deplasare ai ferestrei de analiză spectrală utilizată pentru a calcula transformarea Fourier inițială de scurtă durată pentru a îmbunătăți performanța unei recunoașteri automate a vorbirii dependente de vorbitor. sistem (ASR). În absența medicilor, profanii pot folosi sisteme de asistență în decizie care au fost create folosind abordări de inteligență artificială. Detectarea precoce și neinvazivă a stării inimii poate fi realizată folosind semnale de fonocardiogramă (PCG) [19-21].
S-a demonstrat că rețelele neuronale convoluționale (CNN-uri) simulează cu succes localitatea structurală în spațiul caracteristicilor, precum și că folosesc gruparea într-o regiune de frecvență părtinitoare pentru a reduce variația translațională și pentru a ajusta pentru perturbări și modificări mici în spațiul caracteristic [22]. Mukhamadiyev și colab. a propus un model de recunoaștere a vorbirii cu model Markov ascuns de rețea neuronală profundă end-to-end și o rețea de atenție hibridă de clasificare temporală coecționistă (CTC) pentru limba uzbecă și dialectele acesteia. Abordarea propusă reduce timpul de antrenament și îmbunătățește acuratețea recunoașterii vorbirii prin utilizarea eficientă a funcției obiective CTC în antrenamentul modelului de atenție [23]. Extragerea și clasificarea caracteristicilor folosind un model de rețea neuronală convoluțională unidimensională (CNN), care împarte semnalele sonore ale inimii în normale și anormale, direct independent de o electrocardiogramă (ECG), a fost propusă în [24]. Ei susțin că acuratețea clasificării este mai mare în CNN 1D decât în CNN 2D pentru semnalele de sunet cardiac utilizate în acest studiu atunci când nucleul de convoluție este mai mic de 52, deoarece un nucleu de convoluție mare poate duce la complexitate computațională și consumă din ce în ce mai mult timp. . În [25], o rețea neuronală profundă a fost antrenată pentru a maximiza acuratețea posterioară a secvențelor de stări ale modelelor acustice referitoare la secvențele caracteristicilor vorbirii folosind baza de date TIMIT (TIMIT Acoustic-Phonetic Continuous Speech Corpus).
3. Preprocesare: Prezentare generală a materialului

Supliment Cistanche lângă mine-Îmbunătățirea memoriei
În acest scop, sunt indispensabile dezvoltarea algoritmilor rapidi pentru extragerea parametrilor caracteristici din semnalele de vorbire și reprezentările parametrice, extragerea de eșantioane utile și informative pentru procesare și dezvoltarea de programe pentru implementarea spectrogramelor segmentelor acustice selectate.
Sistemele de recunoaștere a vorbirii constau din două subsisteme principale:
Procesarea primară a semnalelor de vorbire (fonogramă);
Clasificarea simbolurilor acustice folosind un algoritm inteligent (spectrogramă).
Primul subsistem generează simboluri acustice ca un set de proprietăți acustice informative ale semnalelor și ale caracteristicilor semnalului. Al doilea subsistem convertește semnalul de vorbire într-o formă parametrică pe baza caracteristicilor acustice obținute. Procesarea semnalului vocal constă în următoarele etape:
Separarea limitelor semnalului de vorbire;
Filtrare digitală;
Segmentarea;
Aplicarea unei ferestre de netezire;
Transformarea spectrală și normalizarea frecvențelor spectrale.
Acești pași sunt utilizați pe scară largă pentru a extrage parametrii caracteristici din semnalele de vorbire, iar caracteristicile lor principale sunt luate în considerare în cele ce urmează.
3.1. Separarea limitelor
Extragerea doar a unor părți de vorbire din semnalul de intrare sau determinarea momentelor de început și de sfârșit ale unei propoziții într-un mediu zgomotos este o sarcină esențială în procesarea vorbirii. Următoarele proprietăți ale semnalului de vorbire sunt utilizate pentru a rezolva această problemă: energia pe termen scurt a semnalului de vorbire, numărul de puncte care se intersectează la zero, densitatea distribuției valorilor câmpului de tăcere în cadrul semnalului și entropia spectrală. Sistemele tradiționale de recunoaștere a vorbirii folosesc tehnici care se bazează pe energiile tranzitorii și spectrale ale unui semnal (de exemplu, detectarea activității vocale) pentru a determina limitele vorbirii de la semnalele de vorbire primite [26–28].
Parametrii principali ai semnalului de vorbire sunt energia pe termen scurt a semnalului de vorbire și numărul de puncte care trec prin zero. De regulă, parametrii unui semnal de vorbire se modifică rapid în timp; prin urmare, se obișnuiește să proceseze un semnal de vorbire în fragmente de 10 până la 30 ms în lungime, care nu se suprapun. Semnalul de vorbire este staționar în acest interval, iar zonele de tăcere din semnalul de vorbire sunt eliminate prin calcularea energiei tranzitorii. Algoritmul pentru rezolvarea acestei probleme este împărțit în N secvențe de 256 de valori energetice pe termen scurt ale următorului semnal vocal.
Calculul energiei fiecărui fragment prin împărțirea semnalului de vorbire este adecvat pentru calculul paralel și distribuit. Fiecare fragment este procesat independent. Dacă procesarea este aplicată într-un multiprocesor n-core, va fi posibilă calcularea energiei a n fragmente simultan. Prin urmare, este posibilă creșterea eficienței procesării paralele în această etapă [29–32].
3.2. Numărul de treceri cu zero
O trecere cu zero este un punct în care semnul unei funcții matematice se schimbă (de exemplu, de la pozitiv la negativ), care este reprezentat printr-o intersecție a axei (valoarea zero) în graficul funcției [33]. Frecvența de trecere cu zero într-un semnal poate fi cel mai simplu indicator al proprietăților sale spectrale. De exemplu, numărul de puncte care trec prin zero într-un semnal de vorbire poate fi determinat folosind următoarea ecuație:

Figura 1. Metoda de separare a vorbirii bazată pe analiza entropiei spectrale.
3.3. Filtrare digitală
Pe lângă un semnal tipic, util, sunt prezente diferite tipuri de zgomot. Deoarece zgomotul afectează negativ calitatea sistemelor de recunoaștere a vorbirii, tratarea zgomotului este o problemă presantă. Două tipuri de filtre digitale sunt utilizate pentru a reduce nivelurile de zgomot din sistem: un filtru de linie și un filtru inițial. Un filtru liniar poate fi considerat o combinație de filtre de joasă și înaltă frecvență, deoarece captează toate frecvențele joase și înalte. Filtrarea inițială este aplicată pentru a minimiza impactul perturbărilor locale asupra marcajelor caracteristice care sunt utilizate pentru identificarea ulterioară. Un semnal de vorbire trebuie să fie trecut printr-un filtru trece-jos pentru alinierea spectrală [35].
3.4. Segmentarea
Segmentarea este procesul de împărțire a unui semnal de vorbire în fragmente discrete, care nu se suprapun. Semnalul este de obicei împărțit în unități de vorbire, cum ar fi propoziții, cuvinte, silabe, foneme sau chiar unități fonetice mai mici. Segmentarea înregistrărilor care conțin enunțurile a numeroși vorbitori poate consta în atribuirea unor fragmente de enunțuri anumitor vorbitori. Termenul „stații de segment” este uneori folosit pentru a se referi la o divizare a semnalului de vorbire în cadre înainte de parametrizarea acestuia [36,37].
3.5. Transformare spectrală
Este necesar să se distingă principalele caracteristici ale semnalelor de vorbire care sunt utilizate în etapele ulterioare ale procesului de recunoaștere a vorbirii. Caracteristicile inițiale sunt determinate prin analiza proprietăților spectrale ale semnalelor de vorbire. Algoritmul rapid de transformare Fourier este utilizat în mod obișnuit pentru a obține frecvența spectrală a unui semnal de vorbire [38,39].
3.6. Normalizarea frecvențelor spectrale
Întregul proces de calcul în algoritmi inteligenți se bazează pe mutarea numerelor zecimale. Prin urmare, parametrii obiectelor care sunt clasificate folosind rețele neuronale sunt limitați la intervalul [{{0}}.0, 1.0]. Spectrul rezultat este normalizat între 0 și 1 pentru a aplica procesarea spectrală folosind rețeaua neuronală. Pentru a realiza acest lucru, fiecare componentă vectorială este împărțită în componentele sale maxime.
Metodele de procesare spectrală permit utilizarea tuturor eșantioanelor de date care sunt obținute din semnalul de vorbire. Multe semnale de vorbire au o structură de frecvență specifică și proprietăți spectrale. Metodele spectrale asigură procesarea de înaltă precizie a semnalelor de vorbire. Dezavantajele procesării spectrale includ flexibilitate scăzută a caracteristicilor locale ale semnalelor, lipsa dimensiunilor spectrale și costuri de calcul relativ mari.
Transformarea Fourier, analiza wavelet și mulți alți algoritmi sunt utilizați pe scară largă în procesarea spectrală a semnalelor de vorbire. Transformarea Fourier este folosită în multe domenii ale științei, inclusiv în procesarea vorbirii. În procesarea semnalului de vorbire, transformarea Fourier convertește semnalul din câmpul de timp în câmpul spectral ca componentă de frecvență [40].
În studiile anterioare, transformarea Fourier discretă (DFT), transformarea cosinus discretă (DCT), transformarea Fourier pe termen scurt și transformarea wavelet au fost aplicate pentru analiza spectrală. Aceste metode au fost folosite pentru a transforma fragmente ale unui semnal de vorbire în domeniul frecvenței și pentru a calcula spectrul. Pachetele TBB și OpenMP au fost folosite pentru a crea algoritmi paraleli pentru transformări spectrale. În aceste metode, comanda împarte semnalul în cadre; de exemplu, N=16, 32, … sau 4096 pentru fiecare cadru [4]. Dimensiunea fiecărui cadru creat este egală cu dimensiunea blocului memoriei cache, deoarece memoria cache este un factor care afectează eficiența procesării paralele. Rezultatele accelerației sunt prezentate în Figura 2.

Figura 2. Rezultatele accelerației pentru (a) procesoare cu patru și (b) cu opt nuclee.
Pentru implementarea software a algoritmilor de procesare paralelă, procesarea în serie și paralelă au fost efectuate pe procesoare cu patru și opt nuclee, care au fost aplicate folosind computere personale și servere, așa cum sunt enumerate în Tabelul 1.
Tabelul 1. Caracteristicile procesoarelor Intel.

Caracteristica principală a algoritmului DCT este periodicitatea. Un avantaj al DCT este că tinde să concentreze cea mai mare parte a energiei semnalului pe un număr mic de factori. Următoarele ecuații oferă elementele matricei coeficienților:


unde L(k) este valoarea DCT, k este un indice de coeficienți, x(n) reprezintă elementele de date și N este dimensiunea cadrului.
Parametrii de analiză Fourier sunt baza metodelor care sunt utilizate pentru a genera vectori caracteristici în majoritatea sistemelor de recunoaștere a vorbirii în procesarea digitală a semnalelor de vorbire în domeniul spectral. Coeficienții cepstrali de frecvență Mel (MFCCs) [41] și tehnicile de codare predictivă liniară (LPC) [42,43] sunt utilizate în analiza Fourier pentru a genera imagini spectrograme din semnalele de vorbire. Spectrele care sunt obținute folosind analiza Fourier oferă informații concise și precise cu privire la un semnal de vorbire, așa cum este ilustrat în Figura 3.

Figura 3. DFT: (a) modificarea intervalului de frecvență în domeniul timpului și (b) spectrogramă.
Semnale bidimensionale (2D) au fost utilizate pentru analiza spectrală în experimente. Caracteristicile analizei spectrale 2D care sunt utilizate în algoritmii de procesare a imaginilor în paralel sunt potrivite pentru procesarea paralelă în procesoarele multicore [38]. În special, vectorii și matricele de transformare directă și inversă au dimensiuni binare, iar compatibilitatea acestei arhitecturi de procesor multicore poate crește efectiv viteza de calcul. Prin urmare, am aplicat procesare secvențială și paralelă pe un computer cu diferite caracteristici de procesor pentru implementarea hardware a algoritmilor care au fost utilizați pentru procesarea semnalelor 2D (Tabelul 2)
Tabelul 2. Caracteristici de aplicare a procesoarelor Intel.

Întregul semnal 2D a fost împărțit în fragmente identice de dimensiuni diferite la fiecare etapă [44]. Valorile fragmentelor selectate au fost între rezoluțiile pixelilor de 16 × 16 și 1024 × 1024. Viteza algoritmului DCT paralel folosind pachetul OpenMP în comparație cu cea a algoritmului secvenţial este prezentată în Figura 4 Utilizarea unei analize spectrale 2D paralele algoritmul pe procesoarele multicore produce un rezultat de overclocking care este aproape de numărul de nuclee.

Figura 4. Rezultatele accelerației pentru analiza spectrală paralelă 2D.






