14/12/23

Tradução automática e inteligência artificial: magia não é, nem uma pessoa a pensar


Sou muitas vezes confrontado com comentários e críticas aos programas de tradução automática que revelam que a maior parte das pessoas não compreende como é que funcionam esses programas. Não falo de compreender a fundo, compreender mesmo, porque isso deve haver muito poucas pessoas que o consigam fazer e eu não sou com certeza uma delas. Falo antes de ter uma ideia da arquitetura de base desses programas, da maneira como funcionam. Isso ajuda a evitar críticas sem grande sentido aos programas de tradução, mas também a servir-se deles de forma a minimizar as suas lacunas e imperfeições várias, que não hão de, por certo, desaparecer já amanhã — embora estejam a desaparecer, devagarinho, dia após dia. 

Houve, de 1978 a 1992, um grande projeto europeu chamado EUROTRA, que visava criar um programa de tradução automática para as línguas da União Europeia. A ideia era criar um programa que desconstruísse as frases da língua de partida de modo a transformá-las em estruturas abstratas que depois se voltavam a materializar com o léxico e a estrutura sintática da língua de chegada. No fundo, fazer aquilo que se acreditava que um ser humano fazia inconscientemente ao traduzir.

O projeto nunca foi concluído: era demasiado difícil. Uma amiga minha trabalhou nesse projeto durante alguns anos, só com as regras de colocação dos pronomes em português e italiano, sem grandes resultados. Era muito difícil criar as regras para o programa e as estruturas abstratas entre a língua de partida e a língua de chegada eram muito pesadas. Agora, os programas de tradução automática melhoram de dia para dia. Há uns melhores que outros, é certo, e também é certo que alguns continuam a fazer muitos disparates, mas os melhores são muitas vezes extremamente eficazes. A principal diferença relativamente ao falhado projeto EUROTRA é estes programas não têm regras para transformar as frases de uma língua em frases da outra. Usam algoritmos que procuram associações em bases de dados muitos grandes. Dito de forma simples, a metodologia destes programas é «enormes quantidades de informação».

Vou dar um exemplo da qualidade da tradução automática: ao contrário do que se possa pensar, este parágrafo não foi escrito originalmente em português. Escrevi-o em inglês e depois utilizei um programa de tradução automática gratuito para o traduzir para português. Não introduzi qualquer alteração na tradução e, embora talvez não seja a tradução mais elegante (mas o meu texto original em inglês também não deve ser assim tão elegante), não há erros significativos, quer na sintaxe, quer na escolha das palavras, embora eu não tenha escolhido, de propósito, as estruturas gramaticais mais fáceis*.

O meu amigo Pedro Malaquias publicou uma vez no Facebook o seguinte texto:

lost in translation

time flies

o tempo moscas

glória glória

ao tradutor automático

É um texto que dá conta de uma certa ideia de um tradutor automático e que talvez seja mesmo uma tradução com um programa (dito)de tradução muito mau (a tradução do Facebook, por exemplo, é muitas vezes exasperante). E pode até obter-se esse divertido resultado em verdadeiros programas de tradução separando as duas linhas:

time

flies

Mas há muito tempo que os programas de tradução, mesmo quando traduzem mal, não fazem frases agramaticais — se o input for uma frase e não palavras isoladas e escrito com uma pontuação standard. Já em janeiro de 2017 eu dava a uma amiga este exemplo de tradução automática, também sem mudar absolutamente nada do proposto pelo programa de tradução:

As políticas nacionais de Gestão de Recursos Humanos são um exemplo disso. Tem-se argumentado que os investimentos no desenvolvimento de capacidades terão um efeito limitado se não forem suportados por mudanças adequadas nas políticas de RH. A questão da retenção de pessoal técnico qualificado e treinado é há muito reconhecida como fundamental para se conseguir melhorias duradouras na prestação de serviços municipais, mas pouco se fez para mudar as políticas, procedimentos e práticas atuais, que também têm dimensões políticas que são difíceis de mudar. Há muitas outras leis e regulamentos que devem ser alterados para chegar a um ambiente mais propício para o desenvolvimento municipal**.

Como é que os programas sabem quando é que flies é o plural de fly, «mosca», quando significa «braguilhas» e quando é a terceira pessoa do presente do verbo fly, «voar»? Bom, ninguém lhes deu regras, apenas foram treinados com muitos milhares ou milhões de exemplos de ocorrências das formas em vários contextos. Disseram-lhe: neste contexto é isto, neste contexto é isto, neste contexto é isto. E, a partir daí, o algoritmo computa as probabilidades. E acerta quase sempre. Não sabemos ao certo como o programa faz, o que é que ele encontra que o faz distinguir as várias aceções dos termos ou levar a cabo tarefas linguísticas ainda mais complicadas. E isso é um bocado irritante, não percebermos ao certo como ele funciona, só sabemos que faz o que deve. 

Por muito irritante que possa ser, esta ignorância de como o programa funciona não difere em nada da nossa ignorância de como funciona o nosso cérebro. Nós também não sabemos como o nosso cérebro cola significados às palavras da língua. Sabemos, por exemplo, que podemos usar uma palavra metaforicamente ou de outra forma «desviante», mas há usos dessa palavra que não reconhecemos como metafóricos ou «desviantes», mas antes como estrangeirismos: os falantes da língua nunca usariam aquela palavra naquela situação. Mas não sabemos porquê. 

Podemos sair um pouco da língua, para um exemplo talvez mais claro para a maior parte das pessoas que não estão habituadas a questões linguísticas. Todos sabemos que, quando vemos uma pessoa ao longe, antes de distinguirmos o corpo e as feições, já sabemos, pelo andar, se é homem ou mulher. Há exceções, claro, mas é assim na esmagadora maioria dos casos. Se interrogarmos alguém — ou nos interrogarmos nós próprios — sobre o que caracteriza um andar masculino ou um andar feminino, porém, não sabemos responder. Os estudos sobre o assunto mostram, por exemplo, que é o movimento de alguns pontos das pernas, e não do tronco ou dos braços, que determinam esse reconhecimento, mas não se sabe exatamente quais e como. Escolhi este exemplo, porque há programas informáticos que fazem esse mesmo reconhecimento de género na marcha humana tão bem como nós, mas também sem saber como ele é feito. É o mesmo princípio: numa base de dados com milhares e milhares de filmes de homens e mulheres, instrui-se um algoritmo sobre quais são homens e quais são mulheres. E ele aprende. Como nós. Sem saber como, sem nós sabermos como.

Não há magia nenhuma na tradução automática. E, como não há magia, os programas não só funcionam melhor com determinando tipos de textos (os tipos mais frequentes nas bases de dados) como podem, através de práticas simples, ser ajudados a traduzir mais corretamente. Palavras isoladas não funcionam. Como há de o programa procurar contexto? Às vezes, nem é preciso muito para contextualizar. Por exemplo, o j.j.amarante, num comentário deste blogue, referia que um programa de tradução automático traduzira João Paulo (o nome de papa de Karol Józef Wojtyła) para latim como John Paul. 

Respondi eu: 

[Este programa] traduz sempre para inglês antes de traduzir para outra língua. Mas funciona com probabilidades de ocorrência e precisa de contexto. Imagino que a base de dados em latim seja muito pequena e, sem mais informação, só com dois nomes próprios, o resultado é mau. Melhor, é nulo... Mas, se escrever "Papa João Paulo", que chega para definir contexto, por ser uma sequência tão específica, já o [programa] dá Ioannes Paulus Pp. em latim, uma tradução correta.

Além disso, a esmagadora maioria os textos que existem nas bases de dados são textos escritos em linguagem standard em frases standard. Por isso, os resultados são muito melhores com frases completas e com ortografia e pontuação padronizada, como disse atrás.

Agora, tudo isto levanta uma questão muito interessante:

Jaron Lanier sublinhava, já há quase dez anos, que, «nos bastidores, [de um tradutor automático baseado em grande quantidades de dados] estão literalmente milhões de tradutores humanos que fornecem os exemplos» e «não estamos a pagar nada a essas pessoas que fornecem os exemplos para os corpora de que precisamos para pôr os algoritmos de inteligência artificial a funcionar. Para criar esta ilusão de uma inteligência artificial autónoma, independente, temos de ignorar as contribuições de toda a gente de cujos dados nos servimos para a fazer funcionar.»   

É bom não nos esquecermos de que estes tradutores automáticos somos nós, eu e outros tradutores, que os alimentamos, ou melhor, que os criamos.

Noam Chomsky diz a mesma coisa quando acusa a inteligência artificial de ser «alta tecnologia de plágio», ou seja, um programa com acesso a uma quantidade enorme de textos ou imagens efetivamente produzidos por pessoas, que depois cola bocados uns aos outros, de modo a que seja impossível saber onde foi buscar a informação. Já houve casos em que os bocados das obras que compõem os textos ou as imagens produzidas pelos programas de inteligência artificial são reconhecíveis e os seus autores levem os proprietários do programa a tribunal. Mas, na maior parte dos casos, é impossível detetar a origem da informação.

O que é curioso, mais uma vez, é que é também assim que funciona o ser humano. Também nós, quando produzimos seja lá o que for, usamos sempre ideias, conhecimentos ou técnicas que nos vêm de outras pessoas. Apenas os reorganizamos como nossos, em algo nunca antes produzido. 


___________________

* I am going to give an example of how good automatic translation has become: unlike you might have thought, this paragraph was not originally written in Portuguese. I wrote in English and then used a free automatic translation programme to translate it into Portuguese. I did not introduce any change in the translation at all and, although perhaps it is not the most elegant translation (but then again, my original English text was probably not that elegant either), there are no significant mistakes to be found, in both syntax or choice of words, although I on purpose did not choose the easiest grammar structures. 

** National policies of Human Resources Management are a case in point. It has been argued that investments in capacity development will have limited effect unless supported by adequate changes in HR-policies. The issue of retention of qualified and trained technical staff has long been recognized as key to achieving lasting improvements in municipal service delivery, but little has been done to change current policies, procedures and practices, which also have political dimensions which are difficult to change. There are many other laws and regulations that must be changed to arrive at a more conducive environment for municipal development. 


Sem comentários: