Você está na página 1de 16

Sphinx Voxforge Pt-Br

Treinando um modelo acstico para o toolkit


CMU Sphinx com o corpus de fala Voxforge

O que precisamos para treinar?


Arquivos de udio
e suas respectivas transcries
Arquivos .raw, .sph, .wav
<s> amanh chove forte </s>

Dicionrio fontico
e um alfabeto fontico
mapeamento palavra sequncia de fonemas

Modelo Lingustico
necessrio para a avaliao do modelo

CMU Sphinx Toolkit


Pocketsphinx

reconhecedor leve (em C)

Sphinxbase

biblioteca de suporte ao Pocketsphinx

Sphinx4

reconhecedor flexvel e customizvel (em Java)

Sphinxtrain

ferramenta de treinamento de modelo acsticos

Sphinx3

reconhecedor desatualizado (em C)

CMUclmtk

toolkit para o treinamento do modelo lingustico

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)

Agora vamos instalar...


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

extrair os pacotes e entrar no diretrio


~$ tar -zxf <pacote-x.x>
~$ cd <pacote-x.x>/

executar os comandos...
~$ ./autogen.sh
~$ ./configure
~$ make
~$ make install

Variveis de ambiente...
export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

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

Voxforge
Repository voxforge Pt - 16kHz, 16bit
Pacotes .tgz para cada locutor
etc
prompts
wav
arquivos .wav

Preparando os diretrios...
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 (disponvel aqui)


voxforge.dic (**converter para iso-8859-1)
voxforge.phone
voxforge.filler

Converter e copiar o modelo lingustico


voxforge.lm.DMP (formato ARPA aqui)
Primeiramente deve-se ordernar com o comando: sphinx_lm_sort < 3gram.lm > 3gram_sorted.lm

Configurar Sphinxtrain...
De dentro da pasta configurada, executar
~$ sphinxtrain -t <nome do modelo> setup

Editar parmetros 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

Logs do treinamento...
Arquivo <nome da base>.html
links para os logs de cada fase do treinamento
indicaes de erros
resultado da avaliao do modelo

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

Copiar restante dos arquivos


Executar
~$ sphinx_train setup <modelo>

modificar parmetros
Executar
~$ sphinx_train run

Observaes
Locutores incompatveis
udios e transcries em ingls

Palavras fora do dicionrio


quinta-feira
fim-de-semana

Resultados
Modelo acstico Sphinx

Referncia
http://cmusphinx.sourceforge.
net/wiki/tutorialam

Dvidas e contato
E-mail: gabrielfa@dcomp.ufs.br

Você também pode gostar