Fernanda Viégas, cientista sênior de pesquisa de inteligência artificial do Google, fala sobre AI, machine learning e as soluções que surgem quando ferramentas open source chegam às mãos de desenvolvedores empenhados em resolver problemas locais.
É incrível o que acontece quando a gente coloca ferramentas open source nas mãos de desenvolvedores e comunidades que querem resolver problemas locais. Pensando nisso, eu queria falar um pouquinho sobre a época histórica estamos vivendo quando o assunto é inteligência artificial.
Para começar, o que é inteligência artificial? E esse tal de machine learning? Bem, IA parece uma grande novidade mas é uma disciplina que surgiu nos anos 50 a partir da teoria de que qualquer comportamento inteligente é construído por meio de um sistema de estímulos e feedbacks. Já machine learning é quando a gente treina um sistema de computadores para realizar tarefas por meio de exemplos, milhares deles. Funciona mais ou menos assim: mostramos inúmeras imagens de gatos e cachorros ao sistema e esperamos que ele, aos pouquinhos, comece a diferenciar os dois animais por meio do reconhecimento de padrões nos dados. Isso é o que a gente chama de treinamento.
Aí, quando vemos que o sistema já está bom nisso, introduzimos um novo tipo de teste chamado "inferência". Nele, a gente mostra uma imagem que ele nunca viu perguntando se é um gato ou cachorro e espera a resposta certa.
Mas por que eu estou falando sobre isso? Porque é uma grande revolução em termos de programação computacional. Até hoje, quando a gente queria que um computador resolvesse um problema pra gente, tinha que fornecer todas as regrinhas e escrever exaustivamente todos os cenários que a máquina poderia encontrar, por exemplo, "Computador, se você encontrar o cenário x, faça y".
Isso é bom, mas é limitado, isso porque há muitos problemas complexos no mundo para os quais a gente não conhece as regras que levam a uma solução. É aí que entra o machine learning.
Vamos pensar: como a gente reconhece o rosto de um amigo ou amiga? Se eu perguntar a vocês quais foram todas as regrinhas que o seu cérebro usou para reconhecer um rosto familiar, vocês saberiam dizer? Não? Nem eu. Mas desde o nascimento, a gente vive tão rodeado de pessoas e rostos que começa a virar um expert em diferenciar feições. O machine learning funciona mais ou menos assim também, a gente mostra milhares de imagens e, com o passar do tempo, o computador vai começando a entender o que padrão em um rosto humano. Aí, se a gente mostra uma imagem e o computador diz "isso é um rosto" corretamente, ele ganha um "prêmio", um "isso aí, continue assim, muito bem." Se ele errar dizemos "você está errado, vamos voltar e fazer de outro jeito". Esse é o sistema de treinamento. Eventualmente, o computador começa a ficar bom o bastante para distinguir um rosto humano de todas as outras imagens e, a partir daí, pode começar a diferenciar outros padrões, como rostos masculinos versus rostos femininos, rostos de criança versus rostos de adulto. Chega uma hora que o computador começa até mesmo a identificar padrões de ações. Por exemplo, hoje, no Google Fotos, você pode buscar por imagens de beijos e abraços. Eu acho incrível. Resumindo, é assim que a inteligência artificial funciona.
Mas como a gente faz para isso tudo funcionar da melhor maneira possível? É aí que entra a minha pesquisa: eu lidero um grupo no Google AI que cria sistemas que melhoram a interação entre essa tecnologia e os humanos. Por exemplo, começamos a trabalhar com médicos para incrementar o diagnóstico de diabetes e de câncer. Um exemplo bem concreto desse nosso trabalho é direcionado à retinopatia diabética. Para saber se você é candidato a diabetes e potencialmente à perda da visão, o oftalmologista tira uma foto do fundo do seu olho e analisa a imagem. Esse é um exame importante porque pode prevenir a cegueira em milhões de pessoas, só que, infelizmente, em diversos lugares no mundo, há muito mais pacientes do que médicos disponíveis para fazer essa análise. Então a gente desenvolveu um sistema de AI que consegue fazer esse diagnóstico praticamente sozinho, e o estamos levando para lugares onde há escassez de médicos, como certas áreas rurais na Índia, por exemplo.
Outra coisa interessante desse sistema é que, além de diagnosticar o diabetes, ele começou também a prever o risco cardiovascular dos pacientes nos próximos 5 anos, algo que os próprios médicos não sabiam que era possível fazer por meio dessas imagens. Assim, criamos uma nova maneira de obter diagnósticos confiáveis que pode ser levada a milhões de pessoas que, de outra maneira, não teriam acesso a esse tipo de tratamento de saúde.
Parte do trabalho que a gente faz no meu grupo, tem a ver com a democratização da inteligência artificial. Há um tempo atrás, lançamos o TensorFlow.js, que leva o poder do machine learning para o seu navegador, laptop ou smartphone. Com isso, hoje, muito mais desenvolvedores têm acesso a essa tecnologia poderosa que fala a língua nativa da internet, o javascript. Já começamos a ver uma infinidade de usos diferenciados de inteligência artificial pela web.
Vou dar um exemplo específico que me impressionou muito, o projeto de um desenvolvedor sem teto chamado Oz Ramos, do Oregon, nos EUA. Ele pegou seu laptop e uma câmera, e treinou o computador para que toda vez que ele olhasse para cima, o cursor fosse para cima, e toda vez que ele olhasse para baixo, o cursor fosse para baixo. Toda vez que ele franzia o rosto, o cursor clicava. Por que ele fez isso? Para ajudar um amigo que tinha sofrido um derrame, ficado tetraplégico e que só conseguia mover o rosto. Usando o TensorFlow.js no seu computador pessoal, ele criou um sistema capaz de reconectar esse amigo com o mundo por meio da internet. Isso, para mim, é um exemplo extremamente inspirador.
O TensorFlow.js está começando a ser usado em salas de aulas de todas as partes dos EUA e eu espero que aqui no Brasil, muito em breve, isso também comece a acontecer. Eu vejo uma grande oportunidade para começarmos a usar todas as possibilidades de AI e machine learning para atender às nossas próprias necessidades e para resolver nossos próprios problemas. O Brasil já tem uma das maiores comunidades de desenvolvedores usuários do TensorFlow tradicional. Não vejo a hora de ver o que eles vão criar com o TensorFlow.js a partir de agora.