You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
PaddleSpeech/deploy
Yibing Liu 5208b8e40f
format C++ source code
7 years ago
..
README.md clean up code & update README for decoder in deployment 7 years ago
__init__.py change probs' computation into log scale & add best path decoder 7 years ago
ctc_decoders.cpp format C++ source code 7 years ago
ctc_decoders.h format C++ source code 7 years ago
decoder_utils.cpp format C++ source code 7 years ago
decoder_utils.h format C++ source code 7 years ago
decoders.i Merge branch 'ctc_decoder_deploy' of https://github.com/kuke/models into ctc_decoder_deploy 7 years ago
path_trie.cpp format C++ source code 7 years ago
path_trie.h format C++ source code 7 years ago
scorer.cpp format C++ source code 7 years ago
scorer.h format C++ source code 7 years ago
setup.py Make setup.py to support parallel processing. 7 years ago
swig_decoders_wrapper.py add min cutoff & top n cutoff 7 years ago

README.md

The decoders for deployment developed in C++ are a better alternative for the prototype decoders in Pytthon, with more powerful performance in both speed and accuracy.

Installation

The build depends on several open-sourced projects, first clone or download them to current directory (i.e., deep_speech_2/deploy)

  • KenLM: Faster and Smaller Language Model Queries
git clone https://github.com/kpu/kenlm.git
  • OpenFst: A library for finite-state transducers
wget http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.6.3.tar.gz
tar -xzvf openfst-1.6.3.tar.gz
git clone https://github.com/progschj/ThreadPool.git
  • SWIG: A tool that provides the Python interface for the decoders, please make sure it being installed.

Then run the setup

python setup.py install --num_processes 4
cd ..

Usage

The decoders for deployment share almost the same interface with the prototye decoders in Python. After the installation succeeds, these decoders are very convenient for call in Python, and a complete example in deploy.py can be refered.

For GPU deployment

CUDA_VISIBLE_DEVICES=0 python deploy.py

For CPU deployment

python deploy.py --use_gpu=False

More help for arguments

python deploy.py --help