DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.
Go to file
Alexandre Lissy 2f63b2e89a Move some data to be stored on /data
Settting temp directory to be in /data, and DATA_DIR to /data,
defaulting to XDG_DATA_HOME.

Fixes #374
2017-02-13 14:25:58 +01:00
bin Move some data to be stored on /data 2017-02-13 14:25:58 +01:00
client Make Tensorflow Serving APIs available out of tree 2016-12-01 17:29:34 +01:00
data Merge of pull requests #49, #50, and #52. Fixes issues #2, #4, #11, #12, #46, #47, and #48 2016-10-13 15:15:39 -04:00
demos Add a demos directory with two speech recognition demos 2016-11-30 18:15:22 +00:00
doc Add missing math contexts in DeepSpeech.rst 2017-02-03 09:16:30 -02:00
images Convert documentation to Sphinx RST 2017-02-02 23:42:36 -02:00
local_tf Make Tensorflow Serving APIs available out of tree 2016-12-01 17:29:34 +01:00
resources Fix #13; Fix #14; Reporting of WERs by index.htm 2016-10-14 18:34:05 +02:00
util Move some data to be stored on /data 2017-02-13 14:25:58 +01:00
.gitignore Fixed #92 2016-10-26 11:12:26 +02:00
DeepSpeech.py Make dropout configurable per-layer 2017-02-10 13:34:46 +00:00
index.htm Fix #331; Hide parameter menu bar entry in case of no parameter charts 2017-01-05 16:33:26 +01:00
LICENSE Added LICENSE 2016-09-20 19:12:29 +02:00
README.md Mention documentation and include readthedocs badge in README.md 2017-02-03 09:31:16 -02:00
README.website.md Move some data to be stored on /data 2017-02-13 14:25:58 +01:00

Project DeepSpeech Documentation Status

Project DeepSpeech is an open source Speech-To-Text engine that uses a model trained by machine learning techniques, based on Baidu's Deep Speech research paper. Project DeepSpeech uses Google's TensorFlow project to facilitate implementation.

Prerequisites

Recommendations

If you have a capable (Nvidia, at least 8GB of VRAM) GPU, it is highly recommended to install TensorFlow with GPU support. Training will likely be significantly quicker than using the CPU.

Training a model

Open a terminal, change to the directory of the DeepSpeech checkout and run python DeepSpeech.py. By default, the code will train on a small sample dataset called LDC93S1, which can be overfitted on a GPU in a few minutes for demonstration purposes. From here, you can alter any variables with regards to what dataset is used, how many training iterations are run and the default values of the network parameters. Then, just run the script to train the modified network.

You can also use the utility scripts in bin/ to train on different data sets, but keep in mind that the other speech corpora are very large, on the order of tens of gigabytes, and some aren't free. Downloading and preprocessing them can take a very long time, and training on them without a fast GPU (GTX 10 series recommended) takes even longer. If you experience GPU OOM errors while training, try reducing batch_size.

Exporting a model for serving

If the ds_export_dir environment variable is set, or the export_dir variable is set manually, a model will have been exported to this directory during training. If training has been performed without exporting a model, a model can be exported by setting the variable to the directory you'd like to export to (e.g. export_dir = os.path.join(checkpoint_dir, 'export')) and running the model exporting cell manually. If the notebook has been restarted since training, you will need to run all the cells above the training cell first before running the export cell, to declare and initialise the required variables and functions.

Refer to the corresponding README.md for information on building and running the client.

Documentation

Documentation for the project can be found here: http://deepspeech.readthedocs.io/en/latest/