O Problema Da Causalidade

Desde quando comecei a estudar Data Warehouses e Modelagem Dimensional (lá em 2002) lido com transformações de dados em informação. Quando comecei a estudar Mineração de Dados e Inteligência Artificial (em 2004) aprendi a fazer a ligação da informação com alguns modelos de conhecimento.

Quem lida com IA deve estar acostumado a separar os modelos entre caixa preta ou caixa branca, de acordo com a interpretabilidade do modelo de conhecimento. Os caixa preta — como as redes neurais — são difíceis de se interpretar e os caixas brancas — como as árvores de decisão — são facilmente legíveis e interpretáveis.

Mas uma comparação menos comum é a entre os modelos generativos e discriminativos. Os discriminativos são aqueles que não se preocupam com o processo que gera os dados e com seu funcionamento, apenas com o relacionamento das entradas com as saídas corretas, sempre buscando achar a correlação entre elas enquanto minimiza o erro de previsão. Regressões lineares, redes neurais e árvores de decisão são exemplos comuns de métodos discriminativos.

Os modelos generativos, por outro lado, são mais completos (e complexos) porque buscam entender as relações de causa e efeito entre as variáveis que compõem um determinado processo. Redes Bayesianas e modelos hierárquicos (modelos de equações estruturais) são exemplos de métodos generativos.

Porquê essa distinção é tão importante? Ora, por causa da pergunta mais fundamental da ciência: o porquê!

Nas minhas aulas de Business Intelligence eu repetia para os meus alunos que para explicar um fato (geralmente um valor numérico que responde à pergunta “quanto?”), dentre as várias dimensões da informação (quem?, onde?, quando?, como?, o quê?, por quê?), a dimensão “porquê?” é desconhecida. Na verdade é muito arriscado dizer que variável é a causa de outra variável e os pesquisadores evitam ao máximo fazer isso.

É simples calcular correlações entre variáveis, e até a autocorrelação entre os valores da mesma variável ao longo do tempo e do espaço. Mas fazer a inferência causal, ou seja, dizer qual variável tem influência não aleatória, condicionante e direta sobre outra variável, é uma tarefa difícil e arriscada. Todavia querer saber o porquê das coisas é inerente ao ser humano.

Ouvi uma história interessante de um colega do MINDS (http://www.minds.eng.ufmg.br/) sobre o impacto da causalidade nos modelos de IA. Ele disse que tinha um amigo que trabalha em uma empresa de transportes e lá eles têm dois sistemas que avaliam se um carro foi roubado (a partir dos desvios em relação à rota esperada). O primeiro é todo baseado em IF-THEN e tem uma margem de erro de 15%. O segundo é baseado em redes neurais e tem uma margem de erro de 3%. Surpreendentemente o pessoal da empresa preferia o primeiro pois, ao fazer a previsão, ele explicava o porquê daquela previsão— e isso é muito importante para fins de auditoria. A rede neural, além de ser um modelo caixa preta, não é capaz de explicar o porquê de suas previsões e isso não ajuda muito.

Isso é, aliás, um problema já reportado sobre os modelos discriminativos e caixa preta: a auditabilidade. Se uma instituição financeira vai comprar um sistema que faz classificação de risco de clientes, muitos de nós devem pensar que quanto mais preciso melhor e apenas isso basta. Mas isso não é verdade sempre e esses sistemas precisam ser auditáveis por uma miríade de razões. É preciso saber o que está acontecendo por trás dos panos principalmente quando há questões legais envolvidas.

A ausência de inferência causal em grande parte dos sistemas de IA é o ponto central da crítica de Judea Pearl — ganhador do Prêmio Turing em 2011— ao cenário atual da IA, em particular do Deep Learning, em uma recente entrevista. Também por causa dela eu adquiri o livro The Book of Why: The New Science of Cause and Effect, e o livro anterior dele o Causality: Models, Reasoning and Inference já está na minha lista de leituras.

Judea Pearl — que também foi o criador das Redes Bayesianas — põe em cheque a inferência estatística que usamos hoje e propõe uma nova forma de pensar o método científico. Fomos ensinados a pensar em correlações e torturados pelo lema “Correlação não é Causa”, e acabamos desistindo de buscar as causas e nos ater às correlações, tomando cuidado com as correlações espúrias que nos cercam.

Essa tradição correlacionista porém é contraproducente. Nosso cérebro possui um modelo causal que guia nossas ações. Toda vez que imaginamos coisas que não existem — tal como analisar diversos cenários antes de tomar uma decisão — estamos utilizando o nosso modelo mental causal. Esse poder de simular cenários — que chamamos que contrafatuais — é ausente em modelos discriminativos. Um contrafatual é toda pergunta do tipo “o que aconteceria SE ao invés de ter feito A eu tivesse feito B”. Isso nos lembra o famoso teste A/B, uma forma empírica de responder à mesma pergunta. Mas o nosso cérebro não precisa fazer a experiência real, ele analiza uma realidade alternativa e buscando achar as consequências de alguma ação que não existiu na realidade. Essa é uma capacidade extraordiária que temos!

E porquê isso é importante? Porque nossa tecnologia em geral funciona de forma reativa quando poderia funcionar de forma preemptiva. Atualmente após algo acontecer é que nossas ferramentas descrevem e diagnosticam os fenômenos. Imagine como seria legal se elas pudessem prever o acontecimento de algo e prescrever soluções para que pudéssemos nos prevenir? Modelos causais podem nos ajudar nisso devido à sua capacidade de imaginar cenários, de testar contrafatuais.

A teoria dos modelos causais é demasiada extensa e de forma alguma quero introduzir seus fundamentos aqui (Gostaria mesmo de recomendar a leitura dos livros citados e dos muitos materiais disponíveis sobre inferência causal — principalmente essa). A questão é que modelos causais já existem mas não são escaláveis. É difícil extraí-los de dados, geralmente são sistemas simbólicos que exigem dados estruturados. Tais modelos não são treináveis como as redes neurais, e nem admitem um grande espaço de entrada como o Deep Learning.

Confesso que minhas leituras sobre inferência causal me ajudaram a analisar melhor alguns aspectos de coisas que tenho pesquisado (como na previsão probabilística) e reiterar a importância da interpretabilidade dos modelos (um passo importante para se chegar à um modelo causal).

Então meu próximo side project é juntar a grande capacidade do Deep Learning em aprender representações multidimensionais (as deep embeddings) com a legibilidade provida pela Lógica Fuzzy (com information granules), usando uma técnica correlata às outras com que já trabalhei, os Mapas Cognitivos Nebulosos — que no fim das contas guarda grandes semelhanças com as séries temporais nebulosas. Ah sim! E aplicar isso em modelos de previsão de sequências (seq2seq um alias para previsão de séries temporais simbólicas, como textos por exemplo)

Nos próximos posts vou discutir sobre a incerteza, os diversos tipos de conjuntos nebulosos, grãos de informação, etc… Espero por vocês!