articolo - Parlaritaliano

Transcript

articolo - Parlaritaliano
UN SISTEMA DI SPEAKER IDENTIFICATION PER LA
SEGMENTAZIONE AUTOMATICA DI VIDEOGIORNALI
Gennaro Percannella1, Carlo Sansone2, Domenico Sorrentino1, Mario Vento1
1
Dipartimento di Ingegneria dell’Informazione e Ingegneria Elettrica, Università degli Studi di
Salerno; 2Dipartimento di Informatica e Sistemistica, Università di Napoli “Federico II”
{pergen, sorrentino, mvento}@unisa.it, [email protected]
1. SOMMARIO
In questo articolo è presentato un sistema di Speaker Identification che opera in tempo
reale. Il presente lavoro è inquadrato nel framework più generale della segmentazione ed
indicizzazione automatica dei videogiornali. In tale contesto, l’impiego dell’informazione
audio può permettere una migliore individuazione delle notizie, rispetto al caso in cui si
faccia uso della sola informazione video.
Il sistema proposto effettua una classificazione di tipo text-independent ed estrae feature
sia nel dominio del tempo che in quello della frequenza. La classificazione è effettuata
attraverso una rete neurale basata sull’architettura Learning Vector Quantization.
Per la sperimentazione del sistema è stato realizzato un dataset costituito da segmenti
audio estratti dalle registrazione di dodici telegiornali nazionali, in cui sono presenti dieci
differenti anchor di entrambi i sessi. Le acquisizioni dell’audio di ogni singolo presentatore
sono effettuate in edizioni diverse dello stesso notiziario, supponendo che le caratteristiche
principali dell’audio non cambiano nelle varie registrazioni.
Le prove sperimentali hanno dimostrato che un uso combinato delle feature estratte,
consente di ottenere prestazioni superiori rispetto all’uso di un singolo set di feature.
Il sistema raggiunge un tasso di riconoscimento superiore al 99% quando la lunghezza
della finestra di analisi, in cui avviene la classificazione, dura almeno 1,5 secondi.
2. INTRODUZIONE
Negli ultimi anni, la comunità scientifica internazionale ha compiuto numerosi sforzi
per affrontare il problema della segmentazione video e le relative problematiche più
generali di indicizzazione e recupero dei contenuti.
La maggior parte degli approcci alla segmentazione video si basa sull’estrazione di
informazioni dai frame del filmato, usando tecniche di Image Analysis. Tuttavia, già da
qualche anno, è stato dimostrato il proficuo utilizzo dell’audio come sorgente alternativa di
informazione per la segmentazione (De Santo et al., 2002), (Foote, 1999), (Nam et al.,
1997), (Saraceno et al., 1997), (Tsekeridou et al., 1998).
L’utilizzo dell’audio per la segmentazione di filmati è particolarmente interessante in
alcuni domini applicativi, p.e. nell’ambito della gestione di videogiornali, dove, grazie alla
traccia audio, è possibile ottenere una corretta segmentazione anche quando l’informazione
relativa al video non è adeguata. Si consideri il caso in cui le immagini di un servizio
esterno di un telegiornale scorrono sullo schermo, mentre la voce di un anchorman, non
visibile allo spettatore, le sta commentando. In tal caso, l’analisi basata solamente su
contenuti visuali fallisce perchè non considera il servizio come un unico segmento.
Un sistema che esamina la traccia audio, invece, identificando la voce dello speaker,
può essere un utile strumento per aiutare a segmentare opportunamente il video anche in
questi casi particolari.
741
A partire da queste considerazioni, in questo articolo proponiamo un sistema di Speaker
Identification che può essere usato per segmentare automaticamente le notizie di un
videogiornale in tempo reale.
L’obiettivo di un sistema di Speaker Identification è determinare quale, tra un gruppo di
voci conosciute, è quella più corrispondente ai campioni di voce presenti all’ingresso del
sistema. Se non si richiede che lo speaker per essere identificato pronunci uno specifico set
di frasi, come nel nostro caso, il sistema è detto text-independent.
Il problema dello Speaker Identification è stato affrontato nella letteratura attraverso la
rappresentazione del segnale audio con differenti feature, calcolate o nel dominio del tempo
o in quello della frequenza. Diversi sono i paradigmi di classificazione sviluppati
principalmente basati su reti neurali e modelli gaussiani.
L’articolo di Reynolds (Reynolds et al., 1995) illustra uno dei sistemi di Speaker
Identification più frequentemente adottati in letteratura. Esso usa feature valutate nel
dominio della frequenza, attraverso l’utilizzo dei cosiddetti coefficienti Mel-scale cepstral
(Picone, 1993). Il sistema ottiene un tasso di riconoscimento superiore al 94% sul KING
Speech Corpus database (Godfrey et al., 1994).
Vari autori hanno proposto feature calcolate a partire dal modello descritto da Reynolds.
In particolare, in Murthy et al. (1999), viene applicata una trasformazione alle feature
Mel-scale cepstral in modo da compensare le componenti di rumore del canale audio. Le
feature sono poi calcolate nel dominio trasformato e usate per la classificazione. I risultati
sul database NIST pervengono ad un 90% del tasso di riconoscimento.
In Torres et al. (2000), gli autori, usando anche le wavelet, propongono un’architettura
del sistema di Speaker Identification con un classificatore neurale per ogni speaker.
L’identificazione è ottenuta attraverso l’assegnazione dei campioni di ingresso allo speaker
relativo al classificatore che esibisce l’uscita più alta.
In Seo et al. (2001), invece, viene utilizzata un’analisi delle componenti principali sulle
feature proposte da Reynolds et al. (2005), in modo da ridurre la complessità
computazionale della fase di classificazione. In tal modo gli autori ottengono un tasso di
riconoscimento del 90% su un set di 50 speakers.
Altri autori hanno proposto l’uso di feature acustiche ottenibili direttamente nel dominio
del tempo, come i toni, il tasso di parole, la qualità di voce e la variazione temporale del
segnale audio. Questo è il caso di Miyajima (Miyajima et al., 2001), dove viene proposto
un sistema dedicato a riconoscere solo segmenti voiced della traccia audio, e di Wang
(Wang et al., 2002), in cui gli autori provano ad identificare gli speaker del KING Speech
Corpus. In entrambi i casi, per la fase di classificazione sono sviluppati modelli di misture
di gaussiane.
Il sistema che noi proponiamo, parte da quello proposto da Reynolds, ed utilizza feature
calcolate sia nel dominio del tempo che in quello della frequenza.
In particolare, in questo lavoro viene descritta un’analisi sperimentale considerando tre
set di feature, tre diversi training set, e due classificatori neurali. L’uso combinato di tutte le
feature proposte migliora significativamente le performance del sistema rispetto all’uso di
un singolo set di feature; questo accade per ogni dimensione del training set e per ogni
classificatore.
Su un database di 10 speaker, il sistema da noi proposto è capace di raggiungere un
tasso di riconoscimento del 99%, con un tempo di classificazione di circa 1,5 secondi. Tale
durata è sicuramente ragionevole per considerare l’applicativo operante in tempo reale.
Il resto dell’articolo è suddiviso come segue: nel prossimo paragrafo mostriamo
l’architettura del sistema proposto, insieme con una descrizione delle feature usate. Il
742
paragrafo 4 descrive, invece, il database audio utilizzato, mentre nel paragrafo 5 riportiamo
l’analisi sperimentale del sistema presentato, con i relativi risultati. Prima delle conclusioni,
nella quinta sessione, illustriamo l’applicativo di Speaker Identification realizzato.
3. ARCHITETTURA DEL SISTEMA
Nella figura 1 è mostrata l’architettura del sistema, i cui blocchi principali sono illustrati
dettagliatamente nei sottoparagrafi che seguono.
Sorgente
Buffer
Preprocessing
Audio
Normalizzazione
Feature
Estrazione
Feature
Speaker
Identificato
Classificazione
Figura 1: Diagramma a blocchi dell’architettura del sistema
3.1 Preprocessing
A monte della pre-elaborazione, il segnale di ingresso viene acquisito e
successivamente caricato in un buffer circolare da cui sono prelevati i campioni audio per
l’estrazione e la classificazione delle feature.
I campioni bufferizzati alimentano il modulo di pre-processing, il cui scopo è preparare
i dati per il calcolo delle feature, attraverso operazioni di frame blocking, pre-enfasi e di
finestratura del segnale.
La fase di frame-blocking consiste nel suddividere i campioni audio in frame di
lunghezza fissata. Per attenuare le transizioni tra frame e fornire una migliore correlazione
tra le parti successive del segnale acquisito, viene permessa una sovrapposizione tra frame
adiacenti. La lunghezza del frame audio è fissata a circa 23 msec ed il tasso di
campionamento è di 44.1 KHz (1024 campioni per ogni frame). Questa scelta tiene conto
del fatto che alcuni studi (Picone, 1993) suggeriscono che la maggior parte delle feature
adottate forniscono informazioni più significative se calcolate su un intervallo maggiore di
20 msec; inoltre la FFT, usata durante l’estrazione delle feature, richiede che il numero di
campioni sia una potenza di 2. La sovrapposizione tra i due frame adiacenti è stata fissata a
due terzi della lunghezza del frame.
Per ridurre significativamente le componenti in alta frequenza dovute al rumore
ambientale, a valle dell’operazione di Frame-blocking, i campioni audio sono posti in un
filtro di pre-enfasi.
Successivamente, una finestra di Hamming applicata al segnale riduce ancora di più gli
effetti di bordo, dando più peso ai campioni che sono nella parte centrale del frame.
743
3.2 Estrazione delle feature
Dopo la fase di preprocessing, i frame sono pronti per essere sottoposti al processo di
estrazione delle feature. Abbiamo adottato tre differenti set di feature, legati
rispettivamente alle tre seguenti tipologie di coefficienti: Linear Predictive Cepstral
Coefficients (LPCC), Post Filter Linear (PF) e Mel Filtered Cepstral Coefficients (MFCC).
In tutto sono calcolati complessivamente 14 coefficienti per ogni set di feature.
Le feature LPCC sono ottenute attraverso un analisi di predizione lineare usando il
metodo di Levinson-Durbin (Hayers, 1996).
Anche le feature PF (Mammone at al., 1996) sono estratte attraverso un’analisi di
predizione lineare. Esse sono usate in modo da migliorare le performance in bassa
frequenza del sistema ottenibili con le sole LPCC.
Le feature MFCC (Reynolds et al., 1995) sono invece calcolate nel dominio della
frequenza, attraverso la trasformata inversa di Fourier applicata al logaritmo dello spettro
del segnale di ingresso.
Prima di passare alla fase di classificazione, i vettori delle feature sono stati
normalizzati in modo da aumentare il loro potere discriminante ed evitare che il
classificatore si polarizzi solo su di un sottoinsieme di feature.
3.3 Classificazione
La classificazione è ottenuta attraverso una rete neurale LVQ addestrata con un
algoritmo FSCL (Ahalt et al., 1990) che consente un uso ottimale dei neuroni in quanto ne
evita il loro sottoutilizzo.
Abbiamo testato due reti neurali, aventi rispettivamente 50 e 100 prototipi per classe.
Il sistema è “closed set”, ovvero lo speaker da identificare fa parte di un insieme finito
di persone noto a priori. E’ relativamente semplice aggiungere al sistema un opzione di
rigetto (Cordella et al., 1998), per trattare meglio i casi in cui il segnale di ingresso non
appartiene a nessuno degli speaker presenti nell’insieme di addestramento.
La classificazione, però, non viene effettuata sulla base dell’analisi di un solo frame alla
volta: se così fosse, l’identificazione dello speaker sarebbe di certo poco affidabile in
quanto molto sensibile ai silenzi o ai segmenti unvoiced che possono durare più di 23 msec.
Il nostro sistema, invece, combina le evidenze osservate su di una finestra di analisi
costituita da una sequenza di frame (lo shot audio) dopodiché decide per lo speaker più
occorrente sulla base di un criterio di votazione a maggioranza.
Questo approccio ci permette di superare il problema dei segmenti unvoiced (Murthy et
al., 1999).
4. IL DATABASE
I database standard più comunemente utilizzati nell’ambito della Speaker Identification
non fanno riferimento ai videogiornali. E’ questo il caso del già citato KING Corpus
(Godfrey et al., 1994) che, invece, è costituito da registrazioni telefoniche.
Dal momento che il nostro scopo è quello di utilizzare il sistema proposto nel contesto
della segmentazione automatica dei videogiornali, abbiamo costruito un database
prelevando segmenti audio da dodici differenti telegiornali italiani, considerando 10
differenti speaker, 5 di sesso maschile e 5 di sesso femminile.
Abbiamo assunto che le caratteristiche del segnale audio di un dato speaker rimangono
le stesse, anche se i suoi campioni audio sono estratti da videogiornali registrati in giorni
differenti.
744
Ogni segmento audio nel database ha una durata di 15 secondi. Sono stati estratti 250
segmenti per ogni speaker, dunque la durata complessiva del dataset è di circa 1h e 2 min.
Con questo database, abbiamo costituito tre training set (TRS) di dimensione diversa,
con segmenti audio di durata multipla di 15 sec. Ciò è stato fatto per poter valutare le
prestazioni del sistema al variare della dimensione dei dati necessari all’addestramento.
Le durate delle porzioni audio dei tre TRS sono rispettivamente di 15, 30 e 45 secondi.
La dimensione delle clip che costituiscono il test set (TS) è stata fissata a 30 sec.
5. LA SPERIMENTAZIONE
Come è stato brevemente accennato nel paragrafo introduttivo, la sperimentazione è
stata effettuata addestrando due reti neurali LVQ, con 50 e 100 prototipi per classe,
considerando tre differenti insiemi di feature: un set con sole feature MFCC, un altro con
sole LPCC e infine un set contenente le feature MFCC, LPCC e PF contemporaneamente.
Per poter scegliere la configurazione del sistema che meglio soddisfi il vincolo di tempo
reale, è stata valutata la bontà della risposta del classificatore al variare della durata degli
shot.
I risultati ottenuti sul TS considerando il solo set di feature MFCC, sono riportati in
figura 2.
Figura 2: Tasso di errore sul TS in funzione della durata degli shot (in sec) per i tre TRS
con dimensione differente. Solo le feature MFCC sono utilizzate. a) Risultati con 50
prototipi. b) Risultati con 100 prototipi.
Come si può notare, in generale, il tasso di errore non è particolarmente soddisfacente:
l’uso di 100 prototipi per classe dà migliori risultati rispetto all’uso di 50 prototipi per
classe. Abbastanza sorprendentemente, i risultati sul TS sono migliori se è usato un TRS
745
più piccolo. Ciò si spiega considerando il fatto che, all’aumentare della dimensione del
TRS, può comparire il fenomeno dell’overfitting dei dati.
Valutando le prestazioni del sistema con le sole feature LPCC (si veda figura 3),
abbiamo osservato un comportamento del sistema leggermente differente. Il tasso di
riconoscimento è più alto rispetto al caso precedente e le performance del sistema
migliorano passando da un TRS di 15 sec ad un TRS di 30 sec. Tuttavia il fenomeno
dell’overfitting rimane anche in questo caso, infatti le prestazioni con un TRS di 45 sec
sono sempre peggiori rispetto alle performance del sistema con un TRS di 30 sec.
Figura 3: Tasso di errore su TS in funzione della durata degli shot (in sec) per i tre TRS con
dimensione differente. Solo le feature LPCC sono utilizzate.a) Risultati con 50 prototipi. b)
Risultati con 100 prototipi.
Quanto visto finora ci ha incoraggiato ad utilizzare, in modo combinato, le feature
MFCC ed LPCC, aggiungendo a queste ultime le feature PF per migliorare la risposta del
sistema in bassa frequenza.
Aumentando lo spazio delle feature, il fenomeno dell’overfitting scompare e migliorano
le performance del riconoscimento del sistema. Ciò è confermato attraverso i risultati
mostrati in figura 4.
Le prestazioni ottenute, con l’uso combinato di feature, sono veramente interessanti: si
ottiene un tasso di riconoscimento superiore al 99% quando la lunghezza dello shot audio
diventa maggiore di 1.5 secondi.
Si può inoltre osservare che le performance raggiunte dal sistema non cambiano molto
addestrando il classificatore con il TRS costituito da segmenti di 45 sec. Inoltre, anche le
prestazioni ottenute usando la rete LVQ configurata con 50 prototipi sono abbastanza
vicine a quelle della rete rappresentata con 100 prototipi.
746
Figura 4: Tasso di errore su TS in funzione della durata degli shot (in sec) per i tre TRS con
dimensione differente. Sono utilizzate le feature MFCC, LPCC e PF. a) Risultati con 50
prototipi. b) Risultati con 100 prototipi.
6. L’APPLICATIVO DI SPEAKER IDENTIFICATION
A partire dai risultati e dalle osservazioni fatte nei paragrafi precedenti, è stato costruito
un applicativo di Speaker Identification che opera in tempo reale.
L’applicativo utilizza la rete LVQ addestrata utilizzando 50 prototipi per classe sul TRS
costituito da segmenti di 30 sec.
Le figure 5 e 6 mostrano alcune istantanee del modulo di Speaker Identification
realizzato. Il sistema mette a disposizione la possibilità di scegliere la durata dello shot
usato per riconoscere lo speaker da identificare. Inoltre è capace di stimare l’affidabilità di
ogni classificazione ottenuta.
Infatti, per ogni campione l’affidabilità R viene calcolata come segue:
R = 100 * (1-N2/N1).
dove N1 è il numero dei vettori di feature attribuiti allo speaker più probabile e N2 è il
numero dei vettori di feature attribuiti al secondo più probabile.
Il grado di affidabilità R varia tra 0 e 100 e solo se risulta maggiore o uguale di 50 il
campione audio classificato è considerato affidabile (si veda la figura 6).
Per testare la validità dell’applicativo, è stato realizzato un video di 2 minuti e 30
secondi mettendo insieme 5 videogiornali ciascuno di 30 sec. Ogni videogiornale è
presentato da un diverso speaker, ovviamente appartenente al set sul quale lo speaker è
stato addestrato. Settando la lunghezza dello shot ad 1 secondo, il sistema ottiene un tasso
747
di riconoscimento del 96,46%. D’altra parte, se noi consideriamo solo le classificazioni
affidabili, il riconoscimento raggiunge il 99.79%.
Figura 5: Un’istantanea dell’applicativo di Speaker Identification. Identificazione di un
anchor di RAI 1.
Figura 6: Un’istantanea dell’applicativo di Speaker Identification. Affidabilità della
classificazione.
748
7. CONCLUSIONI
In questo articolo abbiamo presentato un sistema di Speaker Identification che opera in
tempo reale ed usa feature estratte sia dal dominio del tempo, sia da quello della frequenza.
In fase di classificazione attraverso un criterio di votazione a maggioranza viene scelto lo
speaker più occorrente su di uno shot audio, in tal modo il sistema è più robusto alla
presenza di silenzi e segmenti unvoiced.
La sperimentazione su di un database di segmenti audio estratti da notiziari, dimostrano
l’efficacia del sistema nell’identificazione degli speaker in tempo reale.
Tale sistema può essere di grande aiuto per l’implementazione di un apparato che usa
l’informazione relativa alla traccia audio per la segmentazione automatica di uno stream
video.
8. BIBLIOGRAFIA
Ahalt, S. C.; Krishnamurthy, A. K.; Chen, P.; Melton, D. E., 1990. Competitive Learning
Algorithms for Vector Quantization. Neural Networks, 3, 277-290.
Cordella, L. P.; Sansone, C.; Tortorella, F.; Vento, M.; De Stefano, C., 1998. Neural
Network Classification Reliability: Problems and Applications. Image Processing and
Pattern Recognition, 5, 161-200.
De Santo, M.; Percannella, G.; Sansone, C.; Vento, M., 2002. Cooperating Experts for
Soundtrack Analysis of MPEG Movies. Information Fusion, 3, 3, 225-236.
Foote, J., 1999. An Overview of Audio Information Retrieval. Association for Computing
Machinery Multimedia Systems, 7, 1, 2-10.
Godfrey, J.; Graff, D.; Martin, A.; 1994. Public databases for speaker recognition and
verification. In Proceedings of the ESCA Workshop Automatic Speaker Recognition,
Identification, Verification, 39-42.
Hayers, M. H., 1996. Statistical Digital Signal Processing and Modeling. John Wiley &
Sons Inc.
Mammone, R.; Zhang, X.; Ramachandran, R., 1996. Robust speaker recognition: a featurebased approach. Institute of Electrical and Electronics Engineers Transaction on Signal
Processing Magazine, 13, 58-71.
Miyajima, C.; Hattori, Y.; Tokuda, K.; Masuko, T.; Kobayashi, T.; Kitamura, T., 2001.
Speaker Identification using Gaussian mixture models based on multi-space probability
distribution. In Proceedings. of International Conference on Acoustic, Speech and Signal
Processing, 1, 433-436.
Murthy, H. A.; Beaufays, F.; Heck, L. P.; Weintraub, M., 1999. Robust text-independent
Speaker Identification over telephone channels. Institute of Electrical and Electronics
Engineers Transaction on Speech and Audio Processing, 7, 5 , 554-568.
Nam, J.; Cetin, E.; Tewfik, A. H., 1997. Speaker Identification and Video Analysis for
Hierarchical Video Shot Classification. In Proceedings of International Conference on
Image Processing, 2, 550-553.
Picone, J., 1993. Signal Modelling Techniques in Speech Recognition. In Proceedings of
the Institute of Electrical and Electronics Engineers 1993, 81, 9, 1215-1247.
749
Reynolds, D. A.; Rose, R. C., 1995. Robust text-independent Speaker Identification using
Gaussian Mixture speaker models. Institute of Electrical and Electronics Engineers
Transaction on Speech and Audio Processing, 3, 1, 72-83.
Saraceno, C.; Leonardi, R., 1997. Audio as a Support to Scene Change Detection and
Characterization of Video Sequences. In Proceedings of International Conference on
Acoustic, Speech and Signal Processing, 4, 2597-2600.
Torres, H. M.; Rufiner, H., 2000. Automatic Speaker Identification by means of Mel
cepstrum, wavelets and wavelet packets. In Proceedings. of International Conference on
Engineering in Medicine and Biology, 2, 978-981.
Tsekeridou, S.; Pitas, I., 1998. Speaker Dependent Video Indexing Based on Audio-Visual
Interaction. In Proceedings of International Conference Image Processing, 1, 358-362.
Seo, C.; Lee, K. Y.; Lee, J., 2001. GMM based on local PCA for Speaker Identification.
Electronics Letters , 37, 24, 1486-1488.
Wang, L.; Chen, K.; Chi, H., 2002. Capture interspeaker information with a neural network
for Speaker Identification. Institute of Electrical and Electronics Engineers Transactions
on Neural Networks, 13, 2, 436-445.
750