OpenSeq2Seq – TensorFlow-based toolkit for sequence-to-sequence models

OpenSeq2Seq is a toolkit for distributed and mixed precision training of sequence-to-sequence models:

  • Machine translation (GNMT, Transformer, ConvS2S, …). These models have been trained with BPE vocabulary used for text tokenization.
  • Speech recognition (DeepSpeech2, Wave2Letter, Jasper, …).
  • Speech commands (RN-50, Jasper). Automatic speech recognition (ASR) systems can be built using a number of approaches depending on input data type, intermediate representation, model’s type and output post-processing. OpenSeq2Seq is currently focused on end-to-end CTC-based models (like original DeepSpeech model).
  • Speech synthesis (Tacotron2, Tacotron2 GST, WaveNet, Centaur, …).
  • Language model (LSTM with WikiText-2, LSTM with WikiText-103).
  • Sentiment analysis (SST, IMDB, …).
  • Image classification, a mixed precison replica of TensorFlow ResNet-50.

OpenSeq2Seq main goal is to allow researchers to most effectively explore various sequence-to-sequence models. The efficiency is achieved by fully supporting distributed and mixed-precision training.

OpenSeq2Seq is built using TensorFlow and provides all the necessary building blocks for training encoder-decoder models for neural machine translation, automatic speech recognition, speech synthesis, and language modeling.

Speech-to-text workflow uses some parts of Mozilla DeepSpeech project.

This is a research project, not an official NVIDIA product.

Features include:

  • Models for:
    1. Neural Machine Translation.
    2. Automatic Speech Recognition.
    3. Speech Synthesis.
    4. Language Modeling.
    5. NLP tasks (sentiment analysis).
  • Data-parallel distributed training:
    1. Multi-GPU.
    2. Multi-node.
  • Mixed precision training for NVIDIA Volta/Turing GPUs.
  • Supports two modes for parallel training: simple multi-tower approach and Horovod-based approach.
  • Supports two new optimizers: Layer-wise Adaptive Rate Control (LARC) and NovoGrad. NovoGrad is a first-order SGD-based algorithm, which computes second moments per layer instead of per weight as in Adam.
  • Mixed precision with existing models.
  • Interactive infer – a mode that makes it easy to demo trained models.

Website: nvidia.github.io/OpenSeq2Seq
Support: GitHub Code Repository
Developer: NVIDIA
License: Apache License 2.0

OpenSeq2Seq is written in Python. Learn Python with our recommended free books and free tutorials.

Return to Speech Recognition Tools Home Page


Ongoing series
Linux for StartersNew to Linux? Read our Linux for Starters series.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Supplied with our legendary ratings charts.
Linux ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software.
Alternatives to GoogleAlternatives to Google's Products and Services examines your options to migrate from the Google ecosystem with open source Linux alternatives.
MicrosoftAlternatives to Microsoft's Products and Services recommends open source Linux software.
Linux System ToolsEssential Linux system tools looks at small, indispensable utilities, useful for system administrators as well as regular users.
Linux ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home Computer EmulatorsHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy opens up to the lighter side of Linux. Have some fun!
Best Free Android AppsBest Free Android Apps. There's a strict eligibility criteria for inclusion in this series
Programming BooksThese best free books accelerate your learning of every programming language
Programming TutorialsThese free tutorials offer the perfect tonic to the free programming books series
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.