1) O documento descreve um modelo robusto de detecção de atividade de voz baseado em distribuições de Weibull e mistura gaussiana para reconhecimento de fala.
2) O modelo usa cadeias de Markov escondidas e inferência bayesiana para classificar quadros de áudio como voz ou ruído.
3) Os resultados do modelo proposto são validados por meio de comparação com algoritmos de referência analisando métricas como taxa de falsos alarmes e erros.
2. Agenda
• Etapas
• Contexto,
• Problema,
• Solução Macro
• Idéias
• Cadeias de Markov
• Inferência Bayesiana
• Distribuições de Weibull e GDM
• Etapas II
• Solução,
• Validação,
• Empacotamento,
• Manutenção
3. Contexto
• Pesquisa em:
• Processamento Digital de Sinais.
• Sub-Área: Sistemas de Reconhecimento de Fala, Detecção de Atividade de
Voz
• Modelos:
• Dinâmicos Discretos
• Modelos Probabilísticos: LRT e Inferências Bayesianas
• Distribuições de V.A. de Mistura Gaussiana e de Weibull
• Cadeias de Markov (Semi)Escondidas (HMM e HSMM)
• Autores: Yuan Liang, Xianglong Liu, Mi Zhou, Yihua Lou, Baosong Shan.
Beihang University; Beijing, China. Conferência: IEEE, 2010 International
Conference on Signal Processing Systems (ICSPS)
* Fator de Impacto (FI): 0.445 / 1.185
IEEE SIGNAL PROC LET / MAG
Fonte do Fator de Impacto: http://www.qmc.ufsc.br/qmcweb/tools/impacto/index.html
5. Detecção de Voz ( VD ou VAD)
• A voz é o meio mais natural de comunicação do Homem. Por
meio dela, várias características de uma pessoa podem ser
determinadas (sexo, estado emocional, de saúde, região (sotaque),
etc) Joseana Fechine
• A Identificação da atividade de Voz (Voice Active Detection) é muito
importante em SRF:
• Evitar, por exemplo, o processamento de silêncio ou ruído
• Aumentar a Utilização de um canal de dados (uso da banda)
filtrando o fluxo de dados, etc
• Curiosidade
• 60% de uma conversa é de períodos de silêncio
6. Problema de Negócio
SRF perdem sua acurácia de forma significativa
quando lidam com o aumento do nível de ruído
ambiental
As perdas financeiras, por meio de fraudes eletrônicas,
somaram prejuízos da ordem de R$ 600 milhões e
aumentaram 36% no primeiro semestre de 2011
Fonte : http://www.febraban.org.br/Noticias1.asp?id_texto=1321 em 19/08/2011
7. Problema Técnico
A abrupta diferença entre as condições de treinamento em SRF e as
condições de testes provocam um profundo impacto na acurácia e é a
barreira da operação destes sistemas em ambientes ruidosos Ramírez
• Detecção de “Voz
• Modelagem sem acurácia para ruídos
• As suposições ignoram efeitos do
ambiente operacional das aplicações
Fonte da figura: RAMÍREZ et al
8. Sinal de voz
• Seja o processo de amostragem na figura,
S(t) é o valor da amplitude de S no tempo t
= Amostragem do som
contínuo em valores
discretos ( Si ) em
intervalos regulares de
tempo.
Fonte da figura: http://upload.wikimedia.org/wikipedia/commons/5/50/Signal_Sampling.png
9. Quadro de voz
• Seja um quadro denotado por x, que se quer
identificar sobre se o mesmo tem ruído.
• Para efeito classificatório, as seguintes hipóteses são
consideradas.
• H0: x = ñ onde ñ é presença de ruído (non-speech)
• H1: x=ñ+v ñ + s é presença de ruído e voz (speech)
* Um quadro é uma região de tempo
com duração de, por exemplo, 10 ms
Fonte da figura: http://static.hsw.com.br/gif/speech-recognition-sample.gif
10. Classificação Probabilística
• Avaliar a probabilidade a posteriori de cada classe
P(Hi | x) e escolha a classe com maior P(Hi | x)
onde Hi é a hipótese que leva a classe i. i=1(voz)| 0(ruído)
• Para um problema com duas classes.
Se P(H1 | x) > P (H0 | x) ! Escolher H1
senão Escolher H0 EQ. 1
• Para o SRF proposto, o desafio consistiu em:
1. Desenvolver um Modelo SRF Robusto e
2. Comparar desempenho com modelos de referência em VD
11. SRF Robusto (R_VAD)
• Sejam c locutores {L1, L2, ..., Lc}, que gravaram
e elocuções {V1, V2, ..., Ve}
Onde cada locutor g gravou t segundos de áudio Se(t).
Com g pertence a {1,2, ..., c} , t pertence a {2 <= t <= 3}
c = 6 (destes, 3 H e 3 M) e e=30 neste artigo.
• Calcular as taxas médias (PC e PE) após adicionar Ruído de
quatro naturezas e com quatro níveis de ruído (SNR) nas
Vozes gravadas.
• Onde Naturezas R:
• Bable (Multidão), Car (Carro), Street (Rua) e Train (Trem)
• Níveis SNR: 0 dB (clean), 5 dB, 10 dB, 15 dB
Fonte da figura: RAMÍREZ et al
12. Solução do Modelo
• Trazendo a inferência Bayesiana e integrando as duas hipóteses,
tem-se:
EQ. 2
• De uma amostra x(n) ou S(t), podem ser vistos na figura os
instantes de voz detectados regiões retangulares em VAD(l)
Fonte da figura: RAMÍREZ et al
13. Solução do Modelo
• Seja a função de Verossimilhança LRT(t) da equação 3.
! Ela associa uma Cadeia de Markov, ! ,para modelar os estados da amostra nos
quais se tem o histórico conhecido (ruído marcado observado).
EQ. 3
14. Variáveis Principais
Item Descrição Tipo
Fração de quadros de false missed (falso erro) PC ou Pc Dependente
Fração de quadros false alarmed (falso alarmado) PE ou Pe Dependente
Verossimilhança (likelihood ratio test) LRT(t) Dependente*
Probabilidade de se encontrar no quadro um Ruído (Noise) P(H0) Dependente*
Probabilidade de se encontrar no quadro a Voz (Speech) P(H1) Dependente*
Variável de avanço para Ruído e Voz "i (Hi) Dependente*
Limiar de Decisão Independente**
#
Cadeia de Markov Escondida Independente
!
Quadro de fala contendo voz ativa ( speech ) 1 ou ñ + s Dependente
Quadro com ruído (não-voz ou non-speech ou noise) 0 ou ñ Dependente
Tempo t ou n Independente
Quadro i Independente
Vetor do quadro (frame) xi Independente
Estado no tempo t S(t) Independente
Vetor de características X(l) Independente
15. Solução Macro
• Métricas
• PC (false alarmed): É a fração do total de quadros de voz que foram
classificados como ruído indevidamente (tornaram-se ruído ).
• PE (false error ou acurácia): É a fração do total de quadros de ruído
que foram classificados como voz indevidamente.
• Seja a classificação de 10 quadros
Deseja-se
! PC Evitar perda (drop) de
informação útil (speech)
" PE Modelo é mais acurado.
Para o cálculo das taxas, tem-se:
1. No quadro 3, houve outro erro! V foi classificada como quadro não-ativo (N). Assim:
PC = |V!N| / |V| = 2 / 6 = 0,33 = 33% C.Q.D.
2. No quadro 9, houve um erro! Ruído (Noise) foi classificado como quadro ativo (Voz); Assim:
PE = |N!V| / |N| = 3 / 4 = 0,75 = 75 % C.Q.D.
16. Idéias
Como Calcular?
• LRT(t) para todas as elocuções?
• Probabilidade com Cadeia de Markov
• Dá cadeia não lembrar?! Sic! =D
17. Modelos de Markov (MM)
• São Processos Estocásticos com estrutura e
propriedade de Markov (1967)
• Estrutura: Máquinas de Estado Finito (autômatos)
com pesos (probabilidades) associados aos arcos.
• Propriedade: O próximo estado depende
exclusivamente do estado atual.
0.7 0.4
Hot Cold 0.6
0.3
18. Formalismo de MM
• É uma sequência de variáveis aleatórias X1, X2, X3, …
com a propriedade de Markov.
Os possíveis valores de Xi formam um conjunto Q chamado espaço de estados da
cadeia. Neste artigo, Q=(H0,H1)
• Representação: !=(A,B,$). onde
• Q: Número de estados. Ex. Q=2 " estados H0 e H1
• A: Matriz de transição de estados.
aij = Prob( q j em t+1| qi em t)
• B={bj (k)}, 1<=j<=Q e 1<=k<=M:
Matriz de função de probabilidade de observações. Indica a probabilidade de
observar, em dado estado qi , a saída do modelo através do vetor aleatório
com fdp bj .
• $ = $ i = P(qi | t=1), 1<=j<=Q , vetor de probabilidade do estado
inicial, indica a probabilidade de iniciar o processo no estado qi para
t=1.
19. Modelos de Markov Escondidos (HMM)
• É uma cadeia de Markov em que alguns estados não podem ser vistos
diretamente. Apenas observados por meio de eventos que emitem uma
probabilidade conhecida.
• Probabilidade de ocorrer uma dada sequência é : P(O1,O2,…, OT) = $ i A B
Fonte da figura: http://static.hsw.com.br/gif/speech-recognition-sample.gif
20. Algoritmo Forward
• No contexto de HMM, é usado para se calcular o estado de Crença : a
probabilidade do estado qi , no tempo t, dado que se conhece a evidência
histórica;
• Denota-se
P ( qi|O1T )
• Está relacionado com
o algoritmo
de Viterbi
21. Distribuição GDM
• Conhecida também por Mistura de Gaussianas.
• Segundo o artigo,
• GDM é usada para aproximar a função densidade de
probabilidade (PDF) que modela a distribuição
condicional B por conta do uso dos coeficientes
MFCC.
22. Distribuição Weibull (WD)
• Modela usualmente o tempo de vida (lifetime) de componentes
• Parâmetros de forma e escala: ki e wi
• Usada para modelar a Distribuição de Duração D, do estado,
de !
Antes: Distribuição Geométrica. Suposição de probabilidade para mesmo estado é constante (HMM). Autor alega que não se aplica.
No presente: Usa Distribuição WD para modelar tanto o ruído quanto a voz. Obs. Modelo usa HSMM!
No Futuro: Usará Distribuição WD para modelar tanto o ruído e Distribuição Gama para voz!
• Onde d está relacionada com o tempo em que o
sinal permanece no mesmo estado. k0
23. Suposições
1. LRT é sempre associado a modelo HMM ! com dois estados (H1
e H0).
1. Em !, os vetores O1t
2. Marcação (TAG) de quadros Manual
• Distribuição de WD para ruído e voz
24. Solução de LRT em (t)
1. Definir os parâmetros em
submodelos (!, GDM e WD); t=0; magic=15
2. Estimar B e $ por meio de TIMIT base
via técnica MLE (maximum likelihood estimator)
3. Reduzir ruído da elocução e (Wiener Filter);
4. Extrair vetores MFCC da elocução; t++
5. Se t<magic " Vá para 3
1. Se t=magic "
Calcular LRT(t) para primeiros magic quadros;
Definir LRT(magic) =0,2;
Definir # = findMean(LRT(p)), onde p < magic
2. Se magic < t <= T "Vá para 6
6. GERAR LRT (T) sobre vetores
1. Calcular "t(i), em tempo t e
recalcular LRT(t)
2. Se LRT(t)> # " TAG 1
c.c. " TAG 0
7. Atualizar parâmetros de
B e atualizar #(t); e++; Vá para 3
25. Validação
Implementação do modelo e comparação.
Análises realizadas pela Média entre os
resultados (proposed X outros algoritmos)
Dados não-normais (PC)
• Configuração
• Configurar e executar o sistema (treiná-lo com base de
vozes)
• Classificar 30 elocuções de voz e calcular as métricas
26. Identificação de Voz
• Entre os tempos a e b, foi possível
capturar a presença e ausência de
voz conforme (cor verde)
• Entre os tempos b e c, por alguns
instantes em b+k, com k << (c-b), o
sistema falha na identificação de Voz
quando o limiar de detecção fica
abaixo da curva LRT.
• Entre c e d, o sistema identifica
corretamente a presença da atividade
de voz
28. Questões 1 e 2
Q1 - O modelo endereça o problema original? Ou seja, é possível responder a
pergunta original com o modelo desenvolvido?
Sim com ressalvas!
Q2 - O modelo pode ser utilizado na prática? Ou seja, é factível obter os dados
necessários para a utilização do modelo?
Sim parcialmente. Alguns dados até podem ser obtidos e alguns
chutados. Porém a calibragem do modelo depende de diversos fatores
assumidos! Para citar alguns: as estatísticas externas para início de sua
execução (base de voz TIMIT), a marcação do ruído na configuração
de Markov para treinamento, os parâmetros das distribuições, etc.
29. Q3 – Acurácia do modelo
• Os resultados obtidos caíram perto dos valores dos algoritmos de
Referência.
• No entanto, algumas médias usadas para comparação nem foram as
melhores medidas (por conta da Não-Normalidade) enfraquecendo
a validação estatística e validade (de construção e externa).
• Além disso, agruparam-se na média fatores bem distantes foram
misturados (tipos e níveis de ruído).
Será que um não interfere nos outros? Análise de Sensibilidade?
31. Q4 – Suposições aplicáveis?
Várias suposições mereceriam ser validadas
• Um filtro redutor de ruído foi aplicado as elocuções antes da
extração dos coeficientes MFCC e certamente influenciou
resultados em favor da técnica proposta.
! Robustez desejada foi por construção?!
Novo artigo mostrou métricas com e sem o filtro.
• Não ficou claro sobre:
• Como ou em que ordem ocorreram a estimativa e atualização dos
parâmetros durante o treinamento e testes do SRF
• Tamanho ou características da base de treinamento (TMIT)
32. Empacotamento
• Nada foi informado
sobre modelo
executável.
Encontrado um
pacote em R que
pode ser útil!
! Library HMM
“Dado Desonesto”
33. Manutenção do Modelo
• Citados como 'próximos' trabalhos:
• Realizar a fase Extração de Características para o ruído de forma robusta;
• Identificar de limiares ótimos.
! Os autores (80%) aprimoraram este artigo em 2011, Elsevier Journal Pattern Recognition Letters *
• A base do novo artigo é a mesma das idéias apresentadas aqui.
• Novidades:
• Duas novas bases e maiores (NOIZEUS e AURORA) foram usadas para treinamento e
levantamento de parâmetros;
• Maior conjunto de testes e comparações estatísticas gráficas;
• Duas novas formas foram usadas para cálculo do LRT;
• Modelou de forma diferente um HSMM (WD para ruído e dist. Gama para voz);
• Comparação com mais algoritmos; dentre outras.
* An improved noise-robust voice activity detector based on hidden semi-Markov models
Yuan Liang, Xianglong Liu, Yihua Lou and Baosong Shan
State Key Laboratory of Software Development Environment, Beihang University, China
School of Mathematics and Systems Science, Beihang University, China
Received 20 May 2010. Communicated by P. Franti. Available online 21 February 2011.
34. Referências
• DIAS, D. Desenvolvimento de um IP Core de Pré- • JURAFSKY, Daniel; MARTIN, James H.; Speech and
processamento Digital de Sinais de Voz para Aplicação Language Processing: An introduction to natural language
em Sistema Embutidos. 108 f. Dissertação (Mestrado processing, computational linguistics, and speech recognition.
em Ciência da Computação) – Universidade Federal de Copyright (c) 2007, Draft of September 19, 2007
C a m p i n a G r a n d e, C a m p i n a G r a n d e. 2 0 0 6 .
• NASCIMENTO NETA, Maria de Lourdes do. Proposta de
• FECHINE, J. M. ; LELIS, F. G. ; TEIXEIRA, A. ; Disser tação de Mestrado. Módulo IP-core para
ESPÍNOLA, S. B. ; SPVR: An IP core for Real-Time Reconhecimento, Independente de Locutor e em Tempo
Speaker Verification. In: IP-SOC, 2010, Grenoble. IP Real, de Dígitos Isolados Falados em Português do Brasil.
Based SoC Design Conference & Exhibition, 2010 Proposta de Dissertação (Mestrado em Ciência da
C o m p u t a ç ã o ) C O P I N – U F C G. Ju l . 2 0 0 9 .
• FECHINE, J. M. Reconhecimento automático de
identidade vocal utilizando modelagem híbrida: • RAMÍREZ, J.; J. M. Górriz and J. C. Segura University of
Paramétrica e Estatística. 212 f. Tese (Doutorado em Granada - Spain Voice Activity Detection. Fundamentals and
Engenharia Elétrica) – Universidade Federal de Speech Recognition System Robustness. Source: Robust Speech
Campina G r a n d e, C a m p i n a G r a n d e. 2 0 0 0 . Recognition and Understanding, Book edited by: Michael
Grimm and Kristian Kroschel, ISBN 987-3-90213-08-0, pp.
4 6 0 , I - Te c h , V i e n n a , A u s t r i a , J u n e 2 0 0
• FECHINE, J. M. ; LELIS, F. G. ; TEIXEIRA, A. ;
ESPÍNOLA, S. B. ; SPVR: An IP core for Real-Time
Speaker Verification. In: IP-SOC, 2010, Grenoble. IP • “The R project for statistical computing.” [Online].
Based SoC Design Conference & Exhibition, 2010 Available:< http://www.r- project.org>. Acessado em
09/04/2011
• M A R K O V C H A I N M O D E L S : <
h t t p : / / w w w. c o m p . l e e d s . a c . u k / r o g e r /
HiddenMarkovModels/html_dev/main.html> .
A c e s s a d o e m 0 9 / 0 8 / 2 0 1 1 .