Pratheeksha Nair
Pratheeksha Nair

Follow

24. jul, 2018 – 4 min read

Disclaimer 1 : Denne artikel er kun en introduktion til MFCC-funktioner og er beregnet til dem, der har brug for en nem og hurtig forståelse af samme. Detaljeret matematik og indviklede detaljer diskuteres ikke.

Da jeg aldrig selv har arbejdet inden for området for talebehandling, efterlod det mig, da jeg hørte ordet “MFCC” (som bruges ret ofte af ligesindede), med den utilstrækkelige forståelse, at det er navnet på en bestemt slags “funktion”, der udvindes fra lydsignaler (svarende til kanter, der udgør en slags funktion, der udvindes fra billeder).

Funktioner udtrukket af en CNN fra billeder

Figurer udtrukket fra talesignaler. Pænt hva’!

Det tog mig en hel del læsning fra flere kilder at forstå nybegynderens forståelse af, hvad MFCC-funktioner er. Så jeg besluttede mig for at hjælpe medmennesker i nød ved at samle de oplysninger, jeg indsamlede, på en letforståelig måde.

Lad os begynde med at uddybe akronymet MFCC – Mel Frequency Cepstral Co-efficients.

Har du nogensinde hørt ordet cepstral før? Sandsynligvis ikke. Det er spektralt med omvendt spec! Hvorfor dog? For en meget grundlæggende forståelse er cepstrum oplysninger om ændringshastigheden i spektrale bånd. I den konventionelle analyse af tidssignaler viser enhver periodisk komponent (f.eks. ekkoer) sig som skarpe toppe i det tilsvarende frekvensspektrum (dvs. Fourier-spektrum). Dette fås ved at anvende en Fouriertransformation på tidssignalet). Dette kan ses på følgende billede:

Når vi tager logaritmen af størrelsen af dette Fourier-spektrum og derefter igen tager spektret af denne logaritme ved en cosinus-transformation (jeg ved godt, det lyder kompliceret, men bær over med mig!), observerer vi et peak overalt, hvor der er et periodisk element i det oprindelige tidssignal. Da vi anvender en transformation på selve frekvensspektret, er det resulterende spektrum hverken i frekvensdomænet eller i tidsdomænet, og derfor besluttede Bogert et al. at kalde det for quefrency-domænet. Og dette spektrum af logaritmen af tidssignalets spektrum blev kaldt cepstrum (ta-da!).

Det følgende billede er et resumé af de ovenfor forklarede trin.

Cepstrum blev først indført for at karakterisere de seismiske ekkoer, der opstår som følge af jordskælv.

Pitch er en af karakteristika ved et talesignal og måles som signalets frekvens. Mel-skalaen er en skala, der relaterer den opfattede frekvens af en tone til den faktisk målte frekvens. Den skalerer frekvensen for i højere grad at matche det, som det menneskelige øre kan høre (mennesker er bedre til at identificere små ændringer i tale ved lavere frekvenser). Denne skala er blevet udledt af en række eksperimenter med mennesker. Lad mig give dig en intuitiv forklaring på, hvad mel-skalaen indfanger.

Det menneskelige høreområde er 20Hz til 20kHz. Forestil dig en melodi ved 300 Hz. Det ville lyde noget i retning af standardopkaldstonen på en fastnettelefon. Forestil dig nu en melodi ved 400 Hz (en lidt højere opkaldstone). Sammenlign nu afstanden mellem disse to, uanset hvordan den opfattes af din hjerne. Forestil dig nu et 900 Hz-signal (svarende til en mikrofonfeedbacklyd) og en 1kHz-lyd. Den opfattede afstand mellem disse to lyde kan synes større end de to første, selv om den faktiske forskel er den samme (100 Hz). Mel-skalaen forsøger at indfange sådanne forskelle. En frekvens målt i Hertz (f) kan omregnes til Mel-skalaen ved hjælp af følgende formel :

Alle lyde, der frembringes af mennesker, er bestemt af formen af deres stemmetrakt (herunder tunge, tænder osv.). Hvis denne form kan bestemmes korrekt, kan enhver lyd, der produceres, repræsenteres nøjagtigt. Indhyllingen af tidseffektspektret af talesignalet er repræsentativ for stemmetrakten, og MFCC (som ikke er andet end de koefficienter, der udgør Mel-frekvens cepstrummet) repræsenterer denne indhylling nøjagtigt. Følgende blokdiagram er en trinvis opsummering af, hvordan vi er kommet frem til MFCC:

Her henviser Filterbank til mel-filtrene (coverting til mel-skalaen) og Cepstralkoefficienter er intet andet end MFCC’er.

TL; DR – MFCC-elementer repræsenterer fonemer (særskilte lydenheder), da formen af stemmetrakten (som er ansvarlig for lydgenerering) er manifesteret i dem.

Disclaimer 2 : Alle billeder er fra Google images.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.