sábado, 30 de abril de 2011

Google/Bing e a Lei de Benford

Desde que conheci a lei de Benford, ou lei do primeiro dígito, fiquei bastante intrigado com a forma na qual ela se manifesta. Descoberta em 1881 por astrônomo Simon Newcomb e redescoberta em 1938 pelo físico Frank Benford, a lei mostra um comportamento um tanto quanto curioso que os número apresentam em alguns tipos de listas (medições).

Vamos para um exemplo concreto de como funciona. Vamos pegar a lista de matrículas dos alunos do ensino médio dos municípios brasileiros em 2010. Segue abaixo uma amostra com os primeiro 16 municípios de um total de 5274 listados:



Agora o que você espera se separar o primeiro algarismo dos números de cada linha (coluna dígito) e contar quantas vezes esse algarismo aparece na lista? Quando comparado com o total de linhas,  eu esperava encontrar 11,11% de 1,  11,11% de 2, 11% de 3 e assim por diante, nada especial, uma distribuição uniforme do primeiro digito. Mas é exatamente isso que torna o fato curioso, segue a contagem dos dígitos da tabela acima:



Na coluna "Dígito" temos o dígito a ser contado, na 2 a quantidade de aparições na lista, na 3 a aparição percentual e na 4 o esperado segundo Benford.
Como vocês podem notar, a distribuição não é uniforme, mas segue de forma bem próxima a lei de Benford (coluna benford)! A quantidade de aparições do número 1 é de 30% (1605/5274) enquanto o número 9 aparece em apenas 4% dos casos! (233/5274). Segue a comparação em gráfico.


A barra azul clara é o resultado esperado pela lei e as barras colorias são o resultado obtido!.. Muito próximos.
Para você ter uma idéia do poder da lei, a receita federal usa essa técnica para pegar fraudes, pois da mesma forma com que acontece no número de matriculas do ensimo médio, a lei também se aplica a várias outras listas de números, como por exemplo, uma lista de contas a restituir no imposto de renda. Nas eleições do Irã por exemplo, as suspeitas de fraude são fortemente corroboradas pela lei de Benford (ver artigo). 
Com isso em mãos, resolvi ver se o Google segue a lei de Benford. Para tal, criei um algoritmo no Mathematica que conta quantas vezes certo número aparece quando é pesquisado. Por exemplo, coloco o número 1 no google, e ele me retorna um contador de 25 bilhões de respostas, ja o número 100 retorna "somente" 10,6 bilhões.
Como tive que testar várias vezes o algoritmo até ficar pronto, o google travou o meu ip! E eu não consegui mais fazer consulta nele por um tempo. Apesar de não gostar da microsoft, tive que apelar para o Bing (sorry google).
Segue abaixo o resultado do teste de Benford no bing:



Sim, o Bing segue a lei de benford! Fantástico como uma forma completamente aleatória de coletar dados leva a um padrão numérico muito bem estabelecido.
Para saber mais consulte Benford na wikipedia.

Nenhum comentário:

Postar um comentário