Frutas no corredor e viés de disponibilidade em Sistemas de Recomendação

Como alguns dos meus 3 leitores sabem, eu venho fazendo alguns cursos totalmente fora da área de Data Science/Machine Learning como Investigação de Acidentes Aéreos, Medicina Baseada em Evidências, Econometria e Inferência Causal.

Eu vou escrever no futuro sobre o porque eu estou tomando esses cursos (motivo: porque penso estamos em uma bolha de DS/ML); mas o ponto que eu quero colocar aqui é que um dos princípios fundamentais de Medicina Baseada em Evidências está muito relacionado ao entendimento do nível de incerteza e como determinar um tratamento (e principalmente não tratar ninguém se o resultado for frágil).

No momento em que pensamos sistemas de recomendação, sempre imaginamos os cases de sucesso como Netflix, Spotify, Amazon entre outros, em que os sistemas de recomendação alavancaram essas empresas ao sucesso.

Porém, alguns aspectos causais e/ou ausência de entendimento dos fatores aleatórios geralmente não são muito discutidos de forma mais profunda. E esta ausência de discussão também é refletida em papers de conferências importantes como WWW, ACM RecSys e ICML, só para dar alguns exemplos em que tem muita coisa sobre resultados mas fala-se pouco de aspectos de incerteza que possam ter influenciado estes mesmos resultados.

Como consequência podemos ser influenciados a adotar uma postura voltada para os resultados desconsiderando o fato de que estes resultados podem ser fruto apenas do acaso e não de uma competência intrínseca do nosso trabalho.

Neste post eu vou falar especificamente de um fator de incerteza em Sistemas de Recomendação que é o viés de disponibilidade. Este é um problema real que pode acontecer em sistemas produção, em especial em protocolos de avaliação de modelos/sistemas. No final eu vou discutir uma alternativa que minimiza esse problema.

No entanto vamos entrar em uma situação hipotética para exemplificar esse ponto de uma maneira mais acessível.  

Ideias e frutas no corredor…

Imagine a seguinte cena dentro de um escritório: Existe dentro do escritório um corredor no qual as pessoas usam para locomover-se entre dois pontos. A titulo de simplicidade vamos dizer que este corredor é uma passagem comum como qualquer outra.

Um certo dia o time de Recursos Humanos observa um trabalho acadêmico que atesta uma correlação entre melhoria do ambiente de trabalho com o consumo de frutas.

Ato contínuo, após a leitura deste artigo o time do RH pensa em realizar a seguinte intervenção: “Porque não distribuir frutas aqui no escritório para aumentar a satisfação no trabalho?

Em seguida o time do RH pensa em uma forma de implementar esta intervenção: “Por que não deixar algumas frutas disponíveis em um lugar em que todas as pessoas podem ter acesso? Desta forma todos podem passar e pegar a fruta que quiserem”.

Sendo assim o time do RH coloca uma bandeja de frutas diversas no corredor deixando as frutas acessíveis para todas as pessoas de forma livre.

A ideia é a seguinte: A frutas ficarão disponíveis por 3 semanas no corredor. Após este período uma pesquisa de satisfação será realizada para mensurar o nível de bem-estar no trabalho e o efeito dessa nova política de RH dentro da empresa.  

Mensuração e descoberta de ótimos resultados

Três semanas depois o time do RH realiza a pesquisa de satisfação e o resultado foi um aumento de 70% na satisfação dos empregados, afinal de contas, quem não gosta de fruta de graça no trabalho?

Com este ótimo resultado o time do RH implementa como política permanente as frutas disponíveis para todos os empregados.

É neste ponto é onde vemos cases como “Nossa empresa implantou frutas grátis como política e aumentamos satisfação em 70%”, cases aparecem em conferências de RH, inúmeros cases de sucesso e Fanfics no Linkedin, e em alguns casos a pessoa que é responsável pelo projeto vira Chief People Officer com uma porção de promoções de pessoas da equipe na esteira desse sucesso.

Entretanto, vamos olhar em relação ao que não foi dito.  

O acaso sendo medido como competência

Após seis meses o time do RH verifica um nível de estagnação nos indicadores de satisfação mesmo com a implementação da política das frutas no corredor.

Tendo isto em vista o time do RH e o time de People Analytics inicia uma investigação e resolve realizar alguns experimentos, que aqui vamos chamar de “A/B/C Fruit Corridor Experiment”

Neste caso serão 3 cestas de frutas que serão colocados em dias da semana alternados seguindo as seguintes configurações:

·  Cesta 1: Somente bananas

·  Cesta 2: Somente maças

·  Cesta 3: Frutas sortidas

Após 1 mês de experimentos foram obtidos os seguintes resultados:

·  Cesta 1: Somente bananas – Melhoria de + 1%

·  Cesta 2: Somente maçãs – Melhoria de + 2%

·  Cesta 3: Frutas sortidas – Melhoria de + 1%

Realizando uma comparação simples, temos o seguinte quadro:

Policy (intervenção)

Resultado (Satisfação)

Implementação da política das frutas

+70%

Otimização e experimentos

+1%

Podemos ver neste exemplo que mesmo com mais esforço em termos de análise, experimentação, implementação e otimização o ganho foi praticamente marginal.

O que pode ter acontecido neste caso é que as pessoas podem não ter pego as frutas devido ao arranjo de recomendação provido pelo o RH no teste A/B/C mas sim elas consumiram apenas devido ao fato de estarem disponíveis para o consumo.

Em outras palavras: As pessoas oportunisticamente pegaram as frutas apenas devido ao fato de que elas estavam disponíveis.

Como assim disponibilidade?

Nenhum sistema de recomendação em produção corre o risco de não ter algum tipo de viés de disponibilidade. A ação humana ainda carrega um certo grau de não determinismo, o que significa que não importa quão boa seja a recomendação, algumas pessoas irão interagir com o sistema só pelo fato do mesmo estar disponível.

Em todos os sistemas de recomendação em que há uma utilização de forma passiva (i.e. não mandando ativamente recomendações como push notification, email, etc) pode haver um determinado potencial de pessoas utilizando de forma oportunístico.

Exemplos práticos de aspectos oportunisticos não relacionados com a recomendação em si:

  • Quantas vezes estávamos sem sede, mas paramos em um bebedouro para apenas tomar um pouco de água para nos manter hidratados?
  • Quantas vezes não tínhamos muita coisa para jogar no lixo, mas acabamos dispensando na lixeira mais próxima?
  • Quantas vezes ao passar em um lugar turístico não pegamos uma comida de rua apenas pelo fato de estarmos no lugar?

Estes são casos de utilização oportunística devido a um potencial viés de disponibilidade.  

Uma simples alternativa

Para medir inicialmente o viés da disponibilidade eu gosto de usar sempre um baseline randômico no começo de todo o projeto. Desta forma eu (a) me certifico do papel da aleatoriedade na recomendação (ou de outros elementos causais não identificados e/ou variáveis de confusão) e (b) com essa informação disponível eu consigo mensurar melhor o real impacto de outras variáveis durante a experimentação. Abaixo um exemplo:

Policy (implementação)

Resultado

Recomendações aleatórias

+10%

Policy #1 (A)

+14% (Ajustado +4%)

Policy #2 (B)

+12% (Ajustado +2%)

Ou seja, logo de começo eu tenho 10% de viés de disponibilidade não importa a recomendação que seja colocada em tela em um novo sistema. Eu vou tirar esses 10% de performance do meu resultado pois eles serão atingidos só pelo fato de estarem disponíveis.

Desta maneira, apenas com um baseline aleatório eu ja consigo ter parâmetros de comparação para saber o quanto do resultado é devido a disponibilidade.  

Considerações Finais

Ter um viés de disponibilidade em uma plataforma de recomendação não é problema nenhum e as vezes é até esperado em novos sistemas. O grande problema é quando confundem-se os efeitos de disponibilidade e toda a carga de incerteza que este viés pode carregar com efeitos da implementação dos algoritmos de forma propriamente dita. A consideração final que eu deixo aqui é que antes de qualquer implementação de sistemas de recomendação ter o entendimento a priori dos fatores de incerteza e contrafactuais que podem influenciar o resultado.