¿Para qué sirve Google Translate, entonces?

Por qué Google Translate para el latín es tan malo.

Google Translate para el latín es completamente estadístico. No tiene ningún modelo de gramática, sintaxis o significado. Lo único que hace es correlacionar secuencias de hasta cinco palabras consecutivas en textos que han sido traducidos manualmente a dos o más idiomas.

Más concretamente, ha construido un modelo de Markov oculto a partir de todas las traducciones manuales que se le han introducido. Google lo denomina modelo de traducción automática basado en frases, o PBMTM. En noviembre de 2016, Google actualizó Translate para utilizar el Modelo Neural de Traducción Automática mejorado para algunos idiomas, que no funciona así – pero el latín no está entre ellos.

Así es como funciona el PBMTM, a grandes rasgos. Supone que la gente habla eligiendo al azar una palabra tras otra, con las probabilidades determinadas por la palabra anterior pronunciada. Por ejemplo, si has dicho «dos», hay una cierta probabilidad de que la siguiente palabra sea «o». Si acabas de decir «o», hay una cierta probabilidad de que la siguiente palabra sea «butano». Puedes calcular una estimación de estas probabilidades mirando todos los textos que has introducido antes. A continuación, puedes generar un galimatías aleatorio pero ligeramente coherente según estas probabilidades:

Dos

Dos o

Dos o gas butano

Dos o gas butano

Dos o gas butano pueden ser atacados

Si usas una «ventana» contextual de más palabras – digamos, las tres, cuatro o cinco anteriores- para encontrar la siguiente, el galimatías resultante parecerá más bien escrito por un esquizofrénico que por un afásico. He aquí un ejemplo, con la ventana contextual resaltada.

Escuché sobre

Escuché sobre seis

Escuché sobre seis hoy

Escuché sobre seis hoy, nosotros

Escuché sobre seis hoy, nosotros buscamos

Nota cómo cada frase en negrita podría haber estado en una oración real: «Ayer

Eso es un modelo de Markov. La parte «oculta» añade cierta complejidad, que aplazaré al final de este post. La idea básica es: El PBMTM de Google Translate intenta elegir la siguiente palabra más probable, basándose en estimaciones de probabilidad derivadas de secuencias de cinco palabras del corpus que posee de textos en el idioma de entrada y en el de destino (no sólo textos reales, sino también muchas traducciones de origen colectivo).

Para lo que Google Translate es más fiable es para traducir documentos producidos por las Naciones Unidas entre los idiomas que allí se utilizan. Esto se debe a que los documentos de la ONU han proporcionado una parte desproporcionadamente grande de los textos traducidos manualmente de los que Google Translate extrae sus secuencias de cinco palabras, ya que los documentos de la ONU están fácilmente disponibles en muchos idiomas diferentes (ya que, por ejemplo, todos los documentos oficiales de las Naciones Unidas, las actas de las reuniones y la correspondencia en la sede de la ONU se traducen al menos al árabe, chino, inglés, francés, ruso y español).

Testigo de lo que ocurre cuando tecleo esto:

A excepción de lo que pueda convenirse en los acuerdos particulares de tutela concluidos conforme a los artículos 77, 79 y 81 y que apliquen a cada territorio el régimen de tutela, y hasta que dichos acuerdos se hayan concluido, ninguna disposición del presente capítulo podrá interpretarse como una modificación directa o indirecta de los derechos humanos de ningún Estado o pueblo o de las disposiciones de los actos internacionales en vigor en los que los miembros de la Organización puedan ser parte.

Me da:

Salvo lo que se convenga en los acuerdos especiales de tutela celebrados de conformidad con los artículos 77, 79 y 81 y que coloquen a cada territorio bajo el régimen de tutela, y hasta que se hayan celebrado tales acuerdos, el presente Capítulo no se interpretará en el sentido de que modifica directa o indirectamente los derechos de cualquier Estado o pueblo o las disposiciones de los instrumentos internacionales en vigor en los que los Miembros de la Organización puedan ser partes.

¡Perfecto! (Casi).

Esta es una de las razones por las que sus traducciones al latín tienden a ser tan pobres: tiene un corpus muy delgado de traducciones hechas por humanos del latín para basar sus modelos ocultos de Markov-oh, y está usando modelos ocultos de Markov.

Así que, hasta que las Naciones Unidas comiencen a hacer sus negocios en latín, el modelo estadístico de Google Translate no va a hacer un muy buen trabajo. E incluso entonces, no esperes mucho a menos que estés traduciendo texto pegado directamente de los documentos de la ONU.

Más detalles sobre la traducción para los curiosos.

Un modelo de Markov oculto añade «estados». Se supone que el hablante pasa aleatoriamente de un «estado» a otro, y cada estado tiene su propio conjunto de probabilidades sobre la palabra que «emitirá». Por lo tanto, un modelo de Markov oculto es una conjetura estadística sobre cuáles son los estados, las probabilidades de transición y las probabilidades de emisión más probables que producirían un conjunto determinado de secuencias, suponiendo que se produjeran de esta manera aleatoria.

Google Translate por lo tanto calcula: «Dado que el autor en la lengua A acaba de decir (hasta) estas cinco palabras, ¿cuál es el estado más probable en el que se encuentra el autor? Bien, ahora, a partir del estado correspondiente en la lengua B, ¿cuál es la palabra más probable que saldrá a continuación?»

Aquí tienes una ilustración de la ventana contextual de cinco palabras. Si introducimos lo siguiente:

Los pantalones, como esperabas, estaban puestos.

Los pantalones estaban puestos.

Los pantalones, como esperabas, están puestos.

Las traducciones al latín (con traducciones manuales de vuelta al inglés), son:

Anhelat quemadmodum speravimus confecta. (Está jadeando tal y como esperábamos que se cumpliera.)

Braccas sunt attriti. (Los pantalones se han desgastado ).

Anhelat, ut spe teris. (Está jadeando, al igual que, por la esperanza, te estás desgastando.)

Nota que la primera y la tercera frases rozan el sinsentido gramatical. No hay ninguna secuencia de cinco palabras en la base de datos de inglés de Google Translate que se alinee bien con «pants as you expected were/are», así que es un alarde. Fíjese que en la tercera frase, al llegar a «worn», ha olvidado qué sentido de «pants» eligió al principio de la frase. O mejor dicho, no lo olvidó, porque nunca lo rastreó. Sólo ha seguido las secuencias de cinco palabras. Le da a la segunda frase algún tipo de significado, pero incluso así, sigue siendo muy errónea – no sólo le da a «worn» un significado erróneo (ya que, como he dicho antes, no establece ningún vínculo semántico entre «pants» y «worn» que implique la otra definición de «to wear»), sino que falla por completo en hacer coincidir el género del sustantivo y del verbo, o en tener el sujeto en el caso correcto.

Así que, que la frase tenga sentido afecta en cierto modo a que la traducción signifique algo, pero es peor que eso. Lo que más importa es la coincidencia exacta, palabra por palabra, con los textos de la base de datos.

Ingresando el latín en Google Translate (con las palabras cambiadas de la primera frase mostradas en negrita):

Abraham vero aliam duxit uxorem nomine Cetthuram.

Quintilianus vero aliam duxit uxorem nomine Cetthuram.

Abraham vero aliam duxit uxorem nomine Iuliam.

Abraham vero canem duxit uxorem nomine Fido.

Salida en español:

Y Abraham tomó otra esposa, que se llamaba Keturah.

Y Abraham tomó otra esposa, y su nombre era Keturah.

Y Abraham tomó otra esposa, y el nombre de su esposa, una hija llamada Julia.

Y Abraham tomó una esposa, y le trajo a un perro de nombre Fido.

La Vulgata y la traducción de la ASV (o similar) se encuentran entre los textos de origen de Google Translate, por lo que es muy bueno en la traducción directa de los mismos – nota, sin embargo, lo que sucede cuando la entrada está fuera por tan sólo una palabra. Al no ser capaz de detectar la similitud, el software comienza a traducir fragmentos de frases más pequeños en lugar de la frase completa: por ejemplo, el fragmento «uxorem nomine Cetthuram» se traduce en las dos frases anteriores en las que aparece como «otra esposa, y su nombre era Keturah» a pesar del cambio de contexto.

Este método de traducción es la razón por la que Google Translate funciona relativamente bien para las lenguas más analíticas , donde el orden estricto de las palabras es lo más importante para el significado, pero terriblemente para las lenguas más sintéticas como el latín, donde las inflexiones definen el significado. Esto se debe a que en dichas lenguas analíticas, es más probable que las palabras subsiguientes tengan un vínculo semántico que permita retener el significado cuando se reproduzcan en la lengua de destino.

El modelo de traducción automática neural

El modelo de traducción automática neural ha ido más allá de los simples modelos estadísticos para la traducción, utilizando en su lugar el aprendizaje automático y las redes neuronales.

Según una entrada del blog de Google sobre el tema:

A un alto nivel, el sistema Neural traduce frases enteras a la vez, en lugar de hacerlo pieza por pieza. Utiliza este contexto más amplio para ayudar a averiguar la traducción más relevante, que luego reordena y ajusta para que sea más parecida a la de un ser humano que habla con una gramática adecuada.

Incluso más avanzada es la Traducción Cero con el Sistema de Traducción Automática Multilingüe de Google, que puede considerarse como la traducción de las frases de entrada a su propia ‘interlingua’ semántica informática, y luego al idioma de salida. Esto es lo que permite la «traducción cero» entre pares de idiomas que ha analizado antes. El ejemplo citado en el informe de Google demostró una traducción razonable entre el coreano y el japonés al haber sido entrenado únicamente con pares de oraciones japonés-inglés y coreano-inglés. Desgraciadamente, ninguno de ellos parece que vaya a llegar al latín a corto plazo.

Si quieres ver cadenas de Markov funcionando en inglés en reddit, /r/SubredditSimulator es un subreddit completamente lleno de bots de cadenas de Markov (pero no de modelos de cadenas de Markov ocultas) sembrados por los contenidos de los subreddits. Los títulos de los posts son creados por una longitud de cadena de Markov («ventana» contextual de palabras) de dos, lo que significa que cada secuencia de tres palabras existió en algún momento en el subreddit del que el bot tomó su fuente. Los comentarios son creados por el mismo método, excepto los más largos, que tienen una longitud de cadena de Markov de tres.

TL;DR. Simplemente léelo. En resumen, sin embargo, el sistema de traducción de Google para el latín no tiene análisis gramatical o semántico a ningún nivel, sino sólo un modelo estadístico de la palabra más probable que aparecerá a continuación, basado en el análisis del corpus de obras que tiene tanto en la lengua de entrada como en el latín. Esto funciona relativamente bien para lenguas como el inglés, donde el orden de las palabras es lo más importante, pero es espantoso para lenguas como el latín.

Así que NUNCA use Google Translate para el latín si quiere algún tipo de traducción real.

Como dice la barra lateral:

Google Translate siempre se equivoca, siempre. Ni siquiera te molestes en recurrir a Google Translate antes de pedirnos ayuda con una traducción.

Entrevistado del excelente post de Ben Kovitz en el StackExchange de latín, y luego ligeramente ampliado.

Leave a Reply