Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação *...

48
Junho 2011 Um Sistema de Reconhecimento de Comandos de Voz Utilizando a Rede Neural ELM Davyd Bandeira de Melo 1

Transcript of Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação *...

Page 1: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

1

Junho 2011

Um Sistema de Reconhecimento de Comandos de Voz Utilizando

a Rede Neural ELM

Davyd Bandeira de Melo

Page 2: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

2

Sumário*Aplicações do Processamento Digital de Voz

*Motivação

*Arquitetura de um Sistema de Reconhecimento de Voz*Aquisição de Dados

*Pré-processamento

*Sistema de Recorte

*Representação do Sinal de Voz

*Reconhecimento de padrões* Tipos de problemas de interesse

*Memória Associativa Linear Ótima (OLAM)

*Máquinas de Aprendizagem Extrema (ELM)

*SRCV – Sistema de Reconhecimento de Comandos de Voz

*Simulações

*Conclusões

*Perspectivas Futuras

Page 3: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

3

Aplicações do Processamento Digital de Voz

Técnicas de Processamento Digital da Voz

Transmissão Digital e

ArmazenamentoSíntese de Voz Reconhecimento

de VozIdentificação de

ElocutoresRealce da

Qualidade da Voz Acessibilidade

Page 4: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

4

Motivação*Interação homem-máquina em sistemas multimídias em alta*Maior naturalidade na comunicação com sistemas computacionais

*Mobilidade do usuário melhorada através da interface de voz

*Aplicações em Robótica Móvel

*Acessibilidade

Page 5: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

5

Arquitetura de um Sistema de Reconhecimento de Voz

Estágios constituintes de um sistema de reconhecimento de voz

Page 6: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

6

Aquisição de Dados*Responsável por capturar, amostrar e digitalizar as

elocuções

*O sinal capturado constitui de:*Períodos de silêncio

*Períodos relevantes do sinal de voz

*Ruído de fundo*Ex: Ar condicionado, chuva, imperfeições do equipamento de captura,

dentre outros.

Page 7: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

7

Sistema de Recorte*Sistemas Detectores de Atividade de Voz (DAV)

*Retira períodos de silêncio do início e do fim da elocução

*Reduz a quantidade de dados a serem processados em estágios posteriores

*Alguns algoritmos de DAV levam em consideração o ruído de fundo

Page 8: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

8

Sistema de Recorte

Page 9: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

9

Pré-processamento*Filtro de pré-ênfase*Torna o sinal menos suscetível aos efeitos de precisão finita

*Planifica o espectro

Função de transferência do filtro de pré-ênfase

Equação temporal do filtro de pré-ênfase

Page 10: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

10

Representação do Sinal de Voz*Geração de características que forneçam maior

eficiência no reconhecimento das elocuções

*Reduz o espaço de dados sem perda de informação útil

*Representação utilizada: coeficientes LPC

Page 11: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

11

Representação do Sinal de Voz*Consiste em representar o sinal através de suas

amostras atrasadas no tempo:

*Os coeficientes a1, a2, a3, ..., ap são chamados de coeficientes LPC

*p é chamada ordem do preditor

𝑠 (𝑛)≈𝑎1𝑠 (𝑛−1 )+𝑎2𝑠 (𝑛−2 )…+𝑎𝑝𝑠 (𝑛−𝑝 )

Page 12: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

12

Representação do Sinal de Voz*Minimização de uma função custo

*Resolvendo a equação acima obtemos os valores ótimos

onde

Page 13: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

13

Representação do Sinal de Voz

*Utiliza-se então o algoritmo de Levison-Durbin para resolver o sistema dos coeficientes LPC

Page 14: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

14

Representação do Sinal de Voz

Page 15: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

15

Reconhecimento de Padrões*Objetivo: encontrar regularidades nos dados de forma a separá-los

em classes

Page 16: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

16

Reconhecimento de Padrões*Fase de treinamento e fase de generalização*Divide-se o conjunto de dados (N elementos) para treinamento e teste

*Fase de treinamento

*Conjunto de treinamento Xtr com N1 elementos

*Rótulos das classes de cada vetor de treinamento

*Fase de teste

*Conjunto de teste Xtest com N2 elementos

*Observa-se as saídas do classificador para verificar seu desempenho

*Realimentação dos resultados e ajustes finos

*Tipos de conjunto* Linearmente separáveis

*Não-linearmente separáveis

Page 17: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

17

Tipos de Problema de Interesse

Problema linearmente separável

Problema não-linearmente separável

Curva não-linear separando duas classes de dados

Page 18: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

18

Memória Associativa Linear Ótima (OLAM)*Assume-se inicialmente um mapeamento linear W desconhecido

entre vetores de entrada x e vetores de saída d:

*Representando o mapeamento através de sistemas lineares:

Page 19: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

19

Memória Associativa Linear Ótima (OLAM)*Tem-se como objetivo descobrir uma matriz aproximada dos parâmetros do

sistema a partir de pares entrada/saída

*Onde yμ é a saída estimada do mapeamento, que deve ser próximo de dμ, cujo o erro é dado por

*O OLAM consiste em estimar a matriz utilizando a técnica da pseudoinversa

*Fase de treinamento:*Conjunto de dados com N vetores de entrada

*Matrix com N1 (N1 < N) vetores de entrada

*Matrix com N1 vetores de saídas desejadas

Page 20: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

20

Memória Associativa Linear Ótima (OLAM)* e são as concatenações dos vetores de entrada e saídas desejadas

respectivamente, ou seja:

*Construímos o mapeamento linear a partir de e

*Onde cada vetor coluna de possui +1 na classe desejada e -1 nas outras classes, ou seja:

Page 21: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

21

Memória Associativa Linear Ótima (OLAM)*Multiplicamos pela direita e em seguida por também pela direita:

*De onde obtemos:

*Para verificarmos a generalização do modelo obtido fazemos:

*Onde:

* é um conjunto de teste com N2= N – N1 elementos

* saída do novo modelo estimado

Page 22: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

22

Memória Associativa Linear Ótima (OLAM)*Obtém-se a classe inferida pela rede observando o índice do maior

elemento de um vetor coluna de , ou seja:

*Em que representa a classe inferida pelo classificador quando se aplica um vetor de entrada xμ

Page 23: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

23

Máquinas de Aprendizagem Extrema (ELM)

Mapeamento Aleatório

(W)tgh(.)

OLAM(M)

u(i) z(i)x y

Arquitetura da rede neural ELM

Page 24: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

24

Máquinas de Aprendizagem Extrema (ELM)

Neurônio da camada escondida Neurônio da camada de saída

Page 25: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

25

Máquinas de Aprendizagem Extrema (ELM)*Três fases a serem seguidas para realização do treinamento da

rede ELM:*Fase 01: Inicialização Aleatória dos Pesos dos Neurônios Ocultos

*Fase 02: Acúmulo das Saídas dos Neurônios Ocultos

*Fase 03: Cálculo dos pesos dos neurônios de saída

*O conjunto de dados possui N vetores de entrada.

*N1 (N1 <N) vetores para treinamento

*N2 = N - N1 vetores para teste

Page 26: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

26

Máquinas de Aprendizagem Extrema (ELM)*Fase 01: Inicialização Aleatória dos Pesos dos Neurônios

Ocultos

*Inicializa-se a matriz dos pesos W com valores aleatórios que podem ser distribuídos de forma uniforme ou normal

*Onde W é

Page 27: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

27

Máquinas de Aprendizagem Extrema (ELM)*Fase 02: Acúmulo das Saídas dos Neurônios Ocultos

*Calcula-se a matriz de ativação da camada oculta utilizando uma matriz de dados de treinamento (N1 vetores)

*Realizando todas as computações matricialmente, temos:

*Após isso se aplica a função de ativação tanh(.) para obter a saída da camada oculta

Page 28: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

28

Máquinas de Aprendizagem Extrema (ELM)*Fase 03: Cálculo dos pesos dos neurônios de saída

*Tendo obtido Z, podemos enxergar a última camada como um modelo OLAM de entrada Z e saídas desejadas D

*Podemos obter a matriz de pesos M da camada de saída aplicando o método da pseudoinversa

*Teste de capacidade de generalização utilizando as matrizes W e M

Page 29: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

29

SRCV*SRCV – Sistema de Reconhecimento de Comandos de Voz

*Características Proprostas*Gravação de elocuções

*Cadastro de novos comandos de voz

*Exibição de formas de onda

*Gerenciamento completo das elocuções

*Armazenamento dos parâmetros das redes neurais

*Seleção do tipo de rede utilizado nas simulações

*Log de atividades

*Simulações através de arquivos de dados e bancos de dados relacionais

Page 30: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

30

Screenshot

Page 31: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

31

Modelos de Dados

Modelos de dados utilizados no SRCV

Page 32: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

32

Padrões de Projetos Utilizados*Padrão de Projeto*Soluções que, no contexto das linguagens orientadas a objeto,

proporcionem reuso, modularidade e uma maior separação entre camadas de software.

*Padrões de Projeto utilizados no SRCV*Singleton: Acesso através de um único objeto à conexão com o banco de

dados

*Data Access Object: Acesso transparente aos meios persistentes

Page 33: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

33

Padrões de Projetos Utilizados

Diagrama de classe que representa o padrão DAO

Page 34: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

34

Padrões de Projetos Utilizados

Diagrama de classe que representa o padrão Singleton

Page 35: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

35

Simulações – Conjunto Wine*Simulação 01: Utilização de um conjunto de dados pouco desafiador para

validação das redes neurais desenvolvidas

*Após os vetores de dados serem carregados eles são embaralhados e divididos

*80% dos dados para treinamento. N1 = 0,80 * N

*20% dos dados para teste. N2 = 0,20 * N

*A rede é treinada 50 vezes e em cada vez um novo embaralhamento é realizado

*Os melhores parâmetros das redes neurais são guardados e utilizados na fase de generalização*OLAM: Matriz W

*ELM: Matriz W e M

Page 36: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

36

Simulações – Conjunto Wine*Resultados:*OLAM: 98% de acerto no treinamento

*ELM:

Taxa de acerto da rede ELM no treinamento

Tempo médio de execução da rede ELM (inicialização, treinamento e teste)

Page 37: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

37

Simulações – Conjunto Wall-Following Robot

*Simulação 02: Utilização de um conjunto de dados desafiador para validação das redes neurais desenvolvidas

*Após os vetores de dados serem carregados eles são embaralhados e divididos

*80% dos dados para treinamento. N1 = 0,80 * N

*20% dos dados para teste. N2 = 0,20 * N

*A rede é treinada 50 vezes e em cada vez um novo embaralhamento é realizado

*Os melhores parâmetros das redes neurais são guardados e utilizados na fase de generalização*OLAM: Matriz W

*ELM: Matriz W e M

Page 38: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

38

Simulações – Conjunto Wall-Following Robot

*Resultados:*OLAM: 65,5% de acerto no treinamento

*ELM:

Taxa de acerto da rede ELM no treinamento Tempo médio de execução da rede ELM (inicialização, treinamento e teste)

Page 39: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

39

Simulações – Conjunto das Elocuções*Simulação 03: Utilização do conjunto de dados para testar o reconhecimento de

comandos

*Após os vetores de dados serem carregados eles são embaralhados

* 100% dos dados para treinamento. N1 = N

* 7 elocuções para cada um dos comandos: frente, trás, esquerda e direita

*A rede é treinada 50 vezes e em cada vez um novo embaralhamento é realizado

*Os melhores parâmetros das redes neurais são guardados e utilizados na fase de generalização* OLAM: Matriz W

* ELM: Matriz W e M

*Para realização do teste uma nova elocução é gravada, representada através de coeficientes LPC e submetida às redes neurais

Page 40: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

40

Simulações – Conjunto das Elocuções*Os coeficientes LPC de cada frame de uma elocução são extraídos e a

cada um deles é atribuído um rótulo

*A matriz dos vetores de entrada tem a seguinte forma

*Onde os rótulo R0, R1, R2,... RL-1 são os rótulos dos comandos dos quais cada coeficiente LPC pertence

Page 41: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

41

Simulações – Conjunto das Elocuções*A matriz dos vetores de entrada é submetida a rede neural

*Para cada vetor dessa matriz a rede neural inferirá uma classe

*Cada classe possui uma variável acumuladora que indica quantas vezes a rede identificou um dado comando

*É feito o voto majoritário entre as variáveis acumuladoras para indicar qual comando foi emitido pelo usuário

*Por exemplo, se a rede possuir as seguintes variáveis acumuladoras teremos como saída o comando frente:* Frente: 145

* Trás: 0

* Esquerda: 15

* Direita: 12

Page 42: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

42

Simulações – Conjunto das Elocuções*Parâmetros de aquisição das elocuções:*Taxa de amostragem: 8KHz

*Bits/amostra: 8

*Número de canais: 1

*Sinalização: Sim

*Endianess: Big-endian

*Parâmetros de pré-processamento*Coeficiente do filtro de pré-ênfase: 0,9

*Parâmetros de representação do sinal*Ordem de predição linear: 10

Page 43: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

43

Simulações – Conjunto das Elocuções*Resultados:*OLAM: 55% de acerto no treinamento

*ELM:

Taxa de acerto da rede ELM no treinamento

Matriz de confusão para a rede neural ELM.

Métrica m1 para a rede neural ELM.

Page 44: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

44

Simulações – Conjunto das Elocuções

Matriz de confusão para a rede neural OLAM.

Métrica m1 para a rede neural OLAM.

Page 45: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

45

Conclusões*O uso de conjuntos de dados cuja complexidade é conhecida foi útil para validar

as implementações das redes neurais

*O classificador não-linear (ELM) se comportou melhor em relação ao classificador linear (OLAM) para os dados de voz*Melhor matriz de confusão

*Maior precisão evidenciada através de uma métrica m1

*A taxa de acerto da rede ELM saturou a medida que se aumenta quantidade de neurônios da camada oculta

*O tempo de execução da rede ELM apresentou um comportamento exponencial a medida que se aumenta quantidade de neurônios da camada oculta

*O uso de padrões de Software adicionou modularidade e reuso à aplicação

Page 46: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

46

Perspectivas Futuras*Correções de bugs conhecidos no simulador

*Melhoria da usabilidade do simulador

*Implementação da funcionalidade de reconhecimento de usuários

*Criação de uma interface entre o software e as rotinas de movimentação do robô SCITOS G5

Page 47: Junho 2011 Davyd Bandeira de Melo 1. * Aplicações do Processamento Digital de Voz * Motivação * Arquitetura de um Sistema de Reconhecimento de Voz * Aquisição.

47

Dúvidas