Revolución IA

La Inteligencia Artificial está llamada a protagonizar la próxima Revolución tecnológica

Inicio Sobre Revolucionia Temas Para saber más Contacto

¿ Cómo funciona Google Translate ?

Fernando P.    07/08/2017

Temas:  Aplicaciones    Divulgación

Desde hace bastante tiempo que el gigante de Internet Google ofrece un servicio de traducción automático denominado Google Translate que resulta bastante popular por la sencillez de su uso y por la enorme cantidad de idiomas que soporta (del orden de 100 idiomas).

Este servicio ha experimentado últimamente cambios drásticos en su concepción y ahora mismo funciona usando varias de las técnicas más populares hoy en día en Inteligencia Artificial.

El problema de la traducción
Traducir correctamente textos de cierta complejidad entre dos idiomas cualquiera es un problema bastante difícil. No es un problema que esté resuelto, ni mucho menos, aunque se lleva trabajando bastante tiempo sobre ello desde el punto de vista de la Inteligencia Artificial y hay resultados interesantes.

Hay traductores humanos que pueden realizar trabajos de traducción muy buenos entre pares de idiomas seleccionados. Pero es un trabajo muy elaborado, ni siquiera ellos mismos pueden explicar bien cómo lo hacen. Años de entrenamiento les han otorgado esa habilidad pero no es algo que se pueda traspasar fácilmente a una máquina.

La piedra Rosetta de la traducción actual
En el siglo XIX, el estudio de la piedra Rosetta permitió el descifrado de los jeroglíficos egipcios debido a que esta piedra contenía un mismo texto escrito en tres lenguajes, uno de los cuales era el lenguaje egipcio de los jeroglíficos y otro era Griego antiguo, que era un idioma bien conocido.

Por comparación directa entre el texto escrito en Griego antiguo y los símbolos del lenguaje de jeroglíficos, pudo empezarse a comprender el significado de cada uno de los símbolos del lenguaje egipcio.

Aunque parezca mentira, Google Translate empezó a crearse de una forma muy similar a cómo se empezó a traducir los jeroglíficos egipcios.
Google Translate
Durante décadas, distintos organismos de las Naciones Unidas produjeron infinidad de documentos que hubieron de ser traducidos a multitud de idiomas para que pudieran ser distribuidos por la mayoría de países del mundo. Otro tanto sucede con la Unión Europea, que produce de forma contínua una ingente cantidad de documentos que deben ser traducidos a varios idiomas, entre los que se encuentran varios de los más importantes del mundo.

Google usó todos estos documentos como base para construir un sistema que relacionara palabras y frases escritos en un idioma con las equivalentes en otros idiomas. Puede parecer un método tosco, pero cuando se recopila una base de datos que tiene muchos millones de frases en múltiples idiomas, hay información de sobra para entender cómo se debe traducir de un idioma a otro.

Los inicios de Google Translate
Inicialmente, Google construyó un sistema que analizó toda esta gigantesca base de datos y construyó una especie de gráfico gigante de probabilidades que se podía usar para deducir, a partir de una frase de entrada, cual era la traducción correcta más probable a otro idioma dado.

El sistema inicial funcionaba básicamente con palabras o grupos muy cortos de palabras, venía a hacer traducciones bastante literales y no funcionaba muy bien con cosas muy distintas a las cosas que conocía en su base de datos.

Por otro lado, el sistema inicial estaba basado en el idioma Inglés, de forma que sólo podía hacer traducciones que involucraran el Inglés. Una traducción Español-Alemán, por ejemplo, debía realizarse en dos pasos, primero Español-Inglés y luego Inglés-Alemán, con el consiguiente deterioro del resultado final.

Google Neural Machine Translation system
En 2016, Google reconstruyó completamente el sistema de traducción que había detrás de Google Translate, que se bautizó como Google Neural Machine Translation system.

Básicamente, de la misma forma que con el sistema inicial, se partió de la piedra Rosetta actual que componen los miles y miles de documentos traducidos por las Naciones Unidas y la Unión Europea.

Pero en esta ocasión se construyó un sistema de machine learning muy complicado, basado en redes neuronales artificiales que fué entrenado durante bastante tiempo hasta que fué capaz de detectar las relaciones básicas entre cada frase de entrada y su correspondiente traducción.

Este nuevo sistema opera con frases completas, en vez de operar con palabras sueltas o grupos reducidos de palabras. Esta mejora proporciona al sistema la capacidad de hacer traducciones más ajustadas al contexto y que resulten menos literales palabra-palabra.

En realidad, el sistema se compone de dos componentes:

Se podría decir que el proceso de entrenamiento ha forzado al sistema a crear su propio idioma, en el que codifica las frases a traducir para luego poder expresarlas en el idioma de destino. No es exactamente un idioma porque es una maraña de ideas que sólo entiende él mismo, pero es una forma sencilla de entender cómo opera si pensamos que ha desarrollado su propio idioma.

Entre el codificador y el decodificador hay varios elementos que dan pistas al codificador sobre qué cosas se sospecha que con más importantes en cada frase, para que pueda hacer énfasis en ellas y poder producir una traducción lo más ajustada posible.

Una de las ventajas del nuevo sistema es que hace traducciones directas entre idiomas sin tener que pasar por el Inglés y es capaz de hacer traducciones entre idiomas para los que no tiene ejemplos de traducción directa entre ellos. De alguna forma, el idioma interno del sistema hace las veces de Inglés en el sistema antiguo.

Problemas con Google Neural Machine Translation system
En realidad, el nuevo sistema no es una gran novedad, hace tiempo que se había pensado en usar redes neuronales artificiales para este propósito.

El problema fundamental de este tipo de sistemas es que requieren de redes neuronales enormes con muchas capas y millones de neuronas artificiales, que requieren de una capacidad de cómputo inmensa para poder entrenarlas. Este tipo de recursos computacionales, basicamente superordenadores del tipo Watson, no ha estado disponible de forma generalizada hasta hace muy poco tiempo.

El rendimiento del nuevo sistema que mueve a Google Translate ha mejorado y además es capaz de realizar traducciones entre pares de idiomas que antes eran muy complicadas. Pero sigue estando lejos de los resultados de los mejores traductores humanos, sobre todo en textos con palabras raras y construcciones complejas.

La buena noticia es que el nuevo sistema está abierto a seguir aprendiendo a medida que cada vez se le suministran más y más ejemplos de buenas traducciones. Quizá sea sólo cuestión de tiempo que Google Neural Machine Translation system sea capaz de hacer sombra a los buenos traductores humanos, que a ellos también les cuesta sus buenos años aprender bien el complejo oficio de la traducción.


Para saber más:

Página de la Wikipedia que describe con cierto detalle el servicio de Google Translate. La versión Española de la página no está actualizada.

Entrada original del Blog de investigación de Google en el que se anuncia la puesta en marcha de Google Neural Machine Translation system y se dan detalles muy interesantes sobre el mismo.

Artículo original del equipo de investigación de Google que describe el desarrollo y funcionamiento de Google Neural Machine Translation system. Es un artículo complicado pero que tiene buena parte de los detalles del sistema.



 

Inicio Powered by NetBSD
 
HTML5
 
En general, todo el contenido de este sitio web es original, salvo referencias o enlaces a otros sitios web y citas o reproducciones expresamente presentadas como tales.

No está permitida la reproducción ni la copia del contenido de este sitio web sin el permiso expreso de la propiedad del mismo.

Este sitio web no utiliza cookies ni ningún otro mecanismo para almacenar información en los navegadores de los visitantes ni para realizar seguimiento de los mismos.

2017,2018 Revolucionia.net
Sobre Revolucionia
Temas
Para saber más
Contacto