Article image

FB

Felipe Barbosa13/04/2024 22:28
Compartilhe

O poder dos dados não rotulados na IA

  • #Inteligência Artificial (IA)

A Inteligência Artificial é um campo de pesquisa e desenvolvimento que, principalmente na última década, tem feito parte de cada vez mais aspectos de nossas vidas.

Quando acessamos serviços de atendimento ao usuário em instituições como bancos, por exemplo, muito provavelmente estamos interagindo com algoritmos de IA especializados chamados chatbots. Ao desbloquearmos nossos celulares ou autenticamos aplicativos com reconhecimento facial, muito provavelmente, uma IA está atrelada ao reconhecimento dos padrões relevantes para tal tarefa. Em linhas de montagem, câmeras e algoritmos de Inteligência Artificial trabalham para identificar falhas em máquinas e produtos. Em cidades inteligentes, sistemas baseados em inteligência artificial podem atuar no monitoramento de enchentes, acidentes, congestionamentos, entre outros.

Poderíamos elencar mais uma infinidade de situações em que sistemas baseados em Inteligência Artificial são ou ainda podem vir a ser úteis no futuro. Contudo, acredito que esses exemplos já sejam suficientes para ilustrar a quase "onipresença" da IA nos dias atuais.

image

Figura 1 - A Inteligência Artificial está presente em quase todos os lugares. Fonte: https://boomers-daily.com/2020/12/07/future-science-artificial-intelligence-everywhre/.

Mas como tais sistemas são desenvolvidos? Seu próprio nome nos dá uma dica. O termo "inteligência" sugere um processo de aprendizado, ou treinamento. Em Inteligência Artificial e, mais especificamente, Redes Neurais, o processo mais comum de aprendizado é o supervisionado.

Nesse paradigma de aprendizado, fornecemos ao algoritmo o par: entrada-rótulo. A entrada é o dado que será fornecido ao sistema para que ele possa processar e extrair padrões relevantes; o rótulo é o objetivo, a saída esperada do nosso sistema de IA. Considerando um cenário de segmentação de imagens, nossa entrada seria uma imagem do ambiente e nosso rótulo seria o mapa de segmentação associado, como ilustrado a seguir.

image

Figura 2 - Exemplo de dado utilizado no aprendizado supervisionado. À esquerda, a imagem original, que alimentará o modelo; à esquerda, o rótulo associado à mesma. Fonte: https://download.visinf.tu-darmstadt.de/data/from_games/

No entanto, o processo de rotulação normalmente exige muito esforço de anotadores humanos, de forma que é inviável para conjuntos de dados muito grandes. Para a base de dados Cityscapes, que é muito utilizada na tarefa de segmentação semântica de ambientes urbanos, cada imagem levou cerca de 90 minutos para ser rotulada!!!

Isso faz com que dados rotulados sejam escassos em diversos cenários de aplicação.

Em contrapartida, nosso contexto atual de geração de dados em larga escala faz com que dados não-rotulados sejam abundantes. A pergunta que surge é: é possível utilizar dados não rotulados no treinamento de modelos?

image

Figura 3 - Exemplos de dados rotulados (esquerda) e não-rotulados (direita). Fonte: https://proceedings.mlr.press/v119/guo20i/guo20i.pdf

A resposta é: SIM!

Esse é exatamente o objetivo do chamado aprendizado auto-supervisionado (self-supervised learning). Em termos simples, sua proposta é utilizar dados não-rotulados de forma a realizar o aprendizado de representações a partir dos mesmos. Dessa forma, mesmo na ausência de rótulos suficientes para a tarefa alvo, é possível aprimorar o desempenho do sistema de IA apenas com base em dados não-rotulados. Alguns exemplos de técnicas de aprendizado auto-supervisionado são: Self-training, Image Reconstruction e Jigsaw Puzzle solving.

Uma explicação mais detalhada sobre tais técnicas fica para uma próxima.

Espero que este artigo tenha ajudado a compreender a importância dos dados não-rotulados em IA, assim como tenha instigado a sua curiosidade sobre um assunto tão atual e relevante!

Dito isso, resta apenas desejar um ÓTIMO dia/tarde/noite. Até breve!

Compartilhe
Comentários (0)