The process of translating from one language to another is not a simple process. Professional translators and interpreters need to have had years of study in order to perfectly master a language and to carry out simultaneous translations. Creating a computing system that automatically carries out this process is a challenge, as each language is not only dependent on its vocabulary but also on the rules and standards that must be processed. But it is the machine translation neural networks that seem to have provided the key to intelligently translating complex structures of groups of words, imitating the syntactic and grammatical structures between languages that are not interconnected.

Development of machine translation

Machine translation is a computational field that investigates the use of software tools for translating text or spoken language. Originally, the translations were based on the replacement of words from one language to another, without much knowledge of the context. They are mechanical, ‘word for word’ translations which, on many occasions, were not suited to the context. This meant that machine translation systems only worked as useful tools when translating vocabulary or between languages of the same family and with similar structures, but never as a form of reliable interpretation for phrases or relatively complex texts, in which different kinds of words are combined: nouns, adjectives, adverbs, prepositions, verbs, etc. With the development of programmes, new software tools have emerged which allow you to choose a specific profession or topic about which you would like to carry out a translation. It is possible to better define aspects of the replacement of words, as each sector usually uses certain words in a specific way or applied to specific processes: polysemic words, expressions, names, etc. It would be like a translation with specific jargon.

A qualitative leap in the field of translation

In a world that is becoming more and more globalized, society is currently showing a great interest in the development of machine translation systems. The value of being able to use tools or devices that provide trustworthy translations of phrases and expressions is vital in enabling citizens to travel and communicate with one another fluently. In order to be able to carry out this task, the latest advances are based on the use of neural networks as the best way of automating any kind of process that requires learning. These networks form part of the field of artificial intelligence and seem to offer much better results than the mainstream technique until recently, statistical machine translation. In the linguistic field, machine translation neural networks are offering seriously astounding results.

Computing and neural networks

A neural network showing connections between the nodes

A neural network showing connections between the nodes

 

Can a computer or IT system reproduce the learning process?

The neural network concept is not really complicated and is a case of imitating the function of the neural networks of live organisms. However, the creation of this artificial intelligence, the weights and prevalence of each of the nodes and their connections do make it complicated. We’re talking about a group of links that work together, without any of them having a specific task assigned to them. In order to make the most of the way in which neural networks function, one must take into account that the process lies in establishing a set of parameters that, when combined, are capable of drawing an accurate conclusion or result. The programmes must be capable of deep learning and adjusting their performance over time.
The main problem is not analysing the parameters that need to be connected to one another, but how to establish the combination between the different parameters when bringing about a response.

Biology and computing: the seed of neural networks

If a person was asked to calculate the square root of 7 with several decimal places and without the help of even a pen and paper, it would be impossible for anybody. A computer can carry out this kind of mathematical calculation in an instant and will always get it right. It is an extremely simple task in the field of computing. Even a basic calculator can do it.
Changing perspective and using a human task as a starting point, there are certain actions that anybody can take. Throwing a coin up into the air or recognising the difference between a tree and a plant is an extremely simple process for any human being (set aside from certain physical or cognitive restraints). For a machine, however, any of these aspects are really quite complex. It must learn to recognise patterns, characteristics, differences and to reach a conclusion.
A computer, contrary to a living being (not just humans), needs to carry out an immense amount of calculations and needs time in order to process simple biological parameters, such as:
– Pattern recognition.
– Classification of shapes and objects.
– Automatic control of tools and devices.

To use an example, the best engineers dedicated to the development of radars and sound systems feel truly envious of bats. This mammal’s capacity to determine the relative speed and size of prey and the location of objects around them is an absolute miracle from a computing point of view.
This kind of issue is the root of neural networks and deep learning. This field studies the method of connecting concepts and getting machines to carry out association processes at the same speed as living beings. In order to do this, it is necessary to research the advantages of the brain when associating concepts which computers find difficult to identify.
It is strange that neural networks are much more basic and slow than a CPU. Not to mention, they are not entirely reliable, as there are often points of failure in the cognitive processes. This fact is evident among the visual conundrums found across the internet. Without going any further, this ‘cognitive error’ or this perceptive restriction can be exemplified when observing a magic trick. Even in the most basic of ways, one can take advantage of the flaws in visual capacity in order to make people believe that an object can appear and disappear.

Types of neural networks

1- Recurrent neural network
The input and output connections between units. It is based on an algorithm, which is made up of an X input and a Y output. These networks can only learn static connections, in which they aim to establish a hypothesis order (input-output), and this creates a scaling effect, a ‘step by step hypothesis’. The time variable has to be incurred by the network, and to do this, two parameters are used:
– Delay.
– Recurrence.
2- Convolutional neural network
These networks work by consecutively modelling small pieces of information, in a similar way to the process of human visual perception.
The received information is combined in layers, in such a way that, in the first layer, the thresholds and their patterns are detected; and, in the lower layers, the more basic forms are split and the connected patterns are applied to the positioning, lighting, etc. The final result or ‘hypothesis’ obtained is a weighted sum of all of the information handled and how it has been processed.

More than half a century of research

Neural networks are not a new area of study, as their early stages go back to the 40s and 50s, unfortunately with no good results due to the quantity of IT resources needed in order to prepare and run a network with good results. This was the case more than half a century ago. However, nowadays there are data processing systems capable of analysing millions of variables at once.
Over the last few years, great progress has been made in this field thanks to the improvement of computing systems for this kind of process.

Simultaneous translation 2.0

There is still a long way to go in the development of neural networks, but there are already fields in which significant advances have been made. This is the case with statistical machine translation. Known as SMT, this consists in coming up with a translation by basing it on statistic models that establish connections between groups of words. When a statistical programme interprets a phrase, it will take individual words and groups of them into account, and thanks to the learnt language model, it will also recognise different parts of the phrase, trying to reconstruct the grammatical structures in each language. But statistical machine translation reached its limit when it tried to translate between languages that are in no way interconnected such as European languages in general and Japanese or morphologically rich languages, therefore the case study of declines lowered the statistics and security of the system or, simply, it could not find the word.

In the case of neural translation, the main networks are

Tensor Flow

Tensor Flow is a free software resource. A library for numerical computing which, through mathematical formulas which have a flexible design, allows you to create computing processes: in one or more CPUs or GPUs, servers or mobile devices, with a basic API. This programme was developed by the Google team that works on the digitalization of cerebral processes and artificial intelligence. Tensor Flow can be applied to various different fields, but those that work in the machine translation area are making the most of its benefits to the maximum.

Open NMT

Open NMT is an open source that is based on neural translation systems using mathematical tools. Many companies interested in the opportunities that it can offer are working together and investing in its development.
The source is intended for easy and simple use, adaptable to different types of applications and devices, maintaining a high level of efficiency and reliability in the translations that it offers. The advantages and features that it provides are:
– Extremely versatile interface, which only requires a source and target files.
– Speed and memory optimization for GPU deep learning.
– A modifiable C++ translator model.
– Latest updates on translation models.
– Extensions for generating sequences for summary tasks.
– A very active community of developers, institutions and businesses.