# tensorflow/nmt

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/tensorflow-nmt).**

6,461 stars · 1,937 forks · Python · Apache-2.0 · archived

## Links

- GitHub: https://github.com/tensorflow/nmt
- awesome-repositories: https://awesome-repositories.com/repository/tensorflow-nmt.md

## Description

This project is a neural machine translation system used to build models that automatically translate text from one language to another. It utilizes sequence-to-sequence modeling to transform variable-length input sequences into corresponding output sequences.

The system implements bidirectional recurrent neural network encoding and attention mechanisms to capture contextual information and focus on specific parts of the source text during translation. To manage training and inference, it employs separate computational graphs and supports distributing model layers across multiple GPU devices.

Capability areas cover the entire translation pipeline, including the construction of NLP data pipelines for tokenization and batching, the optimization of recurrent networks through gradient clipping, and the evaluation of translation quality using internal metrics.

## Tags

### Artificial Intelligence & ML

- [Neural Machine Translation](https://awesome-repositories.com/f/artificial-intelligence-ml/neural-machine-translation.md) — Provides a complete system for translating natural language text using sequence-to-sequence architectures.
- [Sequence-to-Sequence Mappings](https://awesome-repositories.com/f/artificial-intelligence-ml/sequence-decoding-models/sequence-to-sequence-mappings.md) — Implements a sequence-to-sequence architecture to map source text to target translation via a latent representation.
- [Attention Mechanisms](https://awesome-repositories.com/f/artificial-intelligence-ml/attention-mechanisms.md) — Integrates attention mechanisms into the decoder to focus on specific parts of the source sentence. ([source](https://github.com/tensorflow/nmt#readme))
- [Bidirectional Processing Architectures](https://awesome-repositories.com/f/artificial-intelligence-ml/bidirectional-processing-architectures.md) — Utilizes bidirectional processing architectures to capture full semantic context from the source text.
- [Decoder Architectures](https://awesome-repositories.com/f/artificial-intelligence-ml/decoder-architectures.md) — Implements a decoder architecture that uses attention mechanisms to generate translated sequences autoregressively.
- [Vocabulary Mappings](https://awesome-repositories.com/f/artificial-intelligence-ml/subword-tokenization-methods/vocabulary-mappings.md) — Transforms raw text strings into integer indices using a predefined vocabulary lookup table.
- [Language Modeling Data Loading](https://awesome-repositories.com/f/artificial-intelligence-ml/text-model-training/language-modeling-data-loading.md) — Processes raw text into batched and padded tensors using vocabulary lookups for model input. ([source](https://github.com/tensorflow/nmt/blob/master/nmt/utils/iterator_utils.py))
- [Text Translation Inference](https://awesome-repositories.com/f/artificial-intelligence-ml/text-translation-inference.md) — Generates translated text for unseen source sentences using specialized decoding strategies. ([source](https://github.com/tensorflow/nmt#readme))
- [Attention Scoring Functions](https://awesome-repositories.com/f/artificial-intelligence-ml/attention-scoring-functions.md) — Implements various attention scoring functions to determine the relevance of source tokens during decoding. ([source](https://github.com/tensorflow/nmt/blob/master/README.md))
- [Distributed GPU Training](https://awesome-repositories.com/f/artificial-intelligence-ml/distributed-gpu-training.md) — Distributes the computational load of model layers across multiple GPU devices to accelerate training. ([source](https://github.com/tensorflow/nmt/blob/master/README.md))
- [Distributed Model Parallelism](https://awesome-repositories.com/f/artificial-intelligence-ml/distributed-model-parallelism.md) — Distributes neural network layers across multiple GPU devices to accelerate model training and inference.
- [Gradient Clipping Utilities](https://awesome-repositories.com/f/artificial-intelligence-ml/gradient-computation/gradient-clipping-utilities.md) — Prevents gradient explosion in recurrent networks by rescaling gradients using global norm clipping.
- [Length-Based Batching](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/frameworks/model-construction/neural-network-layers/convolution-layers/grouped/length-based-batching.md) — Groups input sequences by length to minimize padding waste and optimize memory during training.
- [GPU-Accelerated Training](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/machine-learning-training/gpu-accelerated-training.md) — Accelerates training and supports larger models by splitting layers across multiple GPU devices.
- [Model Lifecycle Management](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/machine-learning-training/model-lifecycle-management.md) — Manages the transition and variable sharing between training, evaluation, and inference stages. ([source](https://github.com/tensorflow/nmt/tree/tf-1.4))
- [Model Parallelism](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-training-and-tuning/training-frameworks/model-training-pipelines/model-parallelism.md) — Implements model parallelism by dividing network layers across multiple GPUs to reduce training time. ([source](https://github.com/tensorflow/nmt#readme))
- [Pipeline Construction](https://awesome-repositories.com/f/artificial-intelligence-ml/natural-language-processing/text-tokenization/pipeline-construction.md) — Constructs NLP pipelines for cleaning, tokenizing, and batching variable-length text pairs.
- [Recurrent Neural Network Training](https://awesome-repositories.com/f/artificial-intelligence-ml/recurrent-neural-network-training.md) — Optimizes recurrent neural network training using gradient clipping and parallel computational efficiencies.
- [Training Optimizations](https://awesome-repositories.com/f/artificial-intelligence-ml/training-optimizations.md) — Stabilizes model convergence through the use of global norm gradient clipping and adaptive optimizers. ([source](https://github.com/tensorflow/nmt/blob/master/README.md))
- [Translation Quality Evaluation](https://awesome-repositories.com/f/artificial-intelligence-ml/translation-quality-evaluation.md) — Implements metrics such as perplexity to evaluate the accuracy and loss of the translation model. ([source](https://github.com/tensorflow/nmt/blob/master/nmt/train.py))

### Part of an Awesome List

- [Sequence To Sequence Models](https://awesome-repositories.com/f/awesome-lists/ai/sequence-to-sequence-models.md) — Implements a sequence-to-sequence model that encodes source sequences into fixed-length vectors for translation.
- [Translation Model Training](https://awesome-repositories.com/f/awesome-lists/ai/sequence-to-sequence-models/translation-model-training.md) — Teaches sequence-to-sequence models using source and target sentence tensors to learn language mappings. ([source](https://github.com/tensorflow/nmt#readme))

### Data & Databases

- [Data Pipelines](https://awesome-repositories.com/f/data-databases/data-pipelines.md) — Provides data pipelines that read, clean, and batch variable-length sentence pairs for model consumption. ([source](https://github.com/tensorflow/nmt#readme))
- [Translation Dataset Preparation](https://awesome-repositories.com/f/data-databases/dataset-preparation-scripts/translation-dataset-preparation.md) — Constructs input pipelines that clean and zip source-target translation pairs with sequence padding. ([source](https://github.com/tensorflow/nmt/tree/tf-1.4))
- [ML Batch Training Optimizations](https://awesome-repositories.com/f/data-databases/batch-processing/ml-batch-training-optimizations.md) — Optimizes training efficiency by grouping similarly sized sentences into batches to reduce padding. ([source](https://github.com/tensorflow/nmt/tree/tf-1.4))

### Software Engineering & Architecture

- [Execution Graphs](https://awesome-repositories.com/f/software-engineering-architecture/execution-graphs.md) — Constructs specialized execution graphs for training and inference to improve variable reuse and performance. ([source](https://github.com/tensorflow/nmt#readme))
- [Lifecycle Graph Management](https://awesome-repositories.com/f/software-engineering-architecture/execution-graphs/lifecycle-graph-management.md) — Employs separate computational graphs for training, evaluation, and inference to optimize resource sharing.
