14 janeiro 2019

Onde está o George?

Peça a este software para o encontrar na multidão.

Onde está o George?

O idtracker.ai é uma mistura de algoritmos convencionais e de inteligência artificial desenvolvidos no Centro Champalimaud. A partir de imagens de vídeo de uma multidão composta por dezenas de indivíduos em movimento, aprende a identificar cada indivíduo a cada instante. George é um peixe-zebra. Juntamente com Tom e mais 98 companheiros, George nada livremente num tanque de laboratório no Centro Champalimaud (CCU), em Lisboa, Portugal. Uma câmara de vídeo regista, vistas de cima, as idas e vindas de todos os animais.

Pergunta:

"O objectivo final da nossa equipa é perceber os comportamentos de grupo", destaca o neurocientista, cujos nomes predilectos para falar dos peixes quando explica o seu trabalho são George e Tom. "Queremos perceber como os animais de um grupo decidem em conjunto e aprendem em conjunto". Ora, para isso, é obrigatório extrair dados de alta qualidade dos vídeos – tais como a posição e a forma de cada um dos animais, e ainda o rasto individual de cada um, sem erros.

Para o cérebro humano – ou mesmo para um programa de computador convencional – seria impossível reconhecer cada indivíduo no meio de dezenas de outros muito parecidos. "Daríamos em doidos a tentar", diz de Polavieja. Quando se trata de grandes multidões, mesmo um computador poderoso demoraria anos a obter resultados sem a ajuda da inteligência artificial. E provavelmente, os resultados não seriam muito precisos.

É aí que entra em cena o idtracker.ai. O novo software, acrescenta de Polavieja, fornece dados com uma qualidade que é absolutamente indispensável para, numa segunda fase, poder compreender as regras que orientam o comportamento colectivo dos peixes.

Há quatro anos, quando ainda trabalhava em Espanha, de Polavieja publicou, também na Nature Methods, uma primeira versão do software que não recorria à inteligência artificial. Os resultados foram muito mais modestos. "Na altura, só conseguíamos seguir o rasto a dez animais", recorda.

De Polavieja e seus co-autores – Francisco Romero-Ferrero, Mattia Bergomi, Robert Hinz e Francisco Heras – testaram agora a nova versão com inteligência artificial em grupos de 30, de 50, e até de 100 peixes-zebra. "Não testamos mais de 100 porque o nosso tanque não é suficientemente grande". Contudo, usando uma outra abordagem para registar as imagens, os cientistas mostraram que o software consegue identificar individualmente até 150 peixes com uma perda mínima na precisão. "Eu não acreditava que seríamos capazes de alcançar estes números. Foi uma surpresa", observa de Polavieja. "Pensava que não havia informação suficiente nas imagens."

Aprendizagem profunda

Utilizando as imagens de vídeo dos peixes-zebra no tanque, a primeira rede na cadeia de processamento das imagens aprende a distinguir, ao nível de cada pequeno ponto nelas visível, aqueles que correspondem a apenas um animal e os que correspondem a vários.

A partir dos resultados da primeira, a segunda rede neural aprende então a atribuir um nome (ou um número) a cada manchinha nas imagens que contém apenas um peixe. Por outras palavras, aprende de facto a identificar individualmente cada animal. Este reconhecimento baseia-se nas características únicas de cada peixe-zebra. "Para nós, todos peixes-zebra parecem iguais, mas isto prova que são todos diferentes uns dos outros", observa de Polavieja.

Por último, são usados dois algoritmos convencionais. "Um para ganhar alguma certeza sobre os poucos indivíduos cuja identidade ainda é algo incerta”, diz de Polavieja", e o outro para determinar quem é quem quando os caminhos dos peixes se cruzam – isto é, quando as suas trajetórias aparecem sobrepostas no vídeo.

Os resultados falam por si: em mais ou menos uma hora, o idtracker.ai identifica todos e cada um dos 100 peixes-zebra que aparecem no vídeo, a cada momento, com quase 100% de precisão! "Se mostrarmos à rede [neural] uma parte do vídeo que nunca viu e perguntarmos-lhe: 'quem é aquele?', a rede irá atribuir correctamente um nome (ou um número) a esse peixe 99,997% das vezes", diz de Polavieja. E se quisermos saber onde estão George, Tom, ou qualquer outro peixe-zebra num dado instante, o software irá encontrá-los na multidão quase para além da sombra da dúvida.

A equipa testou ainda o software com moscas-da-fruta, peixes medaka japoneses, formigas e ratinhos. O programa também funciona nestas espécies, embora com um menor número de indivíduos. "Os peixes-zebra são os melhores" para este tipo de estudos, diz de Polavieja. Pelo contrário, "os ratos são mais difíceis de distinguir porque tendem a agrupar-se e deformar-se".

"Esta é a primeira vez que são obtidos dados de alta qualidade para 100 peixes", conclui de Polavieja. A equipa já utilizou os dados fornecidos pelo idtracker.ai – que está disponível gratuitamente para todos, em www.idtracker.ai – para extrair um conjunto de regras que explicam, em grande medida, o comportamento colectivo dos peixes-zebra. Os resultados são descritos num outro artigo, que já está publicado no bioarxiv.org e que foi submetido para publicação numa revista científica.

Quanto a possíveis aplicações, este software e outros semelhantes deverão permitir seguir o rasto de pessoas ou identificar uma determinada pessoa numa multidão com base em informações sobre a sua aparência física. "Hoje em dia, existe todo um sector que desenvolve este tipo de software", diz de Polavieja. "As técnicas da inteligência artificial estão a ser aplicadas para desenvolver diversas ferramentas semelhantes. Mas até nós termos provado que é possível usá-las para identificar animais em grandes grupos, era difícil imaginar que isso pudesse ser, sequer remotamente, possível.".

Por Ana Gerschenfeld, editora de ciência no Gabinete de Comunicação de Ciência da Champalimaud Research

Legenda da imagem: O idtracker.ai identifica correctamente cada peixe quase 100% das vezes (cores falsas). Crédito: Francisco Romero-Ferrero.

Publicado na ar magazine.