14 de novembro de 2013

Big data

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 frase 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. O projeto nunca foi concluído: era demasiado difícil. Uma amiga minha trabalhou nesse projeto durante alguns anos, 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, Google Translate melhora de dia para dia. A principal diferença é que Google Translate não tem regras para transformar as frases de uma língua em frases da outra. Usa algoritmos que procuram associações em quantidades muitos grandes de dados. Basicamente, a metodologia de Google Translate é “quantidades enormes de dados”.

No sua palestra O que significam grandes quantidades de dados para as ciências sociais (What big data means for social science), num encontro organizado pelo site Edge, Sendhil Mullainathan refere precisamente esse problema do processamento de línguas naturais e como grandes quantidades de dados o vieram resolver (traduzo eu):
Quero analisar, neste grande mundo do processamento das línguas naturais, um pequeno problema chamado “desambiguação do sentido de uma palavra”. O que é isto de desambiguação do sentido de uma palavra? Vejamos a palavra “banco”. Numa determinada frase, a palavra banco refere-se a banco de areia? Ou refere-se a instituições financeiras que parecem ter constantemente problemas? Ou será que se refere a um banco de jardim? Pode significar muitas coisas. Como é que, com um algoritmo, a análise de uma frase vai determinar o que significa? As pessoas que trabalham com inteligência artificial tentaram fazer o que eu e vocês naturalmente também tentaríamos, nesta situação: disseram: “Vamos descobrir que regras podem ajudar a disambiguizar”. Então, as pessoas começaram a escrever as regras, a reflectir, a pensar no que poderia funcionar. Houve pessoas muito inteligentes a tentar resolver o problema e o progresso que fizeram foi (acho que não é um número preciso, mas aproximadamente…) zero. Era um problema. E aplica-se a todo o processamento de línguas naturais. Grosso modo, quando deixei as ciências informáticas, parecia uma tarefa impossível, que talvez um dia, daí a 200 anos, alguém com alguma ideia brilhante conseguisse realizar. Agora, tenho aqui a Siri no meu telefone. O que é que aconteceu?
Fazendo uma análise retrospetiva, o que aconteceu não foi nenhuma ideia brilhante que tenha sido posta lá dentro do meu telefone, o que aconteceu foi que se usaram grandes quantidades de dados. O que quero dizer com isto é o seguinte: dá-se um algoritmo; fornecem-se milhões, biliões de ocorrências da palavra banco, de que se diz: “Neste caso, significa “acumulação de sedimentos num rio”, neste caso, significa tal…” Apenas se fornecem toneladas de dados para aprendizagem. Não se pensa em que regras se vai usar ao certo. Apenas se codificam muitos elementos, todos os elementos que de possa imaginar. Atira-se com eles lá para dentro. Simplesmente, atiram-se lá para dentro. Depois, põe-se esse algoritmo a aprender as associações que preveem quando é “banco de areia” e, quanto mais dados fornecer, mais amplo é o conjunto de dados e melhor se torna em termos do rigor das previsões.
Para os cientistas, é a coisa mais irritante que se possa imaginar. É do estilo: “Como é que isto funciona?” “Não sei, mas funciona. Não é formidável?”
O que significam então grandes quantidades de dados para as ciências sociais – e para as ciências em geral? Em muitos casos, uma maneira nova de pensar o trabalho de investigação. Não é que o cientista deixe de ser necessário, tem sempre de haver alguém a analisar e a dar sentido ao que sai das máquinas*. Mas o trabalho com grandes quantidades de dados, da mesma forma que analisa sentido de uma palavra sem usar regras, apenas a informação de todos os contextos em as frase ou palavra ocorre, pode dar respostas completamente ao lado das hispóteses que o cientista quer, à partida, confirmar ou infirmar. Sendhil Mullainathan chama a isso matar a hipótese e dá um exemplo tão claro como significativo:

Na área de estudo chamada Finanças Comportamentais, existe há cerca de três décadas o conceito de efeito disposição, que descreve um comportamento à primeira vista ilógico: as pessoas tendem a vender bens cujo preço aumentou e a conservar aqueles que baixaram de preço. Usando uma grande base de dados (com dados acerca de 100.000 negociantes) e “pedindo” a um algoritmo que encontre as variáveis que melhor preveem a disposição para vender (com base nas vendas efetivamente realizadas), o algoritmo ignora o efeito disposição e sugere duas outras variáveis que preveem muito melhor a disposição para vender: o facto de o preço atual ficar no quartil superior das distribuição de preços nos últimos seis meses; e a tendência constante dos últimos três preços, seja ela de aumento de preço ou de baixa de preço. Estas duas variáveis são independentes do preço de compra, pelo que a hipótese anterior, o que se observava como efeito disposição parece ser antes um reflexo de variáveis de outra natureza.

O que é interessante aqui é que o trabalho exploratório da máquina com uma grande quantidade de dados não invalida apenas a hipótese inicial, mas, ao contrário do que acontece no trabalho dedutivo tradicional, mostra-nos o que matou a hipótese e não tinha sido proposto por ninguém, e isso, claro, constitui por si só, se não uma hipótese alternativa, pelo menos uma pista para trabalho futuro.
_______________
* Se virem no vídeo a discussão da palestra de Sendhil Mullainathan ou lerem a sua transcrição, verão que há quem pareça temer a possibilidade de o cientista deixar de ter o papel principal na pesquisa, mas é um temor que me parece perfeitamente infundado…

Sem comentários: