AI/ML/NLP application: Google Translator- Chirin Dirani

Reading about the Natural Language Processing (NLP) for this class, reminds us with the test proposal by the famous Alan Turing in 1950. He proposed that “the test is successfully completed if a person dialoguing (through a screen) with a computer is unable to say whether her discussion partner is a computer or a human being.” However, having linguistics involved in the NLP field makes achieving this goal a real challenge.  I truly believe that NLP will succeed in formalizing mechanisms of understanding and reasoning when it develops to an intelligent program. This program can understand what the discussion partner says, and most importantly, concludes from what has been said in a dialogue that keeps the conversation going on. In other words, this will happen when we can’t differentiate between a machine or a human answering all our questions in chatbots and when a translating program is able to translate the most accurate translation from one language to another without any mistakes. For this assignment, I will not argue if Turing’s proposal is achievable or not, rather I will use the knowledge we obtained from the rich materials to describe the main design principles behind Google translator as one of the AI/ML/NLP applications.

My interest in Google translator stems from the fact that it is a significant tool I employ in my professional English- Arabic translation work. I witness its rapid and continuous development when I use this fascinating tool everyday. Thanks to the readings of this class, now I understand how this system functions and how neural system developed from translating piece by piece of a sentence into a whole sentences translation at a time. Thierry Poibeau claims that “Machine translation involves different processes that make it challenging.” In fact, incorporating grammar in translator logic to create meaningful text is what makes translation very challenging. However, “The availability of huge quantities of text, on the Internet, discovering Recurrent Neural Networks (RNN), and the development of the capacity of computers have revolutionized the domain of machine translation systems.” According to Poibeau, using deep learning approaches since the mid-2010s gave more advanced results to the field. As deep learning makes it possible to envision systems where very few elements are specified manually, and help the system extrapolate the best representation from the data by itself. 

Google translation processes are well clarified in How Google Translate works: The Machine Learning Algorithm Explained video. It informs us that language is very diverse and complex and for that, using neural networks (NL) proved to be useful in solving the problem of language translation. As we read last week, “neural networks learn to solve problems by looking at large amounts of examples to automatically extract the most relevant features.” This allows neural networks to learn patterns and data, which enables it to translate a sentence from one language to another on its own. In this context (sentence translation), neural networks are called Recurrent Neural Networks because they deal with longer sentences and they are basically long short-term memory. To activate these networks, there is a need for an encoder- decoder architecture, where the first RNN encodes/converts the source language sentence into recognizable computer data (vectors and matrices) and the second RNN decodes the computer data (vectors and matrices) to the target language sentence. Running different types of information, at the same time, using deep learning, allows better decision making. The whole translation process involves more complex and abstract processes, however, the encoder- decoder architecture principle is the essence of any machine translating system.

Moving forward, every time I use Google translator, I will remember that without the revolutionary development in the NLP field (The discovery of RNN), this tool would not have been available. In conclusion, Yes, machine translation system created useful tools by all means, However, the current encoder- decoder architecture is efficient for medium length sentences but not the long ones. This fact makes translation system still far from being able to give the most accurate translation of everyday texts.

 

َQuestions: 

  1. What is the main difference between ConvNet and RNN?
  2. Poibeau said that “through deep learning it is possible to infer structure from the data and for that, it is better to let the system determine on its own the best representation for a given sentence.” How can we trust that the system will make right decisions? 
  3. GPT-2 is a double-edged sword. It can be used for good and malicious causes. Does it make sense to say that when algorithms in this unsupervised model develop to be able to evaluate its accuracy on training data, is the key for GPT-2 to become an open source?

References:

Found in translation: More accurate, fluent sentences in Google Translate (2016) https://blog.google/products/translate/found-translation-more-accurate-fluent-sentences-google-translate/ 

How Google Translate Works: The Machine Learning Algorithm Explained (Code Emporium).

Thierry Poibeau, Machine Translation (Cambridge, MA: MIT Press, 2017).