Para que serve o Google Translate, então?

Porquê o Latin Google Translate é tão mau.

Google Translate for Latin é completamente estatístico. Não tem modelo de gramática, sintaxe, ou significado. Tudo que ele faz suas seqüências correlacionadas de até cinco palavras consecutivas em textos que foram traduzidos manualmente em dois ou mais idiomas.

Mais precisamente, ele construiu um modelo Markov escondido de todas as traduções manuais que foram introduzidas nele. O Google chama a isto o Modelo de Tradução Automática Baseado em Frases, ou PBMTM. Em novembro de 2016, o Google atualizou o Google Translate para usar o Modelo Neural de Tradução Automática melhorado para alguns idiomas, que não funciona assim – mas o latim não está entre eles.

Aqui está como o PBMTM funciona, grosso modo falando. Ele assume que as pessoas falam escolhendo aleatoriamente uma palavra após outra, com as probabilidades determinadas pela palavra anterior falada. Por exemplo, se você disse “duas”, há uma certa probabilidade de que a próxima palavra seja “ou”. Se você acabou de dizer “ou”, há uma certa probabilidade de que a próxima palavra seja “butano”. Você pode calcular uma estimativa destas probabilidades olhando para todos os textos que você alimentou anteriormente. Você pode então gerar algarismos aleatórios, mas apenas ligeiramente coerentes, de acordo com estas probabilidades:

Dois

Dois ou

Dois ou gás butano

Dois ou gás butano

Dois ou gás butano pode ser atacado

Se você usar uma ‘janela’ contextual de mais palavras – digamos, os três, quatro, ou cinco anteriores – para encontrar o próximo, a algaraviada resultante parecerá mais provável que tenha sido escrita por um esquizofrênico do que por um afásico. Aqui está um exemplo, com a janela contextual realçada.

Souvi falar de

Souvi falar de seis

Souvi falar de seis hoje

Souvi falar de seis hoje, nós

Souvi falar de seis hoje, procuramos

Notem como cada frase em negrito poderia ter sido em uma frase real: “Ontem

É um modelo Markov. A parte “oculta” acrescenta alguma complexidade, que vou adiar para o final deste post. A idéia básica é: O PBMTM do Google Translate tenta escolher a próxima palavra mais provável, baseado em estimativas de probabilidade derivadas de seqüências de cinco palavras do corpus que possui de textos no idioma de entrada e no idioma de destino (não só textos reais, mas também muitas traduções de origem pública).

O que o Google Translate é mais confiável é a tradução de documentos produzidos pelas Nações Unidas entre os idiomas em uso lá. Isto porque os documentos da ONU têm fornecido uma parte desproporcionalmente grande dos textos traduzidos manualmente dos quais o Google Translate extrai suas seqüências de cinco palavras, uma vez que os documentos da ONU estão prontamente disponíveis em muitas línguas diferentes (como, por exemplo, todos os documentos oficiais da ONU, registros de reuniões e correspondência na sede da ONU são traduzidos pelo menos em árabe, chinês, inglês, francês, russo e espanhol).

Testemunha do que acontece quando eu digito isto:

À l’exception de ce qui peut être convenu dans les accords particuliers de tutelle conclusément aux Articles 77, 79 et 81 et plaçant chaque territoire sous le régime de tutelle, et jusqu’à ce que ces accords aient été conclusive, aucune disposition du présent Chapitre ne sera interprétée comme modifiant directement ou indirectement en aucune manière les droits quelconques d’aucun État ou d’aucun peuple ou les dispositions d’actes internationaux en vigueur auxquels des Membres de l’Organisation peuvent être parties.

Dá-me:

Exceto conforme acordado nos acordos especiais de tutela celebrados em conformidade com os artigos 77, 79 e 81 e colocando cada território sob o sistema de tutela, e até que tais acordos sejam celebrados, o presente Capítulo não será interpretado como modificando, directa ou indirectamente, de forma alguma, os direitos de qualquer Estado ou povo ou as disposições dos instrumentos internacionais em vigor nos quais os Membros da Organização possam ser partes.

Perfeito! (Quase).

Esta é uma das razões pelas quais suas traduções em latim tendem a ser tão pobres: tem um corpus muito fino de traduções de latim feitas pelo homem para basear seus modelos Markov ocultos emoh, e está usando modelos Markov ocultos.

Então, até que as Nações Unidas comecem a fazer seus negócios em latim, o modelo estatístico do Google Translate não vai fazer um trabalho muito bom. E mesmo assim, não espere muito, a menos que você esteja traduzindo texto colado diretamente de documentos da ONU.

Outros detalhes sobre tradução para os curiosos.

Um modelo Markov oculto adiciona “estados”. Assume-se que o orador faz uma transição aleatória de um “estado” para outro, e cada estado tem o seu próprio conjunto de probabilidades para a palavra que irá “emitir”. Assim, um modelo Markov oculto é um palpite estatístico sobre quais são os estados mais prováveis, probabilidades de transição e probabilidades de emissão que produziriam um dado conjunto de sequências – presumindo que foram produzidas desta forma aleatória.

Google Translate calcula, portanto: “Dado que o autor na língua A acabou de dizer (até) estas cinco palavras, qual é o estado mais provável em que o autor se encontra? OK, agora, do estado correspondente na língua B, qual é a palavra mais provável a sair a seguir?”

Aqui está uma ilustração da janela contextual de cinco palavras. Se entrarmos o seguinte:

Calças, como você esperava, foram usadas.

Calças foram usadas.

Calças, como você esperava, foram usadas.

As traduções latinas (com traduções manuais de volta para o inglês), são:

Anhelat quemadmodum speravimus confecta. (Ele está ofegante tal como esperávamos ter conseguido.)

Braccas sunt attriti. (As calças estão gastas).

Anhelat, ut spe teris. (Ele está ofegante, tal como, pela esperança, você está a desgastar-se.)

Notem que a primeira e a terceira frases se limitam a um disparategrama. Não há nenhuma sequência de cinco palavras na base de dados em inglês do Google Translate que se alinhe bem com “calças como você esperava que fossem/são”, por isso está se desmanchando. Note que na terceira frase, quando chegou a “usar”, já tinha esquecido qual o sentido de “calças” que escolheu no início da frase. Ou melhor, não se esqueceu, porque nunca a localizou. Só seguia sequências de cinco palavras. Ela dá algum tipo de significado à segunda frase, mas mesmo assim, ela ainda está muito errada – não só dá o significado errado de “usado” (já que, como eu disse antes, ela não faz nenhuma ligação semântica entre “calças” e “usado” que implicaria a outra definição de “usar”), mas falha inteiramente em ter o gênero do substantivo e do verbo de acordo, ou em ter o sujeito no caso correto.

Então, se a frase faz sentido afeta de alguma forma se a tradução significa alguma coisa, mas é pior do que isso. O que mais importa é a correspondência exata, palavra por palavra com textos na base de dados.

Entrar latim no Google Translate (com palavras alteradas da primeira frase mostrada em negrito):

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.

Edição inglesa:

E Abraham levou outra esposa, e o nome dela era Keturah.

Quintiliano, agora esposa de outra esposa, e seu nome era Keturah.

E Abraão tomou outra esposa, e o nome de sua esposa, uma filha chamada Julia.

E Abraão tomou uma esposa, e levou-o a um cão com o nome de Fido.

A Vulgata e a tradução ASV (ou similar) estão entre os textos originais do Google Translate, então é muito bom em traduzi-los diretamente – note, no entanto, o que acontece quando o input é desligado por tão pouco quanto uma palavra. Não sendo mais capaz de detectar a similaridade, o software começa a traduzir fragmentos de frases menores em vez da frase inteira: por exemplo, o fragmento “uxorem nomine Cetthuram” é traduzido em ambas as frases acima onde aparece como “outra esposa, e seu nome era Keturah”, apesar da mudança de contexto.

Este método de tradução é porque o Google Translate funciona relativamente bem para línguas mais analíticas , onde a ordem estrita das palavras é a mais importante para o significado, mas terrivelmente para as línguas mais sintéticas como o latim, onde as inflexões definem o significado. Isto porque em tais línguas analíticas, as palavras subsequentes têm mais probabilidade de ter um link semântico que permitirá a retenção do significado quando reproduzidas na língua de destino.

O Modelo de Tradução da Máquina Neural

O Modelo de Tradução da Máquina Neural foi além dos modelos estatísticos simples para tradução, usando em vez disso a aprendizagem automática e as redes neurais.

De acordo com um post de blogue do Google sobre o assunto:

A um nível alto, o sistema Neural traduz frases inteiras de cada vez, ao invés de apenas peça por peça. Ele usa este contexto mais amplo para ajudá-lo a descobrir a tradução mais relevante, que ele então rearranja e ajusta para ser mais como um ser humano falando com gramática apropriada.

Even mais avançado é a Tradução Zero-Shot do Google com o Sistema de Tradução Máquina Multilíngüe do Google, que pode ser pensado como a tradução das frases de entrada para o seu próprio computador semântico ‘interlingua’, e depois para a linguagem de saída. Isto é o que permite a ‘tradução zero-shot’ entre os pares de línguas que já analisou antes. O exemplo citado no relatório do Google demonstrou uma razoável tradução coreano-japonesa, tendo sido treinada apenas em pares de frases entre japonês-inglês e coreano-inglês. Infelizmente, nenhum destes parece estar chegando ao latim em breve.

Se você quiser ver cadeias Markov trabalhando em inglês no reddit, /r/SubredditSimulator é um subreddit inteiramente preenchido com Markov chain bots (mas não modelos escondidos de cadeias Markov) semeado pelo conteúdo dos subreddits. Os títulos dos posts são criados por uma cadeia de Markov (janela contextual de palavras) de dois, o que significa que cada sequência de três palavras existiu em algum ponto do subredito do qual o bot tirou sua fonte. Os comentários são os criados pelo mesmo método, exceto pelos mais longos, que têm um comprimento de cadeia de Markov de três.

TL;DR. Basta lê-lo. Em resumo, porém, o sistema de tradução do Google para o latim não tem análise gramatical ou semântica em nenhum nível, mas apenas um modelo estatístico da palavra mais provável a aparecer a seguir, baseado na análise do corpus de trabalhos que tem tanto na língua de entrada como no latim. Isto funciona relativamente bem para línguas como o inglês, onde a ordem das palavras é o mais importante, mas é horrível para línguas como o latim.

Então, NUNCA use o Google Translate para latim se você quiser algum tipo de tradução real.

Como diz a barra lateral:

O Google Translate está sempre errado, sempre. Nem se preocupe em recorrer ao Google Translate antes de nos pedir ajuda com uma tradução.

Entiremente plagiada do excelente post de Ben Kovitz no Latin StackExchange, e depois ligeiramente estendida.

Leave a Reply