• Nenhum resultado encontrado

Indentificação de locutores baseada em aprendizagem não-supervisionada de características

N/A
N/A
Protected

Academic year: 2021

Share "Indentificação de locutores baseada em aprendizagem não-supervisionada de características"

Copied!
57
0
0

Texto

(1)

Pós-Graduação em Ciência da Computação

Thyago Neves Porpino

Identificação de Locutores baseada

em Aprendizagem Não-Supervisionada

de Características

Universidade Federal de Pernambuco posgraduacao@cin.ufpe.br www.cin.ufpe.br/~posgraduacao

RECIFE 2015

(2)

Thyago Neves Porpino

Identificação de Locutores baseada

em Aprendizagem Não-Supervisionada

de Características

Trabalho apresentado ao Programa de Mes-trado em Ciência da Computação do Cen-tro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.

Orientador: Tsang Ing Ren

Co-orientador: George Darmiton da

Cunha Cavalcanti

RECIFE 2015

(3)

Catalogação na fonte

Bibliotecária Monick Raquel Silvestre da S. Portes, CRB4-1217

P837i Porpino, Thyago Neves

Indentificação de locutores baseada em aprendizagem não-supervisionada de características / Thyago Neves Porpino. – 2015.

56 f.:il., fig., tab.

Orientador: Tsang Ing Ren.

Dissertação (Mestrado) – Universidade Federal de Pernambuco. CIn, Ciência da Computação, Recife, 2015.

Inclui referências.

1. Inteligência artificial. 2. Redes neurais. I. Ren, Tsang Ing (orientador). II. Título.

006.3 CDD (23. ed.) UFPE- MEI 2017-229

(4)

Dissertação de Mestrado apresentada por Thyago Neves Porpino à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Identificação de Locutores baseada em Aprendizagem

Não-Supervisionada de Características” orientada pelo Prof. Tsang Ing Ren e

aprovada pela Banca Examinadora formada pelos professores:

______________________________________________ Prof. Germano Crispim Vasconcelos

Centro de Informática/UFPE

______________________________________________ Prof. Francisco Madeiro Bernardino Junior

Escola Politécnica de Pernambuco / UPE

_______________________________________________ Prof. Tsang Ing Ren

Centro de Informática / UFPE

Visto e permitida a impressão. Recife, 26 de agosto de 2015.

___________________________________________________ Profa. Edna Natividade da Silva Barros

Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.

(5)

Este trabalho é dedicado aos meus familiares, amigos, e à minha namorada, que tiveram paciência, e me incentivaram nos momentos difíceis.

(6)

RESUMO

A aprendizagem de máquina vem sendo usada nas mais diversas áreas da inteligên-cia artifiinteligên-cial, porém sua aplicação costumava depender em grande parte da construção manual de bons extratores de características, já que uma representação com baixo poder discriminatório pode limitar os resultados obtidos por um classificador. Nos últimos anos, a pesquisa sobre modelos não-supervisionados, e mais especificamente, aqueles que possuem uma arquitetura profunda (i.e. deep learning) vêm obtendo ótimos resultados em várias áreas de aplicação. Essa revolução, é essencialmente, uma quebra do paradigma clássico de aprendizagem, onde as características eram projetadas por seres humanos, para um novo paradigma, onde os extratores de características também estão sujeitos à aprendizagem automática. Essa dissertação tem por objetivo analisar o desempenho de um modelo não-supervisionado hierárquico, conhecido como Convolutional Deep Belief Network (CDBN), no problema de identificação de locutor em bases de áudio ruidosas. O desempenho dessa técnica em extrair características relevantes de forma não-supervisionada foi avaliado nas bases TIMIT (sem ruído) e MIT (com ruído). Experimentos com transferência de aprendizado foram realizados, onde o modelo não-supervisionado é treinado com os dados de uma base, e as características extraídas são avaliadas com os dados de outra base. Os experimentos mostraram que a CDBN consegue aprender características com bom poder discriminatório em bases simples como a TIMIT, porém o aprendizado em uma base ruidosa não se mostrou tão promissor, e mais experimentos são necessários para investigar este problema.

Palavras-chave: Aprendizagem Não-supervisionada. Redes Neurais. Modelos Probabilís-ticos. Identificação de Locutor. Aprendizagem Profunda.

(7)

ABSTRACT

Machine learning has been used in many areas of artificial intelligence, but its application would usually depend greatly on good hand-engineered feature extractors, since a poor representation limits the results obtained by a classifier. In recent years, research on unsupervised models, and more specifically, on those that have a deep architecture (i.e. deep learning), are creating a revolution in many areas. This revolution is, essentially, a paradigm shift from the classical machine learning, to a paradigm where feature extractors are also amenable to automatic learning. This dissertation has the objective of analyzing the performance of a hierarchical unsupervised model, called Convolutional Deep Belief Network (CDBN), on the problem of speaker identification in noisy datasets. The performance of this technique in extracting relevant features in a unsupervised way was evaluated on the TIMIT (no noise) and on the MIT (with noise) datasets. Experiments with transfer learning were done, where the unsupervised model is trained with the data from one dataset, and the feature extractor is evaluated with the data from the other dataset. The experiments show that the CDBN can learn features with good discriminatory power in simple datasets such as TIMIT, but the learning in a noisy dataset did not show good results, and more experiments are needed to investigate this problem.

Keywords: Unsupervised Learning. Neural Networks. Probabilistic Models. Speaker Identification. Deep Learning.

(8)

LISTA DE FIGURAS

Figura 1 – Diferença entre a BM e a RBM. A RBM é um caso particular de uma BM, em que conexões entre unidades de uma mesma camada não são permitidas. À esquerda, vemos uma BM com 3 unidades visíveis e 3 unidades escondidas, e notamos que esse modelo permite qualquer tipo de conexão, exceto laços. À direita, temos uma RBM, com 3 unidades visíveis e 3 escondidas. . . 19 Figura 2 – Visualização da Amostragem de Gibbs alternada que é feita na RBM. A

inicialização das unidades visíveis v0 pode ser feita de forma aleatória,

ou com uma amostra do conjunto de treinamento, como no caso do

contrastive divergence. . . . 22 Figura 3 – Diferentes tipos de representações. Visualizamos três vetores de

caracte-rísticas, onde cada característica tem valor entre 0 (preto) e 1 (branco). (a) Representação distribuída, várias unidades são ativadas para uma

dada entrada; (b) Representação sparse, onde poucas unidades são ativadas para uma dada entrada; (c) Representação localizada, que é um caso extremo da representação sparse, onde apenas uma unidade pode ser ativada para cada entrada. . . 26 Figura 4 – Visualização das camadas de uma Convolutional RBM. A camada visível

é tratada aqui como uma imagem com dimensões nv × nv. O modelo

possui K filtros Wk, onde o conjunto de filtros é denotado por W .

A camada escondida é formada por K mapas de características Hk, onde cada mapa tem o tamanho nh× nh, e o conjunto de mapas de

características é representado por H. . . . 28 Figura 5 – Visualização do probabilistic max-pooling em CRBMs. Nos restringimos

aqui apenas ao grupo k, para facilitar o entendimento. Observamos o filtro Wk sendo aplicado em um dado pedaço da imagem (durante

a operação de convolução), e gerando a unidade escondida hk

ij. Essa

unidade faz parte da vizinhança Bα (no caso da imagem, uma vizinhança

2 × 2), que é usada para obter pk

α. . . 29

Figura 6 – Diferença entre a DBN e a DBM. A DBN só possui conexões não-direcionadas na última camada (portanto não se pode dizer que a DBN é formada por RBMs empilhadas), enquanto a DBM (e a CDBN), possui conexões não-direcionadas em todas as camadas. . . 32 Figura 7 – Amostragem da amplitude de um sinal analógico em intervalos regulares

(9)

Figura 8 – Etapa de quantização. Após discretizar o conjunto de infinitos valores possíveis para a amplitude do sinal, arrendondamos cada amostra para um dos valores definidos (o mais próximo). A quantização neste exemplo é uniforme (intervalo entre valores de amplitude é o mesmo). . . 35 Figura 9 – Visualização de um sinal de voz digitalizado pelo PCM (formato WAV). 36 Figura 10 – Visualização simplificada da STFT. Após segmentar o sinal de voz

através de um processo de janelamento, aplicamos uma Transformada Discreta de Fourier à cada segmento, e concatenamos os resultados. . . 38 Figura 11 – Espectrograma visualizado com o mapa de cores jet. . . . 39 Figura 12 – Espectrograma de uma locução escolhida aleatoriamente da base TIMIT. 40 Figura 13 – Espectrograma de uma locução escolhida aleatoriamente da base

MIT-MDSVC. Observe que o início e o final da locução possuem um trecho sem fala. . . 41 Figura 14 – Visualização do pré-processamento utilizado durante os experimnetos.

(a) Sinal de voz original de qualquer uma das bases utilizadas; (b) Espectrograma obtido a partir do sinal de voz; e (c) Espectrograma preprocessado, após a aplicação do PCA Whitening com nc= 80 e  = 3. 43

Figura 15 – Perda de informação após o PCA Whitening com nc = 80 e  =

3. Ao aplicar o PCA Whitening e conservar apenas 80 canais (i.e. características), podemos aplicar a transformada inversa para visualizar os dados no espaço original. . . 44 Figura 16 – Diagrama da primeira camada da CDBN aplicada em áudio (sem a

camada de pooling). A camada vísivel é um espectrograma preprocessado, e possui nc canais, e nv frames. Temos K filtros, onde cada filtro

possui nc canais e largura nw. A camada escondida tem K mapas de

características, onde cada mapa possui nv− nw+ 1 componentes (que

representam os frames). . . . 46 Figura 17 – Filtros inicializados de forma aleatória (antes do treinamento). . . 47 Figura 18 – Visualização de alguns filtros selecionados aleatoriamente da primeira

camada da CDBN treinada com os dados da TIMIT. . . 48 Figura 19 – Visualização de alguns filtros selecionados aleatoriamente da primeira

(10)

LISTA DE TABELAS

Tabela 1 – Número de locutores e de locuções presentes no conjunto de treinamento e teste sugeridos oficialmente para base TIMIT. . . 40 Tabela 2 – Informações sobre a MIT-MDSVC. A tabela também indica a subdivisão

treinamento/teste recomendada para o problema de verificação de locutor nessa base. . . 41 Tabela 3 – Tabela de resultados na base TIMIT. Os valores da tabela representam

a taxa de classificação e o desvio padrão. . . 49 Tabela 4 – Tabela de resultados na base MIT-MDSVC. Os valores da tabela

(11)

SIGLAS E ACRÔNIMOS

BM Boltzmann Machine

RBM Restricted Boltzmann Machine

GBRBM Gaussian-Bernoulli Restricted Boltzmann Machine

CRBM Convolutional Restricted Boltzmann Machine

DBN Deep Belief Network

DBM Deep Boltzmann Machine

CDBN Convolutional Deep Belief Network

CD Contrastive Divergence

IA Inteligência Artificial

PCA Principal Component Analysis

PCM Pulse Code Modulation

(12)

LISTA DE SÍMBOLOS

P (·) Distribuição de probabilidade

h·iP Média sobre a distribuição P

∗ convolução

• multiplicação elemento à elemento, seguida de soma

(13)

SUMÁRIO

1 INTRODUÇÃO . . . 13 1.1 Motivação . . . 13 1.2 Identificação de Locutor . . . 15 1.3 Objetivo . . . 17 1.4 Organização . . . 17 2 MODELOS NÃO-SUPERVISIONADOS . . . 18

2.1 Restricted Boltzmann Machine . . . 18

2.2 Gaussian-Bernoulli RBM . . . 24

2.3 Sparse RBM . . . 25

2.4 Convolutional RBM . . . 27

2.4.1 Probabilistic max-pooling . . . . 28

2.4.2 Treinamento com regularização de sparsity . . . 31

2.5 Convolutional Deep Belief Network . . . 31

2.5.1 Inferência probabilística hierárquica . . . 31

3 PROCESSAMENTO DE VOZ . . . 34

3.1 Representações para o Sinal de Voz . . . 34

3.1.1 Sinal de voz digitalizado . . . 34

3.1.2 Análise de Tempo Curto . . . 36

3.1.3 Espectrograma de voz . . . 38 3.2 Bases de Dados . . . 39 3.3 Pré-processamento . . . 42 4 EXPERIMENTOS E RESULTADOS . . . 45 4.1 Introdução . . . 45 4.2 Aprendizado Não-Supervisionado . . . 45

4.2.1 Monitoramento do Aprendizado de uma RBM . . . 46

4.3 Avaliação das Características da CDBN . . . 47

4.3.1 Discussão . . . 50

5 CONCLUSÃO . . . 52

(14)

13

1 INTRODUÇÃO

O objetivo da aprendizagem de máquina é o desenvolvimento de algoritmos que sejam capazes de aprender a reconhecer padrões a partir de exemplos, e que podem fazer predições exatas (ou aproximadas) sobre dados nunca antes vistos. Nos últimos anos, a aprendizagem de máquina foi aplicada a vários dos problemas do mundo real. Neste Capítulo, faremos uma breve introdução às motivações e objetivos deste trabalho. Na Seção 1.1, apresentamos a motivação deste trabalho. Na Seção 1.2, fazemos uma breve introdução ao problema de identificação de locutor. Na Seção 1.3, listamos os objetivos deste trabalho, e por fim, na Seção 1.4, descrevemos como este trabalho é organizado.

1.1

Motivação

Existem três problemas muito importantes que precisam ser resolvidos para que a aprendizagem de máquina seja mais bem sucedida e possua mais aplicabilidade: utilização de dados não-rotulados, transferência de aprendizado e aprendizagem automática de características (LEE, 2010) (PAN; YANG, 2010).

Grande parte dos sucessos recentes em aprendizagem de máquina foram alcançados ao se utilizar uma enorme quantidade de dados rotulados (KRIZHEVSKY; SUTSKEVER; HINTON, 2012) (TAIGMAN et al., 2014), porém o processo de obtenção desses dados é bastante custoso, pois na maioria das vezes envolve seres humanos. Em contraste com a dificuldade de obtenção de dados rotulados, temos fácil acesso a uma infinidade de dados não-rotulados presentes na web. Portanto, uma das questões chaves para o futuro da aprendizagem de máquina é como fazer uso de dados não-rotulados para aumentar a performance dos nossos modelos.

Uma das premissas mais importantes em várias técnicas de aprendizagem de máquina é que os dados utilizados em tempo de treinamento e em tempo de teste possuem a mesma distribuição. Apesar disso, em várias aplicações do mundo real, essa premissa pode ser falsa. Por exemplo, podemos ter um problema de classificação em um domínio de interesse, mas nós só temos uma quantidade suficiente de dados em algum outro domínio correlato, onde os dados desse outro domínio podem seguir uma distribuição diferente. Nesses casos, a transferência de conhecimento, pode aumentar bastante a performance do aprendizado, além de evitar um custoso processo de obtenção de mais dados. A transferência de aprendizado (PAN; YANG, 2010) tem por objetivo modelar problemas deste tipo. Um dos objetivos da transferência de aprendizado é obter representações (i.e. características) que sejam robustas o suficiente para serem utilizadas em dados com distribuições diferentes

(15)

Capítulo 1. Introdução 14

(porém semelhantes).

Um outro problema é que todos os resultados obtidos utilizando modelos supervi-sionados dependem fortemente da qualidade das características utilizadas. Ou seja, sem uma boa representação, nenhum classificador é capaz de obter bons resultados.

Durante muitos anos, grande parte das subáreas da Inteligência Artificial con-centraram todo seu esforço no projeto de novos e melhores extratores de características. Entre as características projetadas, podemos citar o MFCC (Mel-Frequency Cepstral

Coefficients) (RABINER; SCHAFER, 2007), ainda hoje, a representação mais utilizada

em processamento de voz, e o SIFT (Scale Invariant Feature Transform) (LOWE, 1999), muito utilizado em visão computacional. A dependência de extratores de características projetados manualmente é um grande empecilho para a aplicação da aprendizagem de máquina em novos domínios, pois o tempo e o custo necessários para que um ser humano projete um bom extrator de características são proibitivos, isto quando esta tarefa não é praticamente impossível, como no caso de características de alto nível para visão computa-cional. Recentemente, modelos profundos com redes neurais, que realizam o aprendizado de características de forma automática, vêm obtendo ótimos resultados em várias áreas de aplicação.

A aprendizagem profunda (i.e. deep learning) (BENGIO, 2009), é uma área da aprendizagem de máquina que trabalha com modelos que aprendem uma hierarquia de características, ou seja, utilizam várias camadas (geralmente de duas para cima). Esta arquitetura em camadas é mais adequada quando o problema que se quer resolver pode ser modelado como uma hierarquia de conceitos, onde conceitos mais básicos (i.e. características de baixo nível) podem ser usados para formar conceitos mais complexos (i.e. características de alto nível). Devido a esse tipo de arquitetura, modelos profundos são especialmente adequados para problemas de percepção, como visão computacional, reconhecimento de voz e processamento de linguagem natural.

Resumidamente, estamos interessados em aprender características de forma au-tomática, fazendo uso de dados não-rotulados (aprendizagem não-supervisionada de características), e queremos que essas características sejam robustas o suficiente para serem usadas de forma bem sucedida em domínios correlatos (i.e. transferência de aprendizado).

Em (LEE et al., 2009b), um modelo não-supervisionado profundo denominado

Convolutional Deep Belief Network (CDBN) foi utilizado para aprender características

em uma base de voz sem ruído chamada TIMIT (FISHER; DODDINGTON; GOUDIE-MARSHALL, 1986). Essas características foram avaliadas em diferentes problemas de voz, como identificação de locutor, classificação de gênero do locutor e reconhecimento de fonema, de modo a demonstrar a sua qualidade e o seu potencial para problemas que envolvem transferência de aprendizado.

(16)

Capítulo 1. Introdução 15

O excelente resultado obtido em (LEE et al., 2009b), utilizando as características aprendidas por uma CDBN no problema de identificação de locutor (mesmo com um esquema de classificação bastante simples), gera um questionamento sobre a capacidade deste modelo de aprender uma representação de voz em uma base ruidosa (naturalmente mais difícil), e mais, se as características aprendidas em uma base ruidosa podem ser utilizadas de forma proveitosa em uma base sem ruído, e vice-versa.

A avaliação das características aprendidas pela CDBN em bases de áudio ruidosas, nos permite conhecer melhor os limites deste modelo não-supervisionado em termos da acurácia no problema de identificação de locutores, e saber em quais situações ele é aplicável.

1.2

Identificação de Locutor

O objetivo da identificação de locutor (CAMPBELL; JR., 1997) (REYNOLDS, 2002) é reconhecer pessoas pela sua voz. As diferenças físicas (e.g. formato do trato vocal) e da maneira de falar (e.g. sotaque) de um indivíduo para outro, fazem com que não existam dois indivíduos com exatamente a mesma voz. Essa característica da voz humana faz com que sistemas de identificação de locutor sejam possíveis.

Um problema relacionado ao da identificação de locutor é a verificação de locutor. Neste problema, estamos preocupados em verificar se uma determinada voz humana pertence ou não a uma determinada pessoa (problema de classificação binária). Esse problema tem várias características em comum com o problema de identificação de locutor. Sistemas de identificação e verificação são largamente utilizados em aplicações de segurança. Uma das principais aplicações de sistemas de identificação de locutor é a ciência forense. Muitas informações são trocadas através do telefone, e recentemente, existe um crescente interesse em integrar sistemas automáticos de identificação de locutor para suplementar outros métodos semiautomáticos. (NEUSTEIN; PATIL, 2012).

Existem dois tipos principais de sistemas de identificação de locutor: sistemas de conjunto aberto e sistemas de conjunto fechado. Na identificação em conjunto fechado, amostras de voz da pessoa que se quer identificar devem estar presentes na base de dados existente (usada para treinamento), ou seja, temos um conjunto fechado de pessoas que serão identificadas pelo sistema após sua implantação. Uma possível aplicação para a identificação de locutor em conjunto fechado é a identificação de um usuário em um computador, onde existem um número fixo de usuários que gravaram suas vozes a priori no sistema. A identificação em conjunto aberto permite que o modelo seja avaliado com uma entrada de voz de um locutor que está ausente da base original de treinamento. Neste caso, o sistema deve identificar o indivíduo como desconhecido.

(17)

Capítulo 1. Introdução 16

Do ponto de vista do conteúdo das locuções, existem dois tipos de sistemas de identificação de locutor, os dependentes de texto (HÉBERT, 2008) e os independentes de texto (KINNUNEN; LI, 2010). Nos sistemas dependentes de texto, que são adequados para situações onde os locutores são cooperativos, as frases pronunciadas pelos locutores são fixas, ou definidas a priori (e.g. senhas, número de cartão de crédito). Já nos sistemas independentes de texto, não existem restrições nas palavras que o locutor pode pronunciar. Logo, em sistemas independentes de texto, as locuções de referência (usadas para o treinamento) e as locuções de teste (pronunciadas em produção) podem ter conteúdo completamente diferentes. Essa variabilidade do conteúdo fonético da locução, presente no problema de identificação de locutor independente de texto, faz com que esse problema seja mais difícil do que o problema dependente de texto.

A variabilidade fonética entre os locutores costuma ser um fator adverso, quando se trata da acurácia em sistemas de identificação de locutor independente de texto. Mudanças no ambiente acústico, fatores técnicos de captura de áudio (e.g. microfone utilizado) e variação na voz da mesma pessoa devido a causas biológicas (i.e. doença, envelhecimento) ou emocionais representam fatores indesejáveis, e que dificultam enormemente o problema. Em geral, qualquer variação entre duas gravações de um mesmo locutor é conhecida como variabilidade de sessão. A variabilidade de sessão é normalmente descrita como uma divergência das condições de treinamento e teste, e ela se caracteriza como o maior desafio no problema de identificação de locutor (REYNOLDS, 1995).

A maioria dos sistemas modernos de identificação de locutor são baseados em características projetadas por seres humanos, como por exemplo o MFCC (Mel-Frequency

Cepstral Coefficientes), característica largamente utilizada pela comunidade de voz

(RA-BINER; SCHAFER, 2007). Um dos problemas com o MFCC, e outras características extraídas a partir do sinal de voz, é que ele possui uma grande quantidade de informação irrelevante para o problema de identificação de locutor, como o ruído e o conteúdo fonético. Durante o processo de extração de características, essas informações são aglomeradas, dificultando o uso dessas características para problemas específicos como identificação de locutor.

Todos os sistemas modernos de identificação de locutor utilizam um modelo estatís-tico para eliminar o impacto do conteúdo fonéestatís-tico e outros fatores acúsestatís-ticos no problema de identificação. Por exemplo, no famoso GMM-UBM (Gaussian Mixture Model - Universal

Background Model) (REYNOLDS; QUATIERI; DUNN, 2000), o espaço acústico é dividido

em subespaços na forma de Gaussianas, e cada subespaço representa aproximadamente um fonema. Ao formular o problema de identificação de locutor em subproblemas no subespaço dos fonemas, o modelo GMM-UBM pode eliminar o impacto do conteúdo fonético e outros fatores acústicos.

(18)

Capítulo 1. Introdução 17

capacidade discriminativa da representação acústica (e.g. MFCC). Uma alternativa é projetar características mais adequadas ao domínio em questão, ou seja, que apresentem um maior poder discriminativo para o problema de identificação de locutor (KINNUNEN; LI, 2010). Apesar da aparente simplicidade dessa ideia, o projeto manual dessas características requer tempo e custos proibitivos.

Pesquisas recentes com deep learning sugerem uma nova abordagem para o apren-dizado de características. Aplicações como visão computacional e reconhecimento de voz utilizam essas técnicas para aprender características a partir de dados de baixo nível, como imagens e espectrogramas. Por exemplo, em reconhecimento de voz, as caracterís-ticas obtidas com modelos profundos já superam os resultados obtidos com o MFCC, a característica mais usada para esse problema durante várias décadas (LI et al., 2012).

Modelos profundos também estão sendo aplicados ao problema de identificação de locutor, como podemos ver em (LEE et al., 2009b), (LI et al., 2015) e (RICHARDSON; REYNOLDS; DEHAK, 2015).

1.3

Objetivo

Em trabalhos anteriores, a Convolutional Deep Belief Network (CDBN) (LEE et al., 2009a) foi utilizada para aprender uma representação de voz de forma não-supervisionada em diversos problemas de voz como identificação de locutor, classificação de gênero do locutor e reconhecimento de fonema (LEE et al., 2009b), sempre com bases de voz sem ruído, como a TIMIT. Este trabalho tem por objetivo testar duas hipóteses:

1. A CDBN é capaz de aprender características relevantes para o problema de identifi-cação de locutor, mesmo em bases ruidosas.

2. As características aprendidas pela CDBN em uma base de voz, podem ser utilizadas de forma bem-sucedida em outra base (i.e. transferência de aprendizado).

1.4

Organização

O Capítulo 2 introduz os conceitos e técnicas necessários para entender o modelo não-supervisionado profundo utilizado nos experimentos dessa dissertação. O Capítulo 3 apresenta alguns conceitos importantes de processamento de voz, além da descrição das bases de voz utilizadas e o pré-processamento que é aplicado em cada uma. O Capítulo 4 descreve os experimentos realizados para este trabalho, além dos seus resultados. O Capítulo 5 apresenta as conclusões e considerações finais deste trabalho.

(19)

18

2 MODELOS NÃO-SUPERVISIONADOS

Neste capítulo, iremos introduzir os conceitos e técnicas que serão usados nesta dissertação. Na Seção 2.1, apresentamos a Restricted Boltzmann Machine (RBM) (SMO-LENSKY, 1986), uma simplificação da Boltzmann Machine (ACKLEY; HINTON; SEJ-NOWSKI, 1985), que supera o problema da intratabilidade do treinamento do modelo original. Na Seção 2.2, introduzimos uma variação da RBM, chamada de Gaussian-Bernoulli RBM (HINTON; SALAKHUTDINOV, 2006), que lida com dados no domínio dos números reais (i.e. não binários). A Seção 2.3 apresenta um método através do qual uma RBM pode aprender uma representação sparse, isto é, uma representação com poucas unidades ativas para uma dada entrada. Na Seção 2.4, a Convolutional RBM (CRBM)(LEE et al., 2009a), uma modificação da RBM para torná-la mais escalável em problemas com dados de alta dimensionalidade (e.g. imagens) é apresentada. E por fim, na Seção 2.5, apresentamos um modelo não-supervisionado profundo, chamado Convolutional Deep Belief Network (CDBN) (LEE et al., 2009a), obtido ao se empilhar várias CRBMs.

2.1

Restricted Boltzmann Machine

A Restricted Boltzmann Machine (RBM) (SMOLENSKY, 1986) é um tipo de mo-delo gráfico probabilístico não-direcionado (KOLLER; FRIEDMAN, 2009), que representa um caso particular de uma Boltzmann Machine (BM) (ACKLEY; HINTON; SEJNOWSKI, 1985) e que possui duas camadas de unidades, as visíveis (observáveis) e as escondidas (latentes). O estado do modelo é denotado por dois vetores: v que armazena os estados das unidades visíveis, e h que armazena os estados das unidades escondidas. A RBM atribui uma energia (escalar) para cada configuração das unidades visíveis e escondidas, que é tradicionalmente definida como (no caso binário):

E(v, h) = − nv X i civinh X j bjhjnv X i nh X j viWijhj (2.1)

onde nv e nh são, respectivamente, o número total de unidades visíveis e o número total

de unidades escondidas. Wij é o peso da conexão entre a i-ésima unidade visível vi e

a j-ésima unidade escondida hj, e W é uma matriz simétrica (i.e. Wij = Wji). O bias

da i-ésima unidade visível é representado por ci, enquanto o bias da j-ésima unidade

escondida é denotado por bj. A probabilidade de uma dada configuração das unidades

visíveis e escondidas é definida em termos da energia desta configuração por

P (v, h) = e

−E(v,h)

(20)

Capítulo 2. Modelos Não-Supervisionados 19 h1 h2 h3 v1 v2 v3 h1 h2 h3 v1 v2 v3 BM RBM

Figura 1: Diferença entre a BM e a RBM. A RBM é um caso particular de uma BM, em que conexões entre unidades de uma mesma camada não são permitidas. À esquerda, vemos uma BM com 3 unidades visíveis e 3 unidades escondidas, e notamos que esse modelo permite qualquer tipo de conexão, exceto laços. À direita, temos uma RBM, com 3 unidades visíveis e 3 escondidas.

onde o fator de normalização Z = P

v,he−E(v,h) é conhecido como a função de partição,

e contém uma soma intratável sobre todas as configurações possíveis das unidades do modelo.

A ausência de conexões entre unidades da mesma camada, como pode ser visto na Fig. 1, nos permite obter expressões exatas para as probabilidades condicionais P (h|v) e

P (v|h), já que os estados das unidades visíveis são condicionalmente independentes dado

os estados das unidades escondidas, e vice-versa. Para a RBM padrão, as probabilidades condicionais são definidas como (ver (BENGIO, 2009) para derivação):

P (hj = 1|v) = sigmoid bj + nv X i Wijvi ! , (2.3) P (vi = 1|h) = sigmoid ci+ nh X j Wijhj ! , (2.4) onde sigmoid(x) = 1 1+e−x.

A representação da RBM (i.e. características extraídas) para um determinada entrada v é definida como o conjunto de condicionais marginais P (hj|v), e é obtida,

aplicando a Equação 2.3 para todas as unidades escondidas hj (de forma paralela).

O aprendizado em modelos probabilísticos é geralmente feito através da maximi-zação do log da verossimilhança dos dados. A verossimilhança de uma RBM é obtida a partir da Equação 2.2: P (v) =X h P (v, h) =X h e−E(v,h) Z , (2.5) onde P

h é uma soma sobre todas as possíveis configurações das unidades escondidas. Para

(21)

Capítulo 2. Modelos Não-Supervisionados 20

apresentamos o conceito de energia livre, definido como

F (v) = − logX

h

e−E(v,h), (2.6)

e reescrevemos a verossimilhança dos dados em função da energia livre

P (v) = e

−F (v)

Z , (2.7)

onde Z =P

ve−F (v).

A função de energia da RBM, definida na Equação 2.1, possui uma forma interes-sante, podendo ser reescrita como uma soma de termos que dependem de no máximo uma unidade escondida:

E(v, h) = −β(v) +X

j

γj(v, hj), (2.8)

onde β(v) =Pnv

i civi e γj(v, hj) = −(bj +PnivviWij)hj. Reescrevendo a energia livre em

termos de β(v) e γj(v, hj), temos F (v) = −β(v) −X j logX hj e−γj(v,hj), (2.9) onde P

hj é uma soma sobre todos os possíveis valores da unidade escondida hj (e.g.

hj ∈ {0, 1}, para unidades escondidas binárias).

Perceba que a segunda formulação da energia livre (Equação 2.9) é mais interessante do ponto de vista da eficiência computacional, se comparada com a primeira formulação (Equação 2.6). Enquanto na primeira formulação, temos um somatório com um número exponencial de termos, na segunda formulação, temos um somatório com um número de termos que cresce linearmente com o número de unidades escondidas. Portanto, devido à forma da função de energia da RBM (Equação 2.8), esse modelo permite um cálculo computacionalmente eficiente da energia livre dos dados, e por consequência, da verossimi-lhança (via Equação 2.7). A razão para a maior eficiência computacional da Equação 2.9 quando comparada à Equação 2.6 pode ser vista abaixo (para unidades binárias):

X h =X h1 X h2 . . .X hnh = X h1∈{0,1} X h2∈{0,1} . . . X hnh∈{0,1} X j X hj = nh X j=1 X hj∈{0,1} onde P

h é o somatório presente na Equação 2.6, que possui 2nh termos, enquanto

P

j

P

hj

(22)

Capítulo 2. Modelos Não-Supervisionados 21

Retornando ao cálculo da verossimilhança da RBM, obtemos a seguinte derivação:

P (v) = 1 Ze −F (v) = 1 Z X h e−E(v,h) = 1 Z X h1 X h2 · · ·X hnh eβ(v)−Pjγj(v,hj) = 1 Z X h1 X h2 · · ·X hnh eβ(v)Y j e−γj(v,hj) = e β(v) Z X h1 e−γ1(v,h1)X h2 e−γ2(v,h2)· · ·X hnh e−γnv(v,hnh) = e β(v) Z Y j X hj e−γj(v,hj) (2.10)

Calculada a verossimilhança (Equação 2.10), para um dado parâmetro do modelo

θ, temos a seguinte regra de atualização baseada na média do gradiente da energia sobre a

distribuição dos dados e sobre a distribuição do modelo: ∇θ ∝ * ∂E ∂θ + dados − * ∂E ∂θ + modelo (2.11)

As regras de atualização para os parâmetros da RBM são definidas como:

∇Wij ∝ hvihjidados− hvihjimodelo (2.12)

∇ci ∝ hviidados− hviimodelo

∇bj ∝ hhjidados− hhjimodelo

onde h·idata é a média sobre o conjunto de treinamento (distribuição dos dados) e h·imodelo é a média sobre a distribuição do modelo.

Podemos interpretar hvihjidados, por exemplo, como a frequência na qual a unidade

visível vi e a unidade escondida hj estão ambas ativas no conjunto de treinamento e

hvihjimodelo é essa mesma média calculada para a distribuição definida pelo modelo.

Na prática, o cálculo de h·idados depende da distribuição condicional P (h|v), en-quanto o cálculo de h·imodelo depende da distribuição conjunta P (v, h). Isto significa que, para o cálculo de ∇Wij, temos os seguintes termos:

hvihjidados= 1 N N X n=1 v(n)i P (hj = 1|v(n)) (2.13) hvihjimodelo = P (vi = 1, hj = 1) (2.14)

(23)

Capítulo 2. Modelos Não-Supervisionados 22

onde N representa o número de exemplos do conjunto de treinamento e v(n) representa o

n-ésimo exemplo de treinamento. A Equação 2.13, é facilmente calculada para a RBM,

através da Equação 2.3. Já a Equação 2.14, é intratável, devido à necessidade de cálculo da função de partição Z (observar a Equação 2.2).

A maneira ideal de treinar RBMs envolveria a maximização do log da verossimi-lhança, mas como acabamos de ver, o cálculo do gradiente do log da verossimilhança é intratável. Para fugir essa intratabilidade, métodos de aproximação desse gradiente foram criados, que na prática, fazem com que a maximização seja realizada em alguma outra função. Entre esses métodos de aproximação do gradiente, podemos citar: Contrastive

Di-vergence (HINTON, 2002), Score Matching (HYVÄRINEN, 2005) e Persistent Contrastive Divergence (TIELEMAN, 2008).

Cada um desses métodos de aproximação, ao tentar aproximar o gradiente do log da verossimilhança, acaba por calcular o gradiente de outra função, que geralmente é denominada da mesma forma. Portanto, podemos falar por exemplo, na maximização do contrastive divergence, ao invés da maximização do log da verossimilhança. Também é preciso deixar claro que essas técnicas não são algoritmos de aprendizagem. Um algoritmo de aprendizagem envolve necessariamente uma técnica de otimização, que determina como a maximização da função objetivo é realizada. Logo, quando falamos em aprendizado por

contrastive divergence (por exemplo), estamos nos referindo ao uso de qualquer técnica de

otimização baseada em gradiente (e.g. gradiente ascendente) para maximizar o contrastive

divergence (função a ser otimizada) dos dados. Nesta dissertação, utilizamos o contrastive divergence, porque apesar de ser um método simples, ele é o mais utilizado na literatura, e

no geral, apresenta bons resultados (HINTON, 2010).

Uma maneira simples, mas custosa de estimar h·imodelo é inicializar as unidades visíveis aleatoriamente e realizar uma amostragem de Gibbs por um longo período. Uma iteração (i.e. passo) da amostragem de Gibbs na RBM, consiste na atualização de todas as unidades escondidas em paralelo, utilizando a Equação 2.3, seguida da atualização de todas as unidades visíveis em paralelo utilizando a Equação 2.4. Na Figura 2, temos uma visualização da amostragem de Gibbs em uma RBM, que pode ser realizada por um número determinado de iterações.

Um procedimento bem mais rápido foi proposto em (HINTON, 2002), e chamado de contrastive divergence (CD). Neste procedimento, a inicialização das unidades visíveis não é feita de forma aleatória, e sim com um exemplo de treinamento, e o número de passos da amostragem de Gibbs costuma ser pequeno. O aprendizado com CD funciona bem na prática (HINTON, 2010), mesmo que a função aproximada não seja exatamente o log da verossimilhança dos dados. Utilizando CD, as regras de atualização dos parâmetros se tornam

(24)

Capítulo 2. Modelos Não-Supervisionados 23 h1 ∼ P (h|v2) v2 ∼ P (v|h1) h2 ∼ P (h|v2) h0 ∼ P (h|v0) v0 v1 ∼ P (v|h0)

Figura 2: Visualização da Amostragem de Gibbs alternada que é feita na RBM. A iniciali-zação das unidades visíveis v0 pode ser feita de forma aleatória, ou com uma amostra do conjunto de treinamento, como no caso do contrastive divergence. Algoritmo 1 Amostrador de Gibbs implementado para a RBM. O algoritmo recebe uma inicialização das unidades visíveis, aqui denotada por v0, e o número de passos utilizados

para a amostragem de Gibbs.

1: procedure GIBBS_SAMPLER(v0, k) 2: for i = 0 to k do 3: hi ∼ P (h|vi) 4: vi+1∼ P (v|hi) 5: end for 6: return vk 7: end procedure ∇ci ∝ hviidados− hviik ∇bj ∝ hhjidados− hhjik

onde h·ik representa a média em relação à distribuição de amostras obtidas ao executar um amostrador de Gibbs (definido usando as Equações 2.3 e 2.4) inicializado com os dados por k passos completos, como mostrado no Algoritmo 2. Se utilizarmos k = ∞, recuperamos o valor exato de h·imodelo, porém, k = 1, também conhecido como CD-1, se mostrou suficiente para um grande número de aplicações (HINTON; SALAKHUTDINOV, 2006).

A RBM apresentada é conhecida como RBM padrão, ou ainda Bernoulli-Bernoulli RBM, pois possui tanto a camada visível como a camada escondida com unidades es-tocásticas binárias. Essa formulação é contrastada com RBMs que possuem unidades visíveis que podem assumir valores reais, que, quando modeladas por uma distribuição gaussiana, são chamadas de Gaussian-Bernoulli RBM (Seção 2.2). Muitas outras variações da RBM padrão foram criadas, principalmente com os objetivos de melhor modelar valores reais nas unidades visíveis, ou de melhor modelar a variância dos dados, como a Mean

and Covariance RBM (mcRBM) (RANZATO; HINTON, 2010) e a Spike-and-Slab RBM

(ssRBM) (COURVILLE; BERGSTRA; BENGIO, 2011), porém a única variante que é de interesse para esta dissertação é a Gaussian-Bernoulli RBM, pois o seu entendimento serve de base para entender a Convolutional RBM (LEE et al., 2009a) com entradas reais.

(25)

carac-Capítulo 2. Modelos Não-Supervisionados 24

Algoritmo 2 Contrastive Divergence. Esse algoritmo aproxima o gradiente do log da verossimilhança, ao inicializar um amostrador de Gibbs com uma amostra do conjunto de treinamento. O número de passos k, utilizados na amostragem de Gibbs, afeta o grau de proximidade da distribuição verdadeira. O algoritmo recebe o conjunto de treinamento D, e o número de passos completos da amostragem de Gibbs k.

1: procedure Contrastive Divergence (D, k) 2: Inicialize ∇W, ∇b, ∇c com zeros

3: for n = 1 to N do 4: v0 = D[n] 5: vk= GIBBS_SAMPLER(v0, k) 6: ∇W = ∇W + P (h|v0)(v0)T − P (h|vk)(vk)T 7: ∇b = ∇b + P (h|v0) − P (h|vk) 8: ∇c = ∇c + v0− vk 9: end for 10: return ∇W/N, ∇b/N, ∇c/N 11: end procedure

terísticas e deep learning foi imenso, e ela foi usada em uma vasta gama de aplicações, incluindo redução de características (HINTON; SALAKHUTDINOV, 2006), classificação de imagens de fMRI (SCHMAH et al., 2008) e modelagem de imagens naturais (RANZATO; HINTON, 2010) (BENGIO; COURVILLE; BERGSTRA, 2011).

A RBM é utilizada como bloco de construção para modelos não-supervisionados profundos, como a Deep Belief Network (DBN) (HINTON; OSINDERO; TEH, 2006) e a Deep Boltzmann Machine (DBM) (SALAKHUTDINOV; HINTON, 2009), pois ela compartilha parâmetros com as camadas desses modelos, e porque o treinamento de uma RBM pode ser realizado de forma eficiente (i.e. em tempo hábil).

Para um tratamento mais completo de RBMs, indicamos as seguintes referências: (BENGIO, 2009), (KRIZHEVSKY; HINTON, 2009) e (HINTON, 2010).

2.2

Gaussian-Bernoulli RBM

A RBM padrão, que possui unidades visíveis binárias, não é adequada para modelar dados com valores reais (e.g. imagens naturais). A abordagem mais comum para tratar de valores reais é modelar as unidades visíveis como distribuições Gaussianas, como é feito na

Gaussian-Bernoulli RBM (GBRBM) (HINTON; SALAKHUTDINOV, 2006). A função da

energia de uma GBRBM é tradicionalmente definida como (KRIZHEVSKY; HINTON, 2009): E (v, h) = nv X i=1 (vi− ci)2 2 inh X j=1 bjhjnv X i=1 nh X j=1 Wijhj vi σi (2.16)

(26)

Capítulo 2. Modelos Não-Supervisionados 25

onde σi é o desvio padrão associado à unidade visível vi. Para essa formulação obtemos as

seguintes distribuições condicionais:

P (hj = 1|v) = sigmoid bj + X i Wij vi σi ! , (2.17) P (vi = v|h) = N ci+ σi X j hjWij, σi2 ! , (2.18)

onde N (µ, σ2) denota a função densidade de probabilidade de uma distribuição Gaussiana

com média µ e variância σ2.

O treinamento de GBRBMs pode ser feito da mesma forma da RBM padrão, utilizando contrastive divergence, porém com regras de atualização ligeiramente diferentes (ver (KRIZHEVSKY; HINTON, 2009) para derivação):

∇Wij ∝  1 σi vihj  data − 1 σi vihj  model , (2.19) ∇bj ∝ hhjidata− hhjimodel, ∇ci ∝ * 1 σ2 i vi + data − * 1 σ2 i vi + model , A variância σ2

i de cada unidade visível também pode ser aprendida (KRIZHEVSKY;

HINTON, 2009)(CHO; ILIN; RAIKO, 2011), porém, devido à dificuldade deste aprendizado, ela costuma ser escolhida previamente (e.g. variância unitária), e mantida fixa durante o treinamento (HINTON; SALAKHUTDINOV, 2006).

A formulação da GBRBM apresentada, não é a única, e algumas outras variantes também são vistas na literatura (LEE; EKANADHAM; NG, 2008) (CHO; ILIN; RAIKO, 2011). Apesar das pequenas diferenças em suas funções de energia (e por consequência, nas distribuições condicionais e regras de atualização), todas elas modelam as unidades visíveis como distribuições Gaussianas.

2.3

Sparse RBM

Com o aumento do poder computacional das máquinas atuais, modelos maiores (i.e. mais parâmetros) começaram a ser utilizados, porém quando se aumenta o tamanho do modelo, costuma-se gerar representações overcomplete, ou seja, ao invés de haver redução de características, como no caso de técnicas clássicas, temos um aumento no seu número (e.g. camadas escondidas de uma rede neural com um enorme número de unidades). Isso pode ser um problema, pois em geral, modelos overcomplete possuem o risco de aprender soluções triviais (e.g. detectores de características representando um único pixel).

(27)

Capítulo 2. Modelos Não-Supervisionados 26

(a)

(b)

(c)

Figura 3: Diferentes tipos de representações. Visualizamos três vetores de características, onde cada característica tem valor entre 0 (preto) e 1 (branco). (a) Representação distribuída, várias unidades são ativadas para uma dada entrada; (b) Represen-tação sparse, onde poucas unidades são ativadas para uma dada entrada; (c) Representação localizada, que é um caso extremo da representação sparse, onde apenas uma unidade pode ser ativada para cada entrada.

Uma solução comum para esse problema é forçar a representação à ser sparse, ou seja, apenas uma pequena fração das unidades escondidas devem estar ativas para uma dada entrada. Lee et al. implementaram a sparsity em uma RBM (LEE; EKANADHAM; NG, 2008) adicionando um regularizador na função objetivo (log da verossimilhança) que faz com que cada grupo de unidades escondidas tenha uma ativação média próxima de uma pequena constante. Nesse mesmo artigo, o seguinte termo foi adicionado à regra de atualização usada no contrastive divergence, e funciona bem na prática:

∇bsparsity = ρ − 1 nh nh X j P (hj = 1|v) (2.20)

onde ρ é o sparsity target. Uma forma interessante para interpretar e escolher ρ (obtida em (SOHN et al., 2011)), é perceber que esse parâmetro pode controlar quantas unidades escondidas são ativadas (em média), para uma entrada qualquer. Podemos então escrever

ρ como:

ρ = α nh

(2.21) onde α representa quantas unidades em média, se quer que estejam ativas para uma entrada qualquer. Então, por exemplo, se houver 10 unidades escondidas no modelo, e quisermos que em média apenas 2 estejam ativas, teremos ρ = 2/10 = 0.2. Dessa forma, a escolha de ρ passa indiretamente pela escolha de α, e se torna mais intuitiva.

A única alteração necessária à uma RBM simples treinada com CD para que ela se torne uma sparse RBM é que a regra de atualização dos biases das unidades escondidas seja alterada para:

∇btotal

(28)

Capítulo 2. Modelos Não-Supervisionados 27

onde ∇bj é o termo padrão, obtido pelo contrastive divergence, e λ representa a sparsity

cost, e serve para controlar o peso do termo que encoraja a sparsity no gradiente total

∇btotal

j . A escolha de λ é feita manualmente, de modo à permitir que o sparsity target

seja atingido, porém sem eliminar a possibilidade de variação na média das ativações dependendo da entrada.

Uma sparse RBM, como definida em (LEE; EKANADHAM; NG, 2008), é portanto, uma RBM que é treinada com um regularizador simples (afetando apenas o bias das unidades escondidas) que encoraja a ativação média das unidades escondidas à ser baixa.

2.4

Convolutional RBM

Os modelos que não utilizam compartilhamento de pesos, como a RBM padrão, ou mesmo modelos profundos como a Deep Belief Network (HINTON; OSINDERO; TEH, 2006) e a Deep Boltzmann Machine (SALAKHUTDINOV; HINTON, 2009), ignoram a estrutura 2-D das imagens, então uma dada característica tem que ser aprendida separadamente para diferentes localizações da entrada. Essa redundância faz com que esses modelos não sejam escaláveis para imagens reais. Nessa Seção, introduzimos a

Convolutional RBM (LEE et al., 2009a), um modelo cujos pesos são compartilhados entre

todas os pontos de uma imagem, e cuja escalabilidade é obtida usando a operação de convolução para aumentar a eficiência do modelo.

Para facilitar o entendimento deste modelo, o apresentaremos utilizando algumas premissas simplificadoras. Assumiremos que as entradas do modelo são imagens nv× nv,

mesmo não havendo um requisito quanto às dimensões dos dados. Também assumiremos que todas as unidades são binárias, embora modificar a formulação para usar unidades visíveis Gaussianas é simples. A título de notação, utilizaremos ∗ para denotar a operação de convolução, usaremos • para representar a multiplicação elemento a elemento seguida de soma (i.e. A • B = trATB), e por fim, nós faremos uso de um til sobre um array ( ˜A)

para indicar que ele foi virado horizontal e verticalmente.

A CRBM é uma variação da RBM, na qual os pesos entre as unidades visíveis e escondidas são compartilhados entre todas as posições de uma imagem (i.e weight

sharing). Uma CRBM básica consiste de duas camadas: uma camada visível (de entrada)

V e uma camada escondida H. A camada visível consiste em uma matriz nv × nv de

unidades binárias, enquanto a camada escondida é formada por K grupos (i.e. mapas de características), onde cada grupo é uma matriz nh× nh de unidades binárias, resultando

em n2hK unidades escondidas no total. Cada um dos K grupos está associado à filtro nw× nw (nw = nv − nh+ 1), e os pesos de cada filtro são compartilhados com todas as

unidades escondidas pertencentes ao grupo. Além disso, cada um desses grupos possui um

(29)

Capítulo 2. Modelos Não-Supervisionados 28 nv nv nw nw K W H V

Camada Visível Filtros Camada Escondida

K

nh

nh

Figura 4: Visualização das camadas de uma Convolutional RBM. A camada visível é tratada aqui como uma imagem com dimensões nv × nv. O modelo possui K

filtros Wk, onde o conjunto de filtros é denotado por W . A camada escondida é

formada por K mapas de características Hk, onde cada mapa tem o tamanho

nh× nh, e o conjunto de mapas de características é representado por H.

Utilizando essa formulação simplificada, a função de energia da CRBM é definida como (LEE et al., 2009a):

E(v, h) = −c nv X i,j=1 vijK X k=1 bk nh X i,j=1 hkijK X k=1 nh X i,j=1 nw X r,s=1 hkijWrskvi+r−1,j+s−1 (2.23)

e utilizando os operadores definidos previamente para simplificar a notação, temos:

E(v, h) = −c nv X i,j vijK X k=1 bk nh X i,j hki,jK X k=1 hk•W˜k∗ v (2.24)

As distribuições condicionais tem uma forma similar à da RBM padrão:

P (hkij = 1|v) = sigmoid  ˜ Wk∗ v ij+ bk  , (2.25) P (vij = 1|h) = sigmoid   X k Wk∗ hk ! ij + c  , (2.26)

2.4.1

Probabilistic max-pooling

Para aprender representações de alto nível, nós empilhamos CRBMs em uma arquitetura multicamada, que é semelhante a uma DBN. Embora o conceito de CRBM

(30)

Capítulo 2. Modelos Não-Supervisionados 29

tenha sido desenvolvido por múltiplos pesquisadores mais ou menos ao mesmo tempo (LEE et al., 2009a) (DESJARDINS; BENGIO, 2008) (NOROUZI; RANJBAR; MORI, 2009), a CRBM desenvolvida em (LEE et al., 2009b) possui um diferencial interessante. Ela utiliza a operação chamada probabilistic max-pooling.

Normalmente, detectores de características de mais alto nível, precisam de informa-ção sobre partes cada vez maiores dos dados de entrada. Redes convolucionais (LECUN

et al., 1998) geram representações com uma certa invariância à translação, e costumam

possuir dois tipos de camadas alternadas: camadas de detecção, onde um extrator de características (i.e. filtro) é aplicado através da sua convolução com a camada anterior, e camadas de pooling, que reduzem a dimensionalidade das camadas de detecção (por um fator constante). A operação de pooling mais utilizada na literatura é a de max-pooling, onde cada unidade da camada de pooling computa a ativação máxima das unidades em uma pequena região da camada de detecção. Essa redução de dimensionalidade decorrente do

max-pooling faz com que camadas posteriores possuam invariância à pequenas translações

nos dados de entrada, e ao reduzir o número de características passadas para próxima camada do modelo hierárquico, reduzem o custo computacional.

O max-pooling foi desenvolvido para redes feed-forward e determininísticas, e é esse determinismo que dificulta a realização de inferência probabilística. O modelo hierárquico multicamada proposto em (LEE et al., 2009b) é generativo, e portanto deve possuir um procedimento de inferência probabilística completo. Logo, nesse mesmo artigo, a operação de probabilistic max-pooling foi proposta como uma versão probabilística da operação de

max-pooling.

Para entender essa operação, considere um modelo com uma camada visível V , uma camada de detecção H e uma camada de pooling P , como mostrado na Figura 5. Existem K filtros na CRBM, e para título desta explicação, chamaremos um desses filtros de Wk. Cada filtro Wk, será utilizado para gerar um mapa de características Hk, que nada mais é do que um dos K grupos que formam a camada escondida. Como dito nesta Seção, queremos agora realizar algum tipo de operação de pooling, que reduzirá o tamanho de cada grupo Hk, e por consequência, o tamanho de H. Cada um dos grupos Hk, será

mapeado para uma camada de pooling Pk, fazendo com que o número de grupos não seja

modificado (i.e. só o tamanho de cada mapa de característica é reduzido).

Na prática, cada mapa de característica Hk é particionado em blocos de tamanho

C × C (para simplificar), onde C é um número geralmente pequeno (e.g. 2 ou 3), de modo

à limitar a quantidade de informação perdida. Cada bloco α, é conectado a uma única unidade pk

α em Pk (i.e. np = nh/C). Para formalizar, definimos a vizinhança que pertence

ao bloco α como: Bα = {(i, j) : hij pertence ao bloco α}.

As unidades de detecção no bloco Bα e a unidade de pooling pα são conectadas

(31)

Capítulo 2. Modelos Não-Supervisionados 30 pkα V (camada visível) Hk (camada de detecção) Pk (camada de pooling) Wk hk ij

Figura 5: Visualização do probabilistic max-pooling em CRBMs. Nos restringimos aqui apenas ao grupo k, para facilitar o entendimento. Observamos o filtro Wk sendo

aplicado em um dado pedaço da imagem (durante a operação de convolução), e gerando a unidade escondida hkij. Essa unidade faz parte da vizinhança Bα (no

caso da imagem, uma vizinhança 2 × 2), que é usada para obter pk α.

unidades de detecção presentes no grupo pode estar ativa, e a unidade de pooling é ativada, se e somente se, uma das unidades de detecção estiver ativa. Com essa restrição, podemos considerar essas C2 + 1 unidades como uma única variável aleatória (softmax), que pode

possuir C2+ 1 valores possíveis: um valor para cada unidade de detecção estar ativa, e um

valor indicando quando nenhuma está ativa. Podemos ver que essa operação é basicamente um max-pooling padrão, aplicado após a operação que restringe a ativação das unidades de detecção.

A função de energia dessa versão simplificada do CRBM com probabilistic

max-pooling é definida como:

E(v, h) = −X k X i,j (hkij( ˜Wk∗ v)ij + bkhkij) − c X i,j vij onde X (i,j)∈Bα hkij ≤ 1, ∀k, α (2.27)

Para realizar amostragem da camada de detecção H e da camada de pooling P , dada a camada visível V , note que as unidades escondidas do mapa de características Hk recebem o seguinte sinal da camada V :

I(hkij) ≡ bk+ ( ˜Wk∗ v)ij. (2.28)

Com essa informação, nós realizamos amostragem em cada bloco α, de cada mapa de características Hk, de forma independente, como uma função multinomial de suas

(32)

Capítulo 2. Modelos Não-Supervisionados 31

entradas. Supondo que hk

ij é uma unidade escondida do mapa de características Hk,

pertencente ao bloco α (i.e. (i, j) ∈ Bα), ela tem sua probabilidade condicional dada por:

P (hkij = 1|v) = exp(I(h k ij)) 1 +P (i0,j0)∈B αexp(I(h k i0j0)) (2.29) P (pkα = 0|v) = 1 1 +P (i0,j0)∈B αexp(I(h k i0j0)) (2.30) Na prática, (LEE et al., 2009a) implementa esse procedimento da seguinte forma: toda a camada H é particionada em blocos (essa operação deve ser reversível), onde cada bloco é processado de forma independente (em paralelo) e as variáveis aleatórias hk

ij e pkα

em cada bloco α são amostradas a partir de uma distribuição multinomial. A amostragem da camada visível V dada a camada escondida H pode ser realizada utilizando a Equação 2.26.

2.4.2

Treinamento com regularização de sparsity

A CRBM é overcomplete, pois o tamanho da representação é bem maior que o tamanho da entrada. De fato, como a camada escondida possui K mapas de características, e cada um desses mapas tem aproximadamente o tamanho da imagem de entrada (se os filtros Wk forem pequenos), o modelo é overcomplete por um fator K. Como já explicado

na Seção 2.3, uma solução para isto é criar uma representação sparse. Utilizando a Equação 2.20 e a adaptando para uma CRBM, temos:

∇bsparsityk = ρ − 1 n2 h X ij P (hkij = 1|v) (2.31) e o ∇btotal

k pode ser definido da mesma forma da Equação 2.22.

A CRBM pode ser treinada usando contrastive divergence como já explicado na Seção 2.1, com a diferença de que cada imagem de entrada será considerado um minibatch. Isso ocorre, porque os filtros são aplicados em diferentes pedaços da imagem (através da operação de convolução), e esses pedaços (i.e. patches), são considerados os exemplos presentes no minibatch. Dessa forma a média deve ser calculada sobre o número de pedaços retirados de cada imagem, valor que é equivalente ao número de unidades escondidas em um dado mapa de características Hk, i.e. n2

h.

2.5

Convolutional Deep Belief Network

Uma Convolutional Deep Belief Network (CDBN) (LEE et al., 2009a) é um modelo generativo hierárquico para dados com altas dimensões, como imagens e áudio. A sua

(33)

Capítulo 2. Modelos Não-Supervisionados 32 v h1 h2 h3 v h1 h2 h3 DBN DBM

Figura 6: Diferença entre a DBN e a DBM. A DBN só possui conexões não-direcionadas na última camada (portanto não se pode dizer que a DBN é formada por RBMs empilhadas), enquanto a DBM (e a CDBN), possui conexões não-direcionadas em todas as camadas.

arquitetura consiste em várias CRBMs empilhadas uma em cima da outra. O modelo define sua função de energia através da soma das funções de energia de cada par de camadas, e o treinamento é realizado de forma gulosa, camada a camada. Uma vez que uma camada é treinada, seus pesos são fixados, e suas ativações são usadas como entrada para a próxima camada.

A CDBN utiliza conexões não-direcionadas, o que curiosamente, a torna mais semelhante à uma Deep Boltzmann Machine (SALAKHUTDINOV; HINTON, 2009) do que à uma Deep Belief Network (DBN) (HINTON; OSINDERO; TEH, 2006), que só utiliza conexões não-direcionadas entre as últimas duas camadas, como mostrado na Fig. 6. Na abordagem utilizada em (LEE et al., 2009a), o probabilistic max-pooling ajuda à tratar problemas de escalabilidade, ao reduzir a dimensão das camadas superiores. Além disso, o compartilhamento de pesos (implementado com convoluções) aumenta ainda mais a velocidade do algoritmo.

2.5.1

Inferência probabilística hierárquica

Uma vez que os parâmetros foram todos aprendidos, nós podemos computar a representação do modelo para uma dada entrada fazendo uma amostragem da distribuição conjunta sobre todas as camadas escondidas, condicionadas à entrada. Para realizar a amostragem dessa distribuição, nós usamos a amostragem de Gibbs, onde as unidades de cada camada são amostradas de forma paralela.

(34)

Capítulo 2. Modelos Não-Supervisionados 33

Para ilustrar esse procedimento, nós descreveremos aqui um caso com uma ca-mada visível V , uma caca-mada de detecção H, uma caca-mada de pooling P , e uma caca-mada subsequente de detecção H0. Supondo que H0 possui K0 grupos de unidades, e existe um conjunto de pesos compartilhados Γ = {Γ1,1, . . . , ΓK,K0} onde Γk,l é uma matriz de pesos

(i.e. filtro) que conecta a camada de pooling Pk à camada de detecção H0l.

A função de energia para essa sub-rede consiste em dois tipos de potenciais: termos unários para cada grupo nas camadas de detecção e termos de interação entre V e H e entre P e H0 (nós eliminamos aqui termos que não dependem de h e p, para simplificar):

E(v, h, p, h0) = −X k bk X ij hkij−X k v • (Wk∗ hk) −X l b0lX ij h0ijl−X k,l pk• (Γkl∗ h0l) (2.32)

Para fazer amostragem da camada de detecção H e da camada de pooling P , note que a camada de detecção H0 recebe o seguinte sinal de entrada da camada V :

I(hkij) ≡ bk+ ( ˜Wk∗ v)ij (2.33)

e a camada de pooling Pk recebe o seguinte sinal da camada superior H0:

I(pkα) ≡X

l

kl∗ h0l)

α (2.34)

.

Agora nós realizamos amostragem em cada um dos blocos de forma independente utilizando uma função multinomial das suas entradas.

P (hkij = 1|v, h0) = exp(I(h k ij) + I(pkα)) 1 +P (i0,j0)∈B αexp(I(h k i0j0) + I(pkα)) (2.35) P (pkα = 0|v, h0) = 1 1 +P (i0,j0)∈B αexp(I(h k i0j0) + I(pkα)) (2.36) Uma alternativa ao uso da amostragem de Gibbs para calcular a distribuição a posteriori, é utilizar a aproximação via mean-field (e.g. (SALAKHUTDINOV; HINTON, 2009)), que possui um algoritmo idêntico à amostragem de Gibbs, porém sem realizar a amostragem propriamente dita, ou seja, é uma versão determininística da amostragem de Gibbs. Em todos nossos experimentos, nessa dissertação, nós utilizamos a aproximação via mean-field para estimar a representação de uma CDBN dada a entrada.

(35)

34

3 PROCESSAMENTO DE VOZ

Neste capítulo, faremos uma breve apresentação de representações para os dados de voz, assim como descrição das bases utilizadas. Na Seção 3.1, introduzimos duas representações para o sinal de voz que são relevantes para esta dissertação. Na Seção 3.2, descrevemos as bases de áudio utilizadas nos experimentos. E por fim, na Seção 3.3, apresentaremos quais métodos foram utilizados para preprocessar os dados de cada uma das bases utilizadas.

3.1

Representações para o Sinal de Voz

Nesta seção iremos descrever duas representações para o sinal de voz que são importantes para esta dissertação: o sinal de voz digitalizado e o espectrograma de voz. Também introduzimos brevemente a Análise de Tempo Curto, método muito usado para analisar o sinal de voz e que serve de base para a obtenção do espectrograma. O sinal de voz é um sinal acústico, sendo inerentemente analógico e contínuo, portanto todas as representações aqui discutidas partem do pressuposto de que esse sinal deve ser convertido para uma representação digital, de modo que a análise dessa representação possa ser feita com os sistemas digitais atuais (i.e. computadores).

3.1.1

Sinal de voz digitalizado

A representação mais simples para um sinal de voz (acústico) está relacionada com a própria conversão analógico/digital deste sinal. Neste processo de conversão, estamos preocupados em reproduzir a forma de onda do sinal acústico em um meio digital. Existem várias maneiras de codificar essa forma de onda, e entre elas podemos citar: Pulse Code

Modulation (PCM), Delta Modulation (DM) e Differential Pulse Code Modulation (DPCM)

(OPPENHEIM et al., 1989). Todos os métodos de digitalização se baseiam no Teorema da Amostragem de Shannon, que estabelece que qualquer sinal limitado em banda pode ser completamente especificado pelas suas amostras, se o processo de amostragem obedecer ao seguinte requisito:

fs≥ 2fm (3.1)

onde fs representa a taxa de amostragem, ou o número de amostras obtidas por segundo,

e fm representa a frequência máxima presente no sinal acústico. Isto significa que mesmo

que o sinal seja contínuo (como é o caso do sinal acústico), se obtivermos amostras desse sinal com uma certa taxa de amostragem, não haverá perda de informação, e o conjunto de amostras poderá ser usado para recuperar fielmente o sinal analógico original.

(36)

Capítulo 3. Processamento de Voz 35

Figura 7: Amostragem da amplitude de um sinal analógico em intervalos regulares e uniformes.

Figura 8: Etapa de quantização. Após discretizar o conjunto de infinitos valores possíveis para a amplitude do sinal, arrendondamos cada amostra para um dos valores definidos (o mais próximo). A quantização neste exemplo é uniforme (intervalo entre valores de amplitude é o mesmo).

O PCM é o método padrão de conversão analógico/digital, sendo usado por vários tipos de mídia (e.g. computadores, CDs, DVDs, etc). Ele envolve três etapas: amostragem, quantização e codificação.

Na etapa de amostragem obtemos amostras da magnitude do sinal analógico, em intervalos regulares e uniformes, como mostrado na Figura 7. Obedecendo ao teorema da amostragem de Shannon, precisamos utilizar uma taxa de amostragem de no mínimo o dobro da maior frequência presente no sinal analógico, portanto, para um sinal de voz com frequência máxima de 8kHz, devemos ter uma taxa de amostragem de 16kHz. Com a escolha adequada da taxa de amostragem, podemos eliminar a perda de informação nesta etapa.

Após a etapa de amostragem, temos a etapa de quantização, onde discretizamos os possíveis valores de amplitude do sinal. Observando a Figura 8, podemos ver que essa discretização é feita ao se definir um conjunto discreto de possíveis amplitudes (na prática, níveis de voltagem do sinal elétrico), e arredondando os valores originais para os valors mais próximos presentes nesse conjunto. A etapa de quantização apresenta uma inerente perda de informação devido à aproximação feita nos valores da amplitude.

Na etapa de codificação, fazemos um mapeamento dos níveis discretos de amplitude obtidos pela etapa de quantização para uma representação binária, que pode ser armazenada e processada de forma eficiente por sistemas digitais.

Referências

Documentos relacionados

Municiado do inicial aporte histórico-antropológico, os capítulos seguintes operarão certo desmembramento do blues em eixos que consideramos igualmente imprescindíveis pois,

Mesmo com suas ativas participações na luta política, as mulheres militantes carregavam consigo o signo do preconceito existente para com elas por parte não somente dos militares,

Outro aspecto a ser observado é que, apesar da maioria das enfermeiras referirem ter aprendido e executado as fases do processo na graduação, as dificuldades na prática

Our contributions are: a set of guidelines that provide meaning to the different modelling elements of SysML used during the design of systems; the individual formal semantics for

O presente trabalho tem como objetivo geral caracterizar as comunidades de invertebrados terrestres associadas a nove cavidades naturais localizadas no município

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

São considerados custos e despesas ambientais, o valor dos insumos, mão- de-obra, amortização de equipamentos e instalações necessários ao processo de preservação, proteção

As variáveis peso, estatura e circunferência da cintura apresentaram valores médios superiores aos homens em relação as mulheres, sendo o inverso observado para índice