A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

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

Apresentações semelhantes


Apresentação em tema: "Davyd Bandeira de Melo Um Sistema de Reconhecimento de Comandos de Voz Utilizando a Rede Neural ELM Junho 2011."— Transcrição da apresentação:

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

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

3 Aplicações do Processamento Digital de Voz
Técnicas de Processamento Digital da Voz Transmissão Digital e Armazenamento Síntese de Voz Reconhecimento de Voz Identificação de Elocutores Realce da Qualidade da Voz Acessibilidade

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

5 Arquitetura de um Sistema de Reconhecimento de Voz
Estágios constituintes de um sistema de reconhecimento de voz

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.

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

8 Sistema de Recorte

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

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

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 …+ 𝑎 𝑝 𝑠(𝑛−𝑝)

12 Representação do Sinal de Voz
Minimização de uma função custo Resolvendo a equação acima obtemos os valores ótimos onde

13 Representação do Sinal de Voz
Utiliza-se então o algoritmo de Levison-Durbin para resolver o sistema dos coeficientes LPC

14 Representação do Sinal de Voz

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

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

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

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:

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

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:

21 Memória Associativa Linear Ótima (OLAM)
Multiplicamos 𝑋 𝑇 pela direita e em seguida por ( 𝑋 𝑋 𝑇 ) −1 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

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μ

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

24 Máquinas de Aprendizagem Extrema (ELM)
Neurônio da camada escondida Neurônio da camada de saída

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

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 é

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

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

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

30 Screenshot

31 Modelos de dados utilizados no SRCV

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

33 Padrões de Projetos Utilizados
Diagrama de classe que representa o padrão DAO

34 Padrões de Projetos Utilizados
Diagrama de classe que representa o padrão Singleton

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

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)

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

38 Simulações – Conjunto Wall-Following Robot
Resultados: OLAM: 65,5% de acerto no treinamento ELM: Tempo médio de execução da rede ELM (inicialização, treinamento e teste) Taxa de acerto da rede ELM no treinamento

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

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

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

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

43 Simulações – Conjunto das Elocuções
Resultados: OLAM: 55% de acerto no treinamento ELM: Matriz de confusão para a rede neural ELM. Métrica m1 para a rede neural ELM. Taxa de acerto da rede ELM no treinamento

44 Simulações – Conjunto das Elocuções
Matriz de confusão para a rede neural OLAM. Métrica m1 para a rede neural OLAM.

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

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

47 Dúvidas

48 Obrigado davydmelo@gmail.com


Carregar ppt "Davyd Bandeira de Melo Um Sistema de Reconhecimento de Comandos de Voz Utilizando a Rede Neural ELM Junho 2011."

Apresentações semelhantes


Anúncios Google