Jornal da USP
10/04/2024
Um marceneiro precisa ter os olhos bem treinados para saber de cor qual madeira é qual apenas olhando para tábuas e retalhos. Esse reconhecimento pode ser feito olhando para as cores, para o formato dos anéis mais escuros e para as ranhuras únicas de cada espécie. De forma parecida, um profissional da saúde estuda e pratica muito até conseguir interpretar um exame de imagem com precisão, identificando alterações no organismo que podem indicar um problema.
Para aprender a perceber detalhes visuais como esses, uma inteligência artificial (IA) moderna precisaria de um banco de imagens com milhões de possibilidades, uma supermáquina com vários processadores gráficos e muitos dias de treinamento. Isso mudou quando cientistas do Instituto de Física de São Carlos (IFSC) da USP desenvolveram o Radam (random encoding of aggregated deep activation maps, algo como codificação aleatória de mapas agregados de ativação profunda).
Há mais de um ano, a arquitetura de visão computacional é considerada a mais precisa no reconhecimento de texturas, como mostra o ranking do site Papers With Code. Além disso, basta um computador doméstico convencional para fazer com que o Radam ensine uma IA a classificar novos tipos de texturas visuais.
“Os modelos mais desenvolvidos de IA para processar imagens, de visão mais geral, como o Google Lens, encontram objetos, mas têm dificuldade quando usados em algum tipo de dado em que é muito difícil enxergar alguma coisa, porque eles são treinados para ver coisas cotidianas”, conta Leonardo Scabini, pesquisador do IFSC que esteve à frente do projeto.
O primeiro artigo sobre o Radam foi publicado em 8 de março de 2023 no portal em que figura como melhor método e, em novembro do mesmo ano, na revista científica Pattern Recognition.
As inteligências artificiais adaptadas pela técnica brasileira superam especialistas em algumas tarefas. Isso pode ser usado para distinguir desenhos sem formas definidas, que para uma pessoa comum seriam praticamente idênticos.
Assim como a textura da madeira, que é perceptível a olho nu e reflete características como aspereza ou suavidade de superfícies cotidianas, as texturas visíveis em imagens médicas revelam detalhes estruturais invisíveis sem ampliação, mas que refletem as propriedades das células dos outros microrganismos.
“Às vezes, em uma imagem de microscopia de dois tipos de células, nem o médico consegue ver que uma é cancerígena e a outra não, porque é um dado que está em um nível de muita complexidade ou em uma escala em que o especialista não consegue discernir nada. Porém esse tipo de inteligência artificial consegue.”
Essa categoria de algoritmo pode ser usada também na indústria para a inspeção e controle de qualidade, no sensoriamento remoto, na análise de solo, na nanotecnologia, ciências ambientais e em biossensores para uso médico.
Treinamento em pequena escala
Para criar instrumentos de visão computacional, as grandes empresas usam máquinas enormes com vários processadores e terabytes de memória. Depois de meses, o processamento das bilhões de informações cria redes neurais artificiais que simulam o cérebro humano.
O Radam é inédito porque sintetiza o conhecimento dessas inteligências artificiais genéricas e refina para um problema específico, ao invés de construir uma arquitetura inteligente do zero.
Isso significa que ele não precisa de milhares de dados para especializar um algoritmo em cada aplicação. Além da escassez de dados, o custo de produzir tomografias e microscopias pode ser bem alto em muitos casos. De outra forma, a falta de um grande volume de imagens disponível tornaria o recurso inviável.
Como o número de dados é milhões de vezes menor, o Radam pode fazer em questão de horas e em computadores muito mais modestos o que um aprendizado de máquina convencional levaria semanas.
Uma IA que treina outras IAs
A ferramenta brasileira poderia ensinar a habilidade que alguns veterinários e biólogos possuem, como diferenciar um gato de um cachorro tendo apenas uma foto ampliada de alguns milímetros dos pelos de cada um deles.
“É como se a gente transformasse a capacidade do Google Lens de detectar uma folha em uma árvore na capacidade de detectar uma célula em uma imagem microscópica com milhares de células”, explica Leonardo.
Basta um computador portátil comum, sem placa de vídeo e uma quantidade mínima de exemplos para criar um programa que diferencie uma célula cancerígena de uma não cancerígena ou para identificar uma madeira ilegal. “Você tira uma imagem microscópica da madeira e consegue identificar a espécie baseada nisso”, exemplifica Leonardo.
O método consiste em codificar o que sai de uma inteligência artificial robusta e genérica usando uma pequena rede neural. Em seguida, um sistema especialista é treinado localmente para um desafio colocado. Dessa forma, o processo de aprendizado de máquina é muito mais rápido e menos custoso.
Modelo especialista
O professor enfatiza que a precisão do Radam pode ser maior do que a de profissionais em alguns casos testados. “É um assunto até polêmico, mas há várias situações em que o ser humano não tem habilidade visual e cérebro para reconhecer o padrão nas imagens.”
O reconhecimento de texturas visuais é estudado desde a década de 1970 e nos últimos anos tem superado a capacidade humana em algumas tarefas. Porém, isso não significa que a tecnologia seja infalível. “Ela até pode errar um diagnóstico. A taxa de acerto nunca é 100%”, avalia o professor Odemir Martinez Bruno, do IFSC, que orientou o desenvolvimento do Radam.
Segundo ele, um botânico poderia precisar da flor e da semente para identificar uma espécie vegetal. Já a técnica computacional desenvolvida faz esse reconhecimento através dos padrões visuais de um detalhe da folha ou de microscopias.
“Se colocarmos duas gotas de sangue, uma de gato e outra de cachorro, nós não conseguimos diferenciar visualmente. O sistema especialista Radam consegue”, complementa o professor.
O desafio tem sido interpretar não apenas capturas muito ampliadas, mas também muito reduzidas, como fotos do espaço feitas por satélites.
Renovação constante
Leonardo Scabini explorou o Radam em vários conjuntos de dados de textura, nos quais alcançou resultados de ponta com computadores de diferentes orçamentos. Até a data da publicação, eles eram os melhores do mundo.
Ocorre que, por ser um código compartilhado abertamente e existirem muitos programadores interessados em melhorias para essa mesma área da visão computacional, Odemir Bruno acreditava que outra técnica superasse o Radam em poucos meses. “O fato do método estar há um ano ranqueado em primeiro no mundo é uma coisa muito louvável.”
Outra vantagem do sistema é poder ser usado também em tecnologias que ainda virão, como antecipa Leonardo. “Se alguém criar uma nova inteligência artificial que bata o nosso resultado e aplicarmos o Radam nela, ele provavelmente melhorará os resultados. Essa é uma grande vantagem, pois nosso método é um módulo que se acopla em outras IAs.”
Nos próximos meses, o pesquisador pretende criar uma segunda versão do Radam em sua estada no Instituto Real de Tecnologia de Estocolmo, na Suécia.
Mais informações: e-mails scabini@ifsc.usp.br, com Leonardo Scabini, e bruno@ifsc.usp.br, com Odemir Martinez Bruno [1], [2]
[1] Texto de Ivan Conterno (Estagiário, com orientação de Luiza Caires)
[2] Publicação original: https://jornal.usp.br/ciencias/ia-desenvolvida-na-usp-e-a-melhor-do-mundo-para-reconhecer-texturas/
Como citar este texto: Jornal da USP. IA desenvolvida na USP é a melhor do mundo para reconhecer texturas. Texto de Ivan Conterno. Saense. https://saense.com.br/2024/04/ia-desenvolvida-na-usp-e-a-melhor-do-mundo-para-reconhecer-texturas/. Publicado em 10 de abril (2024).