VLibras (LAVID-UFPB) translation module for translating brazilian portuguese to LIBRAS.
Project description
VLibras Translate
O VLibras é um projeto desenvolvido no Laboratório de Aplicações de Vídeo Digital (LAVID) para a tradução de Português Brasileiro (PT-BR) para Libras. O pacote VLibras Translate é parte da suíte VLibras e disponibiliza um conjunto de ferramentas de pré-processamento de texto para tradução por deep learning e um módulo de tradução PT-BR/Libras.
Sumário
Pré-requisitos
- Java 8 (com compilador)
- Hunspell (
sudo apt-get install libhunspell-dev
) - Cython (
pip install Cython
) - Python 3
Instalação
- pip3 install vlibras-translate
Utilização
O VLibras Translate possui duas interfaces: o seu módulo python (vlibras_translate
) e suas linhas de comando (vlibras-translate
e vlibras-translate-file
). Para utilizar a interface de linha de comando, o alias 'python' deve ser uma versão de python 3 com o vlibras_translate instalado. Para definir o alias é recomendado um dos seguintes modos:
- Adicionar ao final do arquivo
~/.bashrc
a linhaalias python='python3'
. Em seguida, fechar e abrir o terminal ou executar o comandosource ~/.bashrc
. - Utilização de ambiente virtual para python 3 como o conda;
Tradução PTBR-Libras:
Tradução de Texto
Módulo Python
import vlibras_translate
tradutor = vlibras_translate.translation.Translation()
glosa = tradutor.rule_translation('Maria comprou por três parcelas de 35,50 reais naquela loja.')
print(glosa)
Saída
MARIA COMPRAR POR 3 PARCELA 35 VÍRGULA 50 REAL AQUELE LOJA [PONTO]
Linha de comando
vlibras-translate -r 'Maria comprou por três parcelas de 35,50 reais naquela loja.'
Saída
GLOSA (rule):
MARIA COMPRAR POR 3 PARCELA 35 VÍRGULA 50 REAL AQUELE LOJA [PONTO]
Pré-Processamento
As ferramentas de pré-processamento de texto do VLibras Translate são destinadas ao desenvolvimento de modelos neurais de tradução (deep learning). São disponibilizadas as seguintes funcionalidades:
- Análise morfossintática utilizando o Aelius
- Remoção de símbolos (e.g. '-@#') com exceção de hifens entre palavras e pontos decimais (vírgula ou ponto, mas não os separadores de milhares). Por exemplo, o pré-processamento de '#123 @ -34 1.234,56 guarda-roupa' resulta em '123 34 1234 , 56 guarda-roupa'
- Reconhecimento de nomes próprios
- Reconhecimento de erros ortográficos
- Lematização utilizando o cogroo4py
- Obtenção de glosas PT-BR/Libras
- Substituição de nomes, números e erros ortográficos pelos símbolos ", ' e # respectivamente. Esta função é apenas para arquivos de treino.
Outra funcionalidade oferecida por esse pacote é o pré-processamento de textos em PT-BR para o desenvolvimento de modelos de deep learning para tradução de PT-BR para Libras. Para isso foram implementadas dois pipelines de processamento: um para arquivos de treino e outro para arquivos de teste (que serão traduzidos pelo modelo já treinado). As seções a seguir contêm exemplos para a processamento de textos de treino, textos de teste, arquivos de treino e arquivos de teste respectivamente.
Texto de treino
Módulo Python
import vlibras_translate
tradutor = vlibras_translate.translation.Translation()
ptbr_treino, glosa_treino = tradutor.preprocess_train_files('Maria comprou por três parcelas de 35,50 reais naquela loja hje.')
print(ptbr_treino)
print(glosa_treino)
Saída
" comprou por ' parcelas de ' , ' reais naquela loja # .
" COMPRAR POR ' PARCELA ' VÍRGULA ' REAL AQUELE LOJA # [PONTO]
Linha de comando
vlibras-translate -t 'Maria comprou por três parcelas de 35,50 reais naquela loja hje.'
Saída
PT-BR (treino):
" comprou por ' parcelas de ' , ' reais naquela loja # .
GLOSA (treino):
" COMPRAR POR ' PARCELA ' VÍRGULA ' REAL AQUELE LOJA # [PONTO]
Texto de teste
Módulo Python
import vlibras_translate
tradutor = vlibras_translate.translation.Translation()
ptbr_teste = tradutor.preprocess_pt('Maria comprou por três parcelas de 35,50 reais naquela loja hje.')
print(ptbr_teste)
Saída
maria comprou por 3 parcelas de 35 , 50 reais naquela loja hje .
Linha de comando
vlibras-translate -p 'Maria comprou por três parcelas de 35,50 reais naquela loja hje.'
Saída
PT-BR (teste):
maria comprou por 3 parcelas de 35 , 50 reais naquela loja hje .
Log
1.1.10
- Correção de bugs envolvendo números e o processamento de glosas. Suporte para pré-processamento sem BPE
1.1.8
- Correção de bugs
1.1.5
- Correção de lemas (e.g. "posso" -> "pospoder"; "indo" -> "inir"), whitelist de mascaramento para lugares e pessoas famosas e correção para bug que removia acentos no pós-processamento.
1.1.4
- Números em cardinal, ajustes em verbos direcionais
1.1.3
- Correção no tratamento de sinônimos durante tradução com deep learning
1.1.2
- Alteração da interface Python para tradução com deep learning
1.1.1
- Melhora de performance
1.1.0
- Suporte para Docker Kubernetes
- Adaptações para novas sintaxes utilizadas nos corpora (LAVID apenas)
- Novos métodos para corpora Glosa-Regra/Glosa-Intérprete
1.0.10
- Fix para frases contendo apenas caracteres que não são do conjunto latin-1
1.0.9
- Fix para compatibilidade com Python 3.5
1.0.8
- Fix para caracteres que não são do conjunto latin-1
1.0.7
- Fix para uso conjunto de processameto de arquivos de treino e tradução por regra;
- Fix para checagem de ortografia de palavras com caracteres fora do padrão latin-1
1.0.6
- Novos sinônimos
Licença
Este projeto está sob a licença LGPLv3 - veja o arquivo LICENSE para mais detalhes.
Sobre o VLibras Translate
- Autor: Caio Moraes (caiomoraes.cesar@gmail.com)
- LAVID (http://lavid.ufpb.br/)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file vlibras-translate-1.1.10.tar.gz
.
File metadata
- Download URL: vlibras-translate-1.1.10.tar.gz
- Upload date:
- Size: 23.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191101 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
1552a6251917766050884c226f2eee33e04f01cc1fcbec1bee5e288385fc2e8f
|
|
MD5 |
88c14ccbe3ce61fa8a15e15a0fe34d04
|
|
BLAKE2b-256 |
0328e83f26268efba1f05802ec3cae1f583e08577a090e697de7e1d90795097e
|
File details
Details for the file vlibras_translate-1.1.10-py3-none-any.whl
.
File metadata
- Download URL: vlibras_translate-1.1.10-py3-none-any.whl
- Upload date:
- Size: 23.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191101 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
27e1bd9810673bf8f1956fd78b5906f29a45bef0815096a4b3020bbabf41638c
|
|
MD5 |
4cfd07215fe58afdc14b8144677dccd9
|
|
BLAKE2b-256 |
d21296375d805250a4bbb7d972deba159fbf6bbedff3f22343de899f03e0fa64
|