16
Sphinx Voxforge Pt-Br Treinando um modelo acústico para o toolkit CMU Sphinx com o corpus de fala Voxforge

Treinamento com SphinxTrain

Embed Size (px)

Citation preview

Page 1: Treinamento com SphinxTrain

Sphinx ⇔ Voxforge Pt-BrTreinando um modelo acústico para o toolkit CMU Sphinx com o corpus de fala Voxforge

Page 2: Treinamento com SphinxTrain

O que precisamos para treinar?

● Arquivos de áudio○ e suas respectivas transcrições○ Arquivos .raw, .sph, .wav○ <s> amanhã chove forte </s>

● Dicionário fonético○ e um alfabeto fonético○ mapeamento palavra ⇔ sequência de fonemas

● Modelo Linguístico○ necessário para a avaliação do modelo

Page 3: Treinamento com SphinxTrain

CMU Sphinx Toolkit

● Pocketsphinx○ reconhecedor leve (em C)

● Sphinxbase○ biblioteca de suporte ao Pocketsphinx

● Sphinx4○ reconhecedor flexível e customizável (em Java)

● Sphinxtrain○ ferramenta de treinamento de modelo acústicos

● Sphinx3○ reconhecedor desatualizado (em C)

● CMUclmtk○ toolkit para o treinamento do modelo linguístico

Page 4: Treinamento com SphinxTrain

Pré-requisitos...

● Perl○ ActivePerl no Windows○ Linux

~$ sudo apt-get install perl (debian-based)~$ sudo yum install perl (RPM repo-based)

● Python○ ActivePython no Windows○ Linux

~$ sudo apt-get install python (debian-based)~$ sudo yum install python (RPM repo-based)

Page 5: Treinamento com SphinxTrain

Agora vamos instalar...

● baixe os pacotes .tar.gz …○ sphinxbase-0.8○ pocketsphinx-0.8○ sphinxtrain-1.0.8

● extrair os pacotes e entrar no diretório…~$ tar -zxf <pacote-x.x>

~$ cd <pacote-x.x>/

● executar os comandos...~$ ./autogen.sh

~$ ./configure

~$ make

~$ make install

Page 6: Treinamento com SphinxTrain

Variáveis de ambiente...export PATH=/usr/local/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/lib

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

Page 7: Treinamento com SphinxTrain

Estrutura das pastas

❏ etc❏ nome_db.dic❏ nome_db.phone❏ nome_db.lm.DMP❏ nome_db.filler❏ nome_db_train.fileids❏ nome_db_train.transcription❏ nome_db_test.fileids❏ nome_db_test.transcription

❏ wav❏ speaker_1

❏ file_1.wav❏ speaker_2

❏ file_2.wav

Page 8: Treinamento com SphinxTrain

Voxforge

● Repository voxforge Pt - 16kHz, 16bit● Pacotes .tgz para cada locutor

○ etc■ prompts

○ wav■ arquivos .wav

Page 9: Treinamento com SphinxTrain

Preparando os diretórios...

● baixar e executar scripts~$ git clone https://github.com/gabrielaraujof/voxforge2sphinxPtBr.git scripts

~$ chmod +x scripts/setupam.py

~$ ./scripts/setupam.py -s <base extraida> voxforge

● Copiar os arquivos (disponível aqui)○ voxforge.dic (**converter para iso-8859-1)○ voxforge.phone○ voxforge.filler

● Converter e copiar o modelo linguístico○ voxforge.lm.DMP (formato ARPA aqui)

Page 10: Treinamento com SphinxTrain

Configurar Sphinxtrain...

● De dentro da pasta configurada, executar…~$ sphinxtrain -t <nome do modelo> setup

● Editar parâmetros de treinamento…○ arquivo etc/sphinx_train.cfg

$CFG_HMM_TYPE

$CFG_INITIAL_NUM_DENSITIES

$CFG_FINAL_NUM_DENSITIES

$CFG_N_TIED_STATES

● Executar o trainamento...~$ sphinxtrain run

Page 11: Treinamento com SphinxTrain

Logs do treinamento...

● Arquivo <nome da base>.html○ links para os logs de cada fase do treinamento○ indicações de erros○ resultado da avaliação do modelo

Page 12: Treinamento com SphinxTrain

Resumindo...

● Executar~$ ./scripts/setupam.py -s <base raw> <modelo>

● Copiar restante dos arquivos● Executar

~$ sphinx_train setup <modelo>

● modificar parâmetros● Executar

~$ sphinx_train run

Page 13: Treinamento com SphinxTrain

Observações

● Locutores incompatíveis○ áudios e transcrições em inglês

● Palavras fora do dicionário○ quinta-feira○ fim-de-semana

Page 16: Treinamento com SphinxTrain

Dúvidas e contato

E-mail: [email protected]