quarta-feira, 15 de agosto de 2018

Sobre previsões do futuro e análise preditiva


O ser humano desde a pré História está preocupado com o futuro: será que este fruto vai me matar ? e aquele animal grande ali, vai ser meu amigo ou predador ? quando virá o inverno ? Isto é parte da nossa necessidade de sobrevivência e está associado ao nosso cérebro moderno (mais especificamente com o neocórtex). Desenvolvemos métodos primitivos como calendários e cultos religiosos para prever e tentar controlar o futuro.

Atualmente as empresas querem saber se um produto vai ser aceito no mercado, se clientes vão comprar um produto, se uma ação vai mesmo reduzir custos, se uma técnica realmente vai motivar funcionários e o que os concorrentes vão fazer.

Técnicas de Inteligência Artificial e Data Mining estão ajudando pessoas e empresas a fazer previsões. Não se trata de “bola de cristal”, mas sim utilizar dados e um certo tipo de lógica baseada em métodos.

Já vi alguns autores fazendo a distinção entre os termos:
- prever: é antecipar eventos futuros, ou seja, tentar descobrir o que vai acontecer (ex. vai chover amanhã?);
- predizer: é antecipar valores para variáveis, ou seja, estimar um valor preciso para um atributo (ex. quantos milímetros vai chover amanhã?).
Aqui vamos usar como sinônimos: prever, predizer, estimar, antecipar.

Em geral, o método consiste em utilizar um modelo preditivo, que pode ser:
- uma fórmula matemática que relacione variáveis: a partir de parâmetros de entrada (valores para alguns atributos), a função gera valores para outras variáveis (normalmente, uma só); exemplo: previsão climática para estimar temperaturas mínima e máxima);
- um método de análise sequencial: o objetivo é estimar como continuam certas sequências ao longo do tempo; pode ser uma sequência de eventos discretos (ex. páginas por onde um usuário vai passar num site ou produtos que alguém irá comprar ao longo do tempo) ou de valores contínuos geralmente numéricos, (ex. valores de ações, preços de produtos, quantidade de vendas, altura de uma pessoa).

Um dos métodos para encontrar um modelo preditivo é analisar dados históricos e identificar padrões. Exemplo: todo fim de tarde que eu presenciei com céu vermelho antecipou um novo dia ensolarado.
Para isto funcionar, as condições devem ser constantes. O modelo só vai predizer o futuro com precisão se as condições futuras forem as mesmas de quando o modelo foi criado (mesmas condições dos dados históricos). Estimativas climáticas estão fadadas a errar mais a cada ano porque estamos alterando as condições do planeta.
Além disto, sempre é possível acontecer um evento tipo “cisne negro” (algo inesperado, que foge do padrão): uma nova empresa, produto ou tecnologia; uma guerra.
O exemplo mais elucidativo é este: o peru cria um modelo preditivo que diz que a família gosta dele, porque ele foi bem alimentado e bem cuidado durante o ano todo. Mas isto só dura até o Dia da Ação de Graças.

Modelos preditivos podem falhar por causa do “efeito borboleta”. Uma pequena variação num valor numérico (digamos, na vigésima casa decimal) pode alterar muito o resultado final da função. Ou mesmo um evento que aparentemente parece insignificativo pode influenciar muito o sistema. Um assassinato deslocado do contexto dominante da Europa fez eclodir a 1ª Guerra Mundial. Não que o evento tenha gerado diretamente o tal período. Ele desencadeou outros eventos, que desencadearam outros e assim sucessivamente.
Esta é uma das características dos sistemas complexos. É aquela velha história: a gente vai fazendo uma pilha de arroz colocando um grão de cada vez. A pilha vai crescendo e ficando alta. De repente, ao colocar mais um grãozinho, a pilha desmorona.

A razão para isto ter acontecido pelo seguinte:
- o peso suportado pelos grãos que estavam sustentando os de cima passou o limiar de sustentação. É como a gota d´água que faz o copo transbordar ou aquele dia em que a coluna começa a doer depois que passamos vários dias carregando peso;
- o peso do último grão pode fazer balançar 2 outros grãos abaixo dele. Mas estes estão bem suportados e não balançam; então a pilha não cai. Mas se estes 2 balançarem, irão também balançar os que estão abaixo. Então imagine a sequência de Fibonacci: 1 grão afeta 2, estes afetam 3, estes em conjunto afetam 5, que afetam 8, depois 13, e assim por diante 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584. Ou então como dizem: se dobrarmos 1% a cada passo, em 7 passos teremos 100% (1, 2, 4, 8, 16, 32, 64, 128).

Portanto, quem deseja fazer previsões deve ficar também atento aos chamados “sinais fracos” e às relações de causa-efeito. Entretanto, depois que tudo aconteceu, fica fácil explicar a relação e a ordem dos acontecimentos. Prever antecipadamente esta relação é muito difícil.

Outra forma de gerar modelos de predição é criando-os a partir da sabedoria das massas.

Sistemas de simulação podem ajudar a prever resultados para grandes quantidades de elementos, para entendimento de sistemas complexos. Por exemplo, simular a saída de pessoas de um estádio. Podemos criar indivíduos com o seguinte comportamento básico: caminhe devagar em direção à saída sem passar nem tocar ninguém. E podemos ver o que acontece se uma certa parcela dos indivíduos mudarem seu comportamento (ex. caminhar mais rápido que os que estão à volta). Isto permite avaliar o comportamento coletivo pelos comportamentos individuais e pelas diferentes proporções (ex. se 10% das pessoas que receberam nossa propaganda comprarem o produto dentro de 1 mês, e passados 2 meses estes divulgarem para 2 outros amigos, e 5% destes comprarem dentro de 6 meses, o que vai acontecer no final de 1 ano?).
O problema é estimar os comportamentos individuais e saber que decisão cada um vai tomar. E o % de pessoas em cada situação.

Existem também as previsões que se auto cancelam ou se auto realizam (ver post abaixo).

Os modelos de predição, assim como os planos estratégicos, devem ser o que Taleb chama de “antifrágeis”. Já que é difícil encontrar um modelo fixo e preciso, a ideia é ser flexível para acomodar variações no modelo e mesmo assim continuar a previsão. É preciso identificar rápido as mudanças e sinais fracos, as mudanças de relações e afetação. O objetivo não deve ser tentar encaixar o mundo no modelo, mas sim adaptar o modelo ao ambiente. Isto serve para empresas também (táxis devem ser como Uber, os jornais impressos não devem lutar contra a Internet mas se adaptar, bancos devem aceitar Fintechs e Blockchain).

Alguns dizem: “não se pode prever o futuro”. Mas aí vamos desistir ?
Previsões mesmo que com erro já podem ser úteis. E saber gerenciar as incertezas. Acomodá-las nos modelos usando probabilidades.  

Todo mundo quer saber ser um produto vai vender, se um casamento vai dar certo, mas poucos se atrevem a querer saber quando vão morrer. Este é o paradoxo da previsão do futuro pelo ser humano.

Leituras Recomendadas (por ordem de importância):

TETLOCK, Philip E.; GARDNER, Dan. Superprevisões: A arte e a ciência de antecipar o futuro. Objetiva, 2016.

WATTS, Duncan J. Tudo é óbvio: quando você sabe a resposta. Rio de Janeiro: Paz e Terra, 2015.

TALEB, Nassim Nicholas. A Lógica do Cisne Negro. Best Business, 2008.

SILVER, Nate. O sinal e o ruído: por que tantas previsões falham e outras não. Rio de Janeiro: Intrínseca, 2013.

TALEB, Nassim Nicholas. Antifrágil - Coisas Que Se Beneficiam Com o Caos. Best Business, 2014.

MLODINOW, Leonard. O Andar do Bêbado - como o acaso determina nossas vidas. Zahar, 2009.

KAHNEMAN, Daniel. Rápido e Devagar - Duas Formas de Pensar. Objetiva, 2012.