Google Neural Machine Translation is an AI tool that tremendously improves translation accuracy

Around September last year, Google published a paper on an Artificial Intelligence tool that it would use to translate languages. It was basically its own version of a Neural Machine Translation system. The Google Neural Machine Translation (GNMT) system tremendously improved the efficiency of apps like Google Translate. They had kicked off their service with German, French, Spanish, Portuguese, Chinese, Japanese, Turkish and Korean in 2016. This year, they launched the tool for Russian, Vietnamese and nine Indian languages. Let us take a look at what this new approach of translation entails.

Google Neural Machine Translation 2
The nine Indian languages that support the new GNMT system

What is the new Google Neural Machine Translation system?

Neural Machine Translation (NMT) systems existed before Google’s version. These are machine learning models that use neural networks to predict the outcome of a particular problem. These predictions arise from similar patterns that the system had ‘memorized’ earlier.

But these NMTs were expensive for training the network as well as for applying it to actual problems. Google’s NMT made the process of learning easier by deploying parallelism. Low-level arithmetic computations increased the output translation times quite impressively. Also, special conditions for the interpretation of rare words helped improve the accuracy of the approach.

Earlier, Google used Statistical Machine Translation to translate languages. But it had its limitations as it used a “phrase-based translation.” Therefore the translation wouldn’t work for language pairs with significantly different word order. Also, the linguistic difference between the source and target languages made the translation a complex task. For example, English and Hindi, although both belonging to the Indo-European language family, possess enough distinctive characteristics in word order and morphology.

But with the new state-of-the-art neural machine translation, translation has become easier, more accurate and comprehensive as it translates whole sentences at once, rather than doing it by phrases.

GNMT accuracy

In addition to bypassing previous NMT models, GNMT’s “Zero-Shot Translation” enables it to translate one language into another directly. For example, Japanese to Korean. Earlier, Google Translate first translated the source language into English and then translated the English into the target language.


GNMT example english to hindi
English to Hindi
chinese to english GNMT
Chinese to English

For more examples, check out the links below.

How does GNMT work?

GNMT leverages Google’s machine learning toolkit TensorFlow and Tensor Processing Units (TPUs). TPUs provide sufficient computational power to process the GNMT models in the Google Translate app. Google has made the TensorFlow API publicly available for free, with the aim of spurring further the evolution of AI and building a community around it.

The TensorFlow system is built to be highly scalable as it uses “multi-dimensional arrays” aka tensors for data representation. TensorFlow works by creating a graph of all the operations to be performed. And it executes those operations when needed. This programming paradigm is known as “lazy evaluation,” which benefits by avoiding calculations which are not needed, thus tremendously increasing the performance of the system. This, in turn, saves a lot of working memory as the memory is only used when the code is executed.

TensorFlow’s biggest advantage is that developers can visualize each part of the graph, train machine learning models on CPU/GPU with platform flexibility. This flexibility ensures that the models can run on any platform, even on mobile phones. And consequently, this makes TensorFlow one of the most vital signs of progress for Google in the field of Language and Machine Translation, gifting its user a better opportunity to translate languages efficiently.

Sources and further readings


About The Writer

Sami is a Media Informatics student at RWTH Aachen, Germany. He is an Android developer by profession.