Peter H. Grasch
2
Conteúdo 1 Introdução 6 1.1 Plano de fundo....................................... 6 1.1.1 Testes efetivos.................................... 6 2 Usando o Sam 7 2.1 Arquivos de entrada e saída................................ 7 2.2 Treinamento conservador................................. 9 2.3 Adaptar os cenários..................................... 10 2.4 Criar o modelo........................................ 11 2.5 Testar o modelo....................................... 12 2.6 Resultados do teste..................................... 13 2.6.1 Pontuação...................................... 13 2.6.2 Palavra........................................ 13 2.6.3 Frases........................................ 14 2.6.4 Arquivos....................................... 15 2.6.5 Registro....................................... 15 2.7 Relatórios.......................................... 16 2.7.1 Modelos....................................... 16 2.7.2 Fornecendo metadados.............................. 16 2.7.3 Resultado...................................... 18 2.8 Argumentos da linha de comando............................ 19 3 Perguntas e respostas 20 4 Créditos e licença 21 A Instalação 22
Lista de Tabelas 2.1 Argumentos da linha de comando............................ 19 4
Resumo O Sam é um gerenciador de modelos acústicos.
Capítulo 1 Introdução O Sam é uma ferramenta para criar e testar modelos acústicos. Ele pode compilar novos modelos de fala, usar os modelos criados pelo Simon e produzir modelos que podem ser usados posteriormente pelo Simon. Ele é destinado a pessoas que desejam mais controle sobre o seu modelo acústico e oferece um acesso de nível mais baixo ao processo de compilação. O Sam é destinado principalmente para os profissionais da fala que desejam melhorar e/ou testar o seus modelos acústicos. Para mais informações sobre a arquitetura do pacote Simon, consulte o Manual. 1.1 Plano de fundo Esta seção fornecerá alguma informação de fundo sobre o processo de compilação e testes. 1.1.1 Testes efetivos Uma das funcionalidades mais importantes do Sam é testar os modelos acústicos gerados. O procedimento de testes básico é executar o reconhecimento sobre as amostras, onde a transcrição já é conhecida e compar os resultados. O Sam também recebe o valor de confiança do reconhecimento em conta para medir a robustez do sistema criado. Devido à forma como são criados os modelos acústicos, tanto a precisão do reconhecimento quanto a confiança serão altamente desviados quando as mesmas amostras são usadas para testes e treinamento. Isto é chamado de testes de conteúdo (as amostras usadas para testes também estão no seu conteúdo de treinamento). Embora o teste de conteúdo possa indicar se o processo de compilação falhou ou produziu resultados pouco satisfatórios, não será informado qual a taxa de reconhecimento real do modelo criado. Como tal, recomenda-se fazer um teste sem conteúdo : usar amostras diferentes para o treinamento e para os testes. Para os testes fora de conteúdo, basta dividir o seu arquivo de mensagens em duas partes: uma usada para compilar o modelo e outra para testá-lo. Obviamente, o conjunto de testes não precisa ser muito grande para obter um resultado representativo. Se você não tiver muitos dados para treinamento, poderá também dividir o conteúdo completo em dez partes. Compile 10 modelos, onde cada um trata de uma parte do conteúdo. Depois faça testes individuais (sempre com o conjunto de testes que foi excluído durante a compilação) e uma média dos resultados. 6
Capítulo 2 Usando o Sam O Sam oferece uma interface gráfica dividida em cinco áreas. A ordem das abas representa um fluxo de trabalho completo do Sam, desde a criação de um modelo para testá-lo. 2.1 Arquivos de entrada e saída Defina os arquivos com que deseja trabalhar. Você pode salvar e carregar esta configuração usando os botões Salvar e Carregar, respectivamente. ATENÇÃO Os menus Salvar e Carregar apenas salvam os locais e opções aqui definidas. Eles não salvam os arquivos associados! 7
Aqui você tem a opção para selecionar as infraestruturas de compilação/teste do modelo. Dependendo da sua instalação do Simon, nem todas poderão estar disponíveis. Se quiser compilar e/ou testar o modelo do Simon, você pode usar a opção Modificar o modelo do Simon para carregar os arquivos apropriados. Ambos os cenários e mensagens serão serializados de forma apropriada. Quando o Simon compila o modelo, ele irá remover automaticamente as palavras não treinadas durante a formatação, assim como vai adaptando as mensagens de forma apropriada. Isto também acontece ao selecionar a opção Modificar o modelo do Simon. Se no entanto, você formatá-los separadamente com as opções Formatar os cenários e Formatar as mensagens, esta adaptação não será efetuada e você será o responsável pela validação dos arquivos de entrada. Se você indicar diretamente os nomes dos arquivos, isto ainda se aplicará com maior certeza. Ao selecionar um modelo estático como tipo de modelo usado, o Sam ainda irá compilar o modelo do idioma, tal como aconteceria com o Simon. Ele também copia os arquivos de entrada do modelo de base para os locais de saída. O Sam permite ao usuário fornecer tipos diferentes de arquivos de mensagens para criação e teste do modelo. Para mais informações sobre o uso efetivo deste recurso, veja a seção de testes efetivos. 8
Os usuários podem configurar um número arbitrário de configurações de teste para comparar diferentes parâmetros do modelo. Todos os testes configurados serão executados e apresentados nos relatórios que podem ser exportados. Através da opção para indicar arquivos de entrada diferentes do modelo compilado, podem ser incluídos modelos de referência (ou de base) no relatório. A partir do Simon 0.4, o formato de arquivo primário dos modelos é o novo formato SBM. Embora o Sam também irá criar modelos SBM, o teste ainda necessita dos arquivos de baixo nível. Isto pode ser contra-intuitivo, mas apresenta algumas vantagens práticas: A compilação do modelo do Simon (e, como tal, da compilação do modelo SAM) continua a gerar arquivos de baixo nível para os compiladores de modelos SPHINX e HTK antes de incluí-los em um pacote SBM, não sendo muito difícil indicar o uso destes arquivos (temporários) pelo SAM. Este é o comportamento normal ao usar a opção Modificar o modelo do Simon. Como a compilação do modelo acústico é normalmente um processo repetitivo, o compilador produz normalmente várias versões temporárias das diferentes etapas da estimativa dos parâmetros. Ao permitir dados de entrada de baixo nível, os testes e comparações destes resultados intermediários são muito mais simples. Se quiser testar um modelo que tenha recebido como um contêiner SBM, você pode extraí-lo com o SAM através da opção Extrair modelo do Simon para ganhar acesso aos arquivos de baixo nível que são necessários para testar com o Sam. 2.2 Treinamento conservador Se você configurou o Simond para manter as amostras de reconhecimento, o Sam poderá importar estes dados através da opção Importar as amostras de reconhecimento na seção Entrada e saída. 9
A legenda do arquivo de mensagens será construída automaticamente a partir do resultado do reconhecimento mais provável. Você pode limitar a seleção para incluir apenas as amostras que atingiram uma determinada pontuação de confiança. Se a configuração do Simon de onde você está importando as amostras usar um filtro global para desativar o reconhecimento, então é possível fornecer ao Sam o comando que ativa e desativa este filtro (pausar e prosseguir o reconhecimento, respectivamente) para ignorar as amostras que forem produzidas enquanto o reconhecimento estiver desativado. 2.3 Adaptar os cenários O Simon armazena o modelo do idioma em cenários. Quando você quiser usá-los para compilar o modelo, precisa primeiro formatá-los para que se tornem legíveis pelo SPHINX ou Julius e pelo HTK. 10
Para fazer isto, selecione o botão Formatar os cenários na aba Entrada e saída. Os cenários do Simon também serão formatados ao usar as opções para Modificar o modelo do Simon. Nesta página você pode encontrar a informação de status da adaptação e ler as mensagens de erro detalhadas, caso ocorra algum erro. 2.4 Criar o modelo Aqui você pode compilar o modelo usando os arquivos de entrada e saída definidos na seção de entrada e saída. O processo de compilação é idêntico ao usado pelo Simond. Entretanto, ao contrário do Simond, o registro completo com todos os programas externos carregados, o seu resultado, assim como a informação de progresso é mostrada, independentemente se a compilação for ou não concluída com sucesso. 11
Usando este resultado descritivo é muito mais fácil descobrir problemas com os dados de entrada. 2.5 Testar o modelo Aqui você pode testar o modelo de fala. O Sam irá testar o modelo definido na seção Arquivos de saída, na seção entrada e saída. Durante os testes, o reconhecimento da infraestrutura selecionada será executado para reconhecer os arquivos de entrada definidos pelas mensagens de teste. Os erros de palavras e frases resultantes serão contados, assim como a robustez global, analisando os índices de confiança do reconhecimento. A tela principal de teste irá mostrar todos os testes iniciados e indicar quando estiverem concluídos. Os testes em si serão executados ao mesmo tempo. A quantidade de paralelismo mais adequada a sua máquina é determinada automaticamente. 12
Assim que todos os testes forem concluídos, os resultados do teste serão apresentados automaticamente. 2.6 Resultados do teste Depois de testar o modelo com sucesso, você pode obter aqui um relatório detalhado da precisão do reconhecimento. 2.6.1 Pontuação Para refletir melhor o desempenho do reconhecimento, o Sam usa vários resultados com classificações para os testes. Uma palavra ou frase reconhecida corretamente será classificada com o índice de confiança obtido pela palavra. Se a palavra for reconhecida corretamente, mas outra errada tiver uma melhor classificação, a precisão deste reconhecimento será 0%. A taxa de reconhecimento global é a média de todas as taxas de confiança. A taxa de correção global apresentada mostra a média de todas as pontuações de correção que representam a semelhança com que uma palavra de uma determinada frase foi reconhecida corretamente. 2.6.2 Palavra O Sam irá enumerar a precisão do reconhecimento para cada palavra individual. 13
Se você tiver amostras que contenham mais que uma palavra, estas serão segmentadas durante o reconhecimento. Cada palavra será classificada individualmente (ainda que as diferentes palavras se influenciam mutuamente). 2.6.3 Frases Esta seção apresenta cada mensagem como uma frase. As mensagens que foram gravadas mais que uma vez serão combinadas. 14
2.6.4 Arquivos Na seção dos arquivos, você pode ver os resultados do reconhecimento de cada arquivo. Cada um deles irá apresentar os 10 resultados mais prováveis no painel de detalhes quando os selecionar. Quando identificar amostras com problemas, você pode voltar a gravá-las (ou removê-las), selecionando-as e clicando em Editar a amostra. Você pode ordenar os arquivos por cada coluna, bastando para isto clicar no cabeçalho da coluna. Desta forma, é muito fácil descobrir amostras inválidas, ordenando pela taxa de reconhecimento. 2.6.5 Registro Aqui você poderá rever o protocolo completo deste subteste. 15
2.7 Relatórios O Sam pode exportar relatórios sobre os resultados dos testes. A exportação de um relatório pode ser iniciada ao selecionar o item Exportar o resultado do teste na janela principal do Sam. 2.7.1 Modelos Os relatórios são criados ao preencher modelos com informações. Normalmente, estes modelos são arquivos de texto simples ou em LaTeX. Três modelos em LaTeX, sendo dois em alemão e um em inglês, são fornecidos com o Sam, mas é muito fácil adicionar novos. Basta instalar os novos modelos em um dos seguintes locais, dependendo do seu sistema operacional: Linux: ~/.kde/share/apps/sam/reports/templates Windows: %appdata%\.kde\share\apps\sam\reports\templates Os modelos existentes podem ser usados como referência. Eles podem ser encontrados no seguinte local: Linux: /usr/share/apps/sam/reports/templates Windows: <installation path>\share\apps\sam\reports\templates 2.7.2 Fornecendo metadados O mecanismo de relatórios permite a introdução de metadados sobre os dados de entrada usados, assim como as condições dos testes, os locutores, etc. 16
Esta informação pode ser introduzida diretamente através da interface gráfica. Dependendo do modelo usado, nem todas as informações fornecidas poderão ser usadas pelo relatório exportado. As informações introduzidas na janela serão também salvas com o seu arquivos de projeto do Sam. 17
Alguns metadados, como a quantidade de amostras no seu conteúdo de testes e de treinamento, assim como as informações do sistema, poderão ser preenchidos de forma automática pelo Sam ou manualmente. 2.7.3 Resultado Os relatórios exportados são armazenados como arquivos ZIP. No caso dos modelos em LaTeX, eles poderão conter imagens para complementar o arquivo.tex. Na imagem abaixo, você poderá ver o início de um relatório em LaTeX completo exportado, contendo um teste simples do cenário do Amarok com o modelo de base estático do Voxforge. 18
2.8 Argumentos da linha de comando O Sam oferece argumentos da linha de comando para as ações mais comuns que automatizam a criação e teste do modelo. Todas as ações fornecidas como argumentos da linha de comando serão retiradas imediatamente após carregar o Sam. As opções que dependem uma da outra (como a compilação e o teste) serão reordenadas automaticamente. Argumento Descrição Seleciona a infraestrutura usada. Indique sphinx ou htk para selecionar a -m <tipo> infraestrutura escolhida. Dependendo da sua instalação, o sphinx pode não estar disponível. Obtém todas as localizações do Simon; -s (equivalente a Modificar o modelo do Simon) -c Inicia a compilação do modelo; -t Inicia o teste do modelo; Exporta um relatório para o nome do -e <nome_arquivo> arquivo indicado; Ativa o processamento em lote. O Sam será finalizado automaticamente após o -b processamento de todos os argumentos. A janela principal não será mostrada. Exporta o registro de compilação completo -l <nome_arquivo> para o arquivo indicado; Grava automaticamente todos os arquivos -w de projeto do Sam ao sair do aplicativo; Carrega este arquivo de projeto do Sam ao <nome_arquivo> iniciar. Tabela 2.1: Argumentos da linha de comando 19
Capítulo 3 Perguntas e respostas Em um esforço para manter esta seção sempre atualizada, ela está disponível na nossa Wiki online. 20
Capítulo 4 Créditos e licença Sam Direitos autorais do programa 2008-2010 de Peter Grasch peter.grasch@bedahr.org Direitos autorais da documentação (c) 2009-2010 de Peter Grasch peter.grasch@bedahr.org Tradução de André Marcelo Alvarenga alvarenga@kde.org Esta documentação é licenciada sob os termos da Licença de Documentação Livre GNU. Este programa é licenciado sob os termos da Licença Pública Geral GNU. 21
Apêndice A Instalação Por favor, consulte as instruções de instalação na nossa wiki. 22