Você está na página 1de 7

Universidade Federal de Minas Gerais

Programa de Ps Graduao em Engenharia Eltrica


Disciplina de Cincia e Tecnologia da Fala

Deteco de atividade de voz


Pedro Dias de Oliveira Carvalho

Resumo
A deteco de atividade de voz (VAD
voice activity detection) em sinais de
udio uma etapa importante no
processamento do udio em diversas
aplicaes, como reconhecimento de
locutor, converso de fala pra texto e
codificao do sinal de voz. Neste
trabalho foram anlisados, para
deteco de atividade de voz, os
mtodos de classificao Perceptron e
Multilayer Perceptron (MLP) com duas
diferentes formas de extrao de
caracterscas:
por
decomposio
wavelet e por anlise cepstral. O baixo
desempenho alcanado com Perceptron
indica que o problema no
linearmente separvel, considerando os
mtodos de extrao utilizados. J o
classificador MLP obteve resultados
semelhantes com ambas extraes,
alcanando acurcia maior que 80% na
maior parte dos testes realizados.
Introduo
Detectar os instantes em que h
atividade de voz permite que aplicaes
de voz possam processar apenas os
trechos de interesse, e com isso alcanar
maior eficincia de processamento,
menor consumo de recursos e maior
autonomia de bateria no caso de
aplicaes mveis. A utilizao de um

mdulo
VAD
pode
reduzir
drasticamente falsos positivos e falsos
negativos
dos
algoritmos
de
reconhecimento da fala [1].
A deteco de atividade de voz pode ser
modelada como um problema de
classificao, no qual quadros de udio
so classificados como quadros de voz
ou quadros de rudo (tudo que no
voz).
Encontra-se, na literatura, uma larga
variedade de tcnicas como soluo de
VAD.
Algumas
tcnicas
no
supervisionadas so baseadas em
energia [2], zero crossing rate [3],
periodicidade [4]. Tambm h tcnicas
supervisionadas como Support Vectors
Machine [5], Gaussian Mixture Models
[6], e Deep Neural Networks [7], que
so
geralmente
treinadas
com
caractersticas extradas com Melfrequency cepstral coefficients (MFCC),
Perceptual
Linear
Prediction
coefficients (PLP) [8] e decomposio
Wavelet [9].
Os mtodos de classificao avaliados
nesse trabalho foram: Perceptron
simples e Multilayer Peceptron. E a
extrao de caractersticas foi realizada
por decomposio Wavelet e Anlise
Cepstral.
Base de dados

Foram utilizadas, nesse trabalho, cinco


bases de dados, descritas as seguir. As
trs primeiras bases de dados utilizadas
nos experimentos tem como origem a
mesma gravao, que tem durao de
um minuto e 10 segundos e foi realizada
em estdio. A partir deste sinal de udio
original, foram gerados outros sinais
com adio de diferentes nveis de rudo
AWGN, resultando em trs bases com
as respectivas relaes sinal rudo
(Signal to Noise Ratio - SNR): 30 dB, 5
dB e -2 dB. Alm dessas trs bases,
foram gravadas mais outras duas com
um celular iPhone 5 em um restaurante,
com a presena de um rudo composto
por diversas pessoas conversando ao
mesmo tempo, e em uma rea de
servio com o rudo de uma mquina de
lavar centrifugando. Todas as cinco
bases foram gravadas com frequncia
de amostragem de 44100 Hz.
Para o treinamento e teste dos
classificadores, as bases foram rotuladas
manualmente por inspeo visual e
sonora com o auxlio do software
Audacity. Para facilitar o treinamento,
optou-se
por
construir
bases
balanceadas.
Extrao e seleo de caractersticas
Para extrao de caractersticas por
decomposio wavelet, tomou-se por
base o mtodo utilizado por Chen et al.
em [9], no qual so aplicadas 5 camadas
de transformada wavelet para cada
quadro de 25 ms. Esse valor se deve ao
fato de que o sinal de voz pode ser
considerado quase-estacionrio em
quadros de curta durao (entre 10 ms e
30 ms). Isso porque nesse intervalo a
configurao do trato vocal se mantem
quase constante [10]. So ento

definidas as caractersticas como sendo


a energia dos coeficientes wavelet das 5
faixas de detalhes (Ed1, Ed2, Ed3, Ed4,
Ed5), de uma faixa de aproximao
(Ea5), a energia mdia e varincia de
todas as faixas (Em e ). Portanto cada
amostra comtm 8 caractersticas. Neste
trabalho, optou-se por testar variaes a
partir do mtodo descrito, variando-se o
nmero de camadas wavelet e
selecionando diferentes combinaes de
faixas de energia. A eficincia dos
vrios conjuntos de caractersticas
foram avaliados com o mtodo Silhueta
atravs do software Matlab. O grfico
Silhueta
para
o
conjunto
de
caractersticas original proposto em [9]
est representado na Figura 1.

Figura 1: Anlise Silhueta para conjunto das 8


caractersticas propostas em [9] e aplicadas a base
1 (SNR = 30 dB).

O melhor resultado foi obtido com um


conjunto de 6 caractersticas sendo estas
as energias das 6 faixas de detalhes
resultante de uma transformada wavelet
de 6 camadas. Este o conjunto de
caractersticas escolhido para avaliar os
mtodos de classificao. O resultado
Silhueta pode ser conferido na Figura 2.

Classificadores
Os classificadores avaliados foram
Perceptron simples e MLP com
treinamento supervisionado. Para ambos
foram utilizadas as implementaes do
Matlab.
O Perceptron simples utilizado foi o
padro, proposto por Rosenblatt [11],
com deciso binria pela funo degrau.
Figura 2: Anlise Silhueta para o conjunto de 6
caractersticas obtido neste trabalho e aplicadas a
base 1 (SNR = 30 dB).

Para extrao de caractersticas por


anlise cepstral, decidiu-se utilizar os
prprios valores cepstrais como
caractersticas, pois a estratgia de
energia dos coeficientes no gerou bons
resultados. Tambm pelo mesmo
motivo, decidiu-se aumentar o tamanho
do quadro para 100 ms. Porm uma
quantidade
muito
grande
de
caractersticas
prejudicaria
o
treinamento
dos
classificadores.
Portanto para reduzir o nmero de
coeficientes
foi
aplicada
uma
reamostragem para 8 kHz resultando em
um total de 400 coeficientes. Para
reduzir ainda mais, procurou-se
inicialmente selecionar os coeficientes
correspondentes a faixa tpica para
frequncia fundamental da voz humana,
porm sem sucesso. O melhor conjunto
de
caractersticas
foi
obtido
selecionando-se os 26 primeiros
coeficientes, na regio de quefrncia
correspondente s caractersticas do
trato vocal. Para fins de comparao os
grficos silhueta para os dois mtodos
de extrao de caracterstica descritos
mostrado para as trs primeiras bases na
Figura 3 e para a quarta e quinta base na
Figura 4.

J para o MLP foram utilizadas funes


de ativao tangente hiperblica, com
backpropagation
e
gradiente
descendente. Vrias topologias foram
testadas com diferentes nmeros de
camadas escondidas e neurnios. A
configurao selecionada para a
extrao com wavelet foi de uma nica
camada escondida com cinco neurnios
e tambm uma nica camada oculta,
porm com 20 neurnios para a
extrao por anlise cepstral.
Experimentos e resultados
Foram realizados um total de 24
experimentos
sendo
que
cada
experimento foi repetido sete vezes para
clculo de valores mdios e desvio
padro. A base de dados foi divida em
50% para treinamento e 50% para
testes. Dos 24 experimentos, 12 foram
realizados
com
o
classificador
Perceptron e os outros 12 com MLP.
Dos 12 experimentos de cada
classificador, seis foram realizados com
extrao por decomposio wavelet e
seis por anlise cepstral. Estes seis
experimentos representam os testes
isolados para cada uma das cinco bases
mais um teste global com todas as cinco
bases
juntas.
Embora
alguns
experimentos tenham envolvido uma
nica base para teste, os treinamentos

de todos os experimentos foram


realizados com 50% de todas as bases
juntas. As mtricas de avaliao
utlizadas so as acurcias total,
verdadeiros positivos e verdadeiros
negativos. Os resultados para o
classificador
Perceptron
esto
representados na Tabela 1 e para o MLP
na Tabela 2.
Anlise dos resultados
O resultado obtido com as anlises
Silhueta mostram que a dificuldade de
deteco dos quadros de voz aumentam
para sinais com menor SNR, uma vez
que quanto mais valores positivos no
grfico Silhueta, mais fcil a tarefa de
classificao. E como era de se esperar,
a base do restaurante, com o rudo de
vrias pessoas conversando ao mesmo
tempo, mostrou-se mais difcil do que
os cenrios com rudo AWGN. O pior
grfico Silhueta obtido foi com o
cenrio da mquina de lavar, porm
anlises posteriores revelaram que a
razo do baixo valor Silhueta no se
deve ao rudo da mquina e sim a uma
rotulao de muitos fonemas fricativos
como sendo quadros de voz. Entre duas
diferentes formas de extrao, nota-se
que com a decomposio wavelet
obteve-se valores Silhuete melhor para
os trs cenrios com rudo AWGN,
porm paras as duas bases com rudos
reais, os resultados foram semelhantes.
O classificador Perceptron somente
alcanou acurcia acima de 80% nas
trs mtricas avaliadas do primeiro
cenrio, com rudo AWGN e SNR igual
a 30 dB. Os resultados dos demais
cenrios indicam que o problema, da
forma como foi modelado neste
trabalho, no linearmente separvel.

Os MLPs, por serem classificadores


no-lineares, foram capazes de alcanar
valores de acurcia acima de 80% para
quase todos os cenrios. O desempenho
geral dos MLPs foram semelhantes com
ambas extraes, por wavelet e anlise
cepstral. Porm nota-se uma menor
varincia dos resultados para o MLP
com extrao por decomposio
wavelet. importante ressaltar que a
MLP utilizada com a extrao por
wavelet menos complexa e portanto
possui menor custo computacional. Por
outro lado a MLP com a extrao por
anlise cepstral alcanou resultados de
acurcia mais equilibrados entre
verdadeiros positivos e verdadeiros
negativos para as bases com rudos
reais.
Concluso
Neste trabalho foram avaliados os
mtodos de extrao de caractersticas
por decomposio wavelet e por anlise
cepstral,
que
combinados
aos
classificadores Perceptron e MLP
resultam em quatro diferentes solues
avaliadas para o problema de VAD. As
duas solues com o classificador
Perceptron se mostraram ineficientes.
Enquanto as solues com MLP se
mostraram semelhantes, mas cada uma
com suas vantagens e desvantagens.
Mais importante do que as solues
propostas, esse trabalho revelou pontos
importantes a serem considerados na
elaborao de solues para VAD,
como a rotulao de fonemas fricativos
que deve ser evitada para uma melhor
eficincia
de
treinamento
dos
algortmos supervisionados, e tambm
que
a
regio
de
quefrncia
correspondente ao trato vocal possui

caractersticas mais relevantes ao


problema VAD do que aquelas
pertencentes regio da frequncia
fundamental.
Mais experimentos com diferentes
perfis de rudo devem ser testados para
verificar se o MLP mantm resultados
semelhantes como os encontrados nos
cenrios deste trabalho.

Referncias bibliogrficas

Transactions on Audio, Speech, and


Language Processing, vol. 14, n. 3, pp.
920-930, 2006.
[6] T. Ng, B. Zhang, L. Nguyen, S.
Matsoukas, X. Zhou, N. Mesgarani, K.
Vesel ` y, and P. Matejka, Developing
a speech activity detection system for
the DARPA RATS program., em Proc.
Interspeech, 2012.
[7] N. Ryant, M. Liberman, and J. Yuan,
Speech activity detection on YouTube
using deep neural networks, em Proc.
Interspeech, 2013.

[1] Kitaoka N., et al., Development of


VAD evaluation framework CENSREC1-C and investigation of relationship
between VAD and speech recognition
performance, em IEEE Workshop on
Automatic Speech Recognition &
Understanding, 2007.

[8] Sibo Tong, Nanxin Chen, Yanmin Qian,


Kai Yu, Evaluating vad for automatic
speech recognition, em International
Conference on Signal Processing
(ICSP), 2014.

[2] K. H. Woo, T. Y. Yang, K. J. Park, and C.


Lee, Robust voice activity detection
algorithm for estimating noise
spectrum, Electronics Letters, vol. 36,
pp. 180-181, 2000.

[9] B. Y. Chen, et al., Voice Activity


Detection Algorithm based on
Improved Radial Basis Function Neural
Network, International Journal of
Signal Processing, Image Processing
and Pattern Recognition, vol. 7, n. 5,
pp. 187-196, 2014.

[3] J. C. Junqua, B. Reaves, and B. Mak, A


study of endpoint detection
algorithms in adverse conditions:
incidence on a DTW and HMM
recognizer, em Second European
Conference on Speech Communication
and Technology, 1991.

[10] M.S. Ehsan, G. Kubin, Frame Change


Ratio: A Measure to Model Short-Time
Stationarity of Speech, em IEEE Innovations in Information
Technology, 2006.

[4] Tucker, R., Voice activity detection


using a periodicity measure, em IEEE
Proceedings I (Communications,
Speech and Vision), 1992.

[11] Rosenblatt, F., The Perceptron: A


Perceiving and Recognizing
Automaton, Report 85-60-1, Cornell
Aeronautical Laboratory, New York,
1957.

[5] N. Mesgarani, M. Slaney, and S. A.


Shamma, Discrimination of speech
from nonspeech based on multiscale
spectro-temporal modulations, IEEE

Figura 3: silhueta com wavelet (grficos superiores) e cepstro (grficos inferiores)

Figura 4: silhueta com wavelet (grficos superiores) e cepstro (grficos inferiores)

Tabela 1: acurcia do Perceptron para cada cenrio.

Wavelet

Cepstrum

Estudio(SNR=30db)
Estudio(SNR=5db)
Estudio(SNR=-2db)
Restaurante
Mquina de lavar
Todas as bases
Estudio(SNR=30db)
Estudio(SNR=5db)
Estudio(SNR=-2db)
Restaurante
Mquina de lavar
Todas as bases

verdadeiro positivo
mdia
varincia
100
0
76.9
0
24.2
0
100
0
100
0
80.5
0
86.4
0
100
0
100
0
100
0
100
0
97.3
0

Perceptron
verdadeiro negativo
mdia
varincia
94.6
0
100
0
100
0
0
0
0
0
59
0
95.7
0
57.8
0
0
0
0
0
0
0
22.6
0

total
mdia
varincia
97.3
0
88.5
0
62.3
0
52.4
0
48.5
0
69.8
0
91.1
0
57.8
0
48.9
0
53.8
0
46.3
0
59.6
0

Tabela 2: acurcia mdia de 7 execues do MLP para cada cenrio.

Wavelet

Cepstrum

Estudio(SNR=30db)
Estudio(SNR=5db)
Estudio(SNR=-2db)
Restaurante
Mquina de lavar
Todas as bases
Estudio(SNR=30db)
Estudio(SNR=5db)
Estudio(SNR=-2db)
Restaurante
Mquina de lavar
Todas as bases

verdadeiro positivo
mdia
desvio
99.2
0.8
96.8
1.5
85.5
3.7
65.9
4.6
92.4
2.1
85
2.4
87
8.1
89
6.9
89
4.5
85.2
2.5
85.7
13.8
87.9
6.5

MLP
verdadeiro negativo
mdia
desvio
86.3
4.6
100
0.0
98.9
2.9
89.2
4.2
53.2
12.1
87.8
5.0
95
3.9
88.8
3.4
80.1
13.9
81.5
12.5
79.9
15.3
86.8
3.6

total
mdia
92.7
98.4
92.2
77
72.2
86.4
91.1
88.9
84.5
83.5
82.6
87.3

desvio
2.1
0.8
1.6
1.2
6.3
3.5
3.8
2.5
7.0
4.5
6.5
4.2