Previsões para a copa: USP e UFSCar x Nate Silver x Céticos


Previsões brasileiras

Grupo de Modelagem Estatística no Esporte (GMEE), parceria de um pessoal da USP e UFSCar, também colocou no ar um site com previsões para a copa, tanto nas classificações, quanto no jogo a jogo (resumi as probabilidades jogo a jogo em uma tabela ao final do post). Na última copa, o GMEE deu uma bola dentro: o grupo (a contra-gosto dos brasileiros) estimou como favoritos Espanha e Holanda.

Uma das coisas de que eu particularmente gostei neste site é que, além das probabilidades, eles colocaram um boxplot que ilustra a incerteza das estimativas. Assim como nas previsões do Nate Silver, o Brasil consta como favorito, entretanto com uma probabilidade menor: 30%.

boxplot

Como comparar previsões? Nate Silver x GEMM x Céticos

Agora já temos dois modelos diferentes para a copa do mundo. E há muitos outros por aí (que não coletei os dados por falta de tempo). Como avaliar a performance dessas previsões?

Uma forma simples e efetiva é utilizar o erro quadrático médio (que pode ser decomposto em outras medidas mais refinadas). Suponha que você atribua a probabilidade p a um evento x. O erro quadrático será:

(p – x)^2

Em que x é uma variável dummy que assume valor 1 se o evento em questão ocorrer e 0 caso contrário. Note que o melhor resultado possível é um erro de zero, e isto acontece quando você dá probabilidade de 100% para um evento que ocorre (1-1)^2 ou uma probabilidade 0% para um evento que não ocorre (0-0)^2. Já o pior resultado é um erro de 1, que acontece quando você diz que era impossível algo ocorrer (0%), mas este algo ocorre (0-1)^2, ou quando você diz que algo ocorrerá com certeza (100%) e o evento não ocorre (1-0)^2.

Quando há mais de um evento possível, calculamos isso para cada um deles e tiramos uma média, sob a restrição de que a probabilidade atribuída ao conjunto some 1. Por exemplo,  no caso da copa, em cada jogo há três resultados possíveis e mutuamente excludentes. Isto é,  tomando um dos times como referência, ou ele ganha, ou perde, ou empata. Suponha, por exemplo, que uma vitória tenha ocorrido. O erro quadrático médio de uma previsão para o jogo será:

((Probabilidade Estimada de Vitória – 1)^2 + (Probabilidade Estimada de Derrota – 0)^2 + (Probabilidade Estimada de Empate – 0)^2 ) /3

Vejamos, o caso do jogo Brasil x Croácia.

Nate Silver estimou chances de 88% para o Brasil,  9% para o empate e 3% para a derrota.  Já o GMEE foi mais conservador em sua previsão, estimando probabilidades de 66%, 21% e 13%, respectivamente. Ambos colocaram o Brasil como favorito e, realmente, o Brasil ganhou. Entretanto, como Nate deu maior certeza ao evento que de fato ocorreu, seu erro quadrático nesta partida foi de apenas 0.01, contra 0.06 do GMEE.

Note que estamos começando a distinguir entre tipos de previsões, mesmo que elas apontem o mesmo time como favorito.

Podemos fazer outra comparação. Suponha que você seja um cético de previsões no futebol. Afinal, poder-se-ia argumentar, trata-se de um esporte bastante imprevisível em que tudo pode acontecer.  Uma vitória, derrota ou empate são equiprováveis (33,33% cada). E de fato, caso isso fosse verdade, este seria o cenário mais difícil de se acertar.

Qual é o erro quadrático do cético? Ao atribuir a mesma probabilidade para todos os eventos, ele sempre terá o mesmo erro independentemente do resultado: 0.22. É uma estratégia conservadora, com previsões não informativas. Podemos, então, utilizar o cético como um benchmark mínimo. Em outras palavras, para o modelo ser minimamente aceitável, ele tem de, na média, errar menos do que o cético.

Depois de 11 partidas, como estão os previsores?

Nate Silver está na frente, com um erro médio de 0.159; O GMEE está apenas um pouco atrás, com erro de 0.163. E ambos, pelo menos por enquanto, com bastante vantagem em relação ao cético.

Esta é uma primeira aproximação para avaliar as previsões e ela pode ser refinada. Por exemplo, vocês notaram que não houve empate na Copa até agora? A probabilidade média estimada para os empates está em cerca de 23%. Se isso continuar a ocorrer por mais algumas partidas, desconfiaremos de que a probabilidade de empate dos modelos não está bem calibrada.

Discutiremos esta e outras medidas para avaliar as previsões no futuro. Vejamos um pouco sobre a atualização de modelos.

Atualização das probabilidades

Um bom modelo de previsão, sempre quando possível, deve tentar incorporar informações novas em seus cálculos.  Tomemos o caso da Holanda, que goleou a Espanha mesmo enquanto todos consideravam esta última como favorita.  Intuitivamente, após observar este resultado, você diria que as chances de a Holanda ganhar do Chile no dia 23 de junho devem permanecer as mesmas? Provavelmente não.

Se, em seu modelo, você dava baixa probabilidade para este evento, isto é um sinal de que você tem de reajustar, pelo menos um pouco, suas expectativas. O FiveThirtyEight está fazendo isso.  Antes do jogo Holanda x Espanha, o modelo estimava que o Chile era favorito contra a Holanda no dia 23: 48% de chances de ganhar. Agora a situação se inverteu e a laranja mecânica é a favorita com 37%.

Essas atualizações tentam aprimorar o modelo, mas será que as novas probabilidades serão melhores do que as anteriores? Como de costume, isto é uma questão empírica, e somente descobriremos  no decorrer dos jogos.

 

***

Probabilidade jogo a jogo do Previsão Esportiva

previsoes1

Nate Silver – Previsões para a copa do mundo


Nate Silver lançou suas previsões para a copa do mundo: Brasil sai como favorito, com 45% chances de ganhar.
20140609-213015-77415484.jpg
O que você acha das previsões? Quer entender como chegaram a esses números? Leia, aqui, a discussão que Nate faz sobre o modelo!

useR! 2014


O maior encontro da comunidade do R, este ano, será na Universidade da California, em Los Angeles (UCLA), e desta vez estarei lá! Dêem uma olhada nos tutoriais programados - vai ser difícil escolher um.  A UCLA também é a casa de dois excelentes pesquisadores que já mencionei aqui no blog: Edward Leamer e Judea Pearl – espero conseguir encontrá-los!

useR-middle

Que variáveis incluir na regressão? Ou, por que grande parte dos trabalhos aplicados está errada.


Suponha que você queira medir o efeito de X em Y (isto é, o quanto uma variação de X afeta Y – uma relação causal) e que você tenha mais duas variáveis que podem ser incluídas como controle, Z1 e Z2.

Suponha ainda que você saiba que o modelo é linear, isto é, não há nenhuma incerteza com relação à especificação.

Quais variáveis você incluiria no seu modelo?

Hoje, provavelmente você diria o seguinte: depende da significância! São Z1 e Z2 significantes? Se sim, eles devem ser incluídos.

Vejamos um exemplo de uma simulação. O código em R está ao final do post. Vamos rodar as três regressões: uma só com X, outra incluindo Z1 e por fim uma com todos os controles.

Os resultados foram os seguintes:

Equação 1: Y = -10 + 43X ***

Equação 2: Y = -7 + 13X * + 107Z1 ***

Equação 3: Y = -5 – 9X * + 46Z1 *** + 37Z2 ***

Pelos resultados, tanto Z1 quanto Z2 são significantes, então preferimos a equação 3. Concluímos que, na média, uma variação de 1 unidade de X reduz Y em 9 unidades. Certo?

***

Errado.

O modelo ideal neste caso seria a equação 2. O efeito real de X sobre Y é de 10 (veja que valor estimado foi 13, bem próximo).

O problema aqui é que a significância estatística não vai te responder sobre a pertinência de incluir ou não uma variável para estimar o efeito de X sobre Y.

Infelizmente, não há almoço grátis. Como diz Judea Pearlsem saber a estrutura do problema, não é possível determinar quais variáveis devem ser incluídas.

Agora pense. Como é a lógica de trabalho dos artigos aplicados hoje?

***

A simulação

A nossa simulação tem a seguinte estrutura  (U1 e U2 dizem respeito a duas variáveis não observadas, só observamos Y, X, Z1 e Z2):

dagitty-model

O código em R para gerar os resultados é:


gen_data <- function(N=200,s=2,beta1=10, beta2=100){
Z1 <- rnorm(N,0,s)
U2 <- rnorm(N,0,s) + Z1
U1 <- rnorm(N,0,s) + Z1
Z2 <- rnorm(N,0,s) + U2 + U1
X <- rnorm(N,0,s) + U1
Y <- rnorm(N,0,s) + beta1*X + beta2*U2
data.frame(Y,X,Z1,Z2)
}

set.seed(100)
data <- gen_data()
summary(lm(Y~X, data))
summary(lm(Y~X + Z1, data))
summary(lm(Y~X + Z1 + Z2, data))

Você pode brincar mais com o paradoxo de Simpson aqui; e o gráfico você pode fazer aqui.

 

 

O que o Facebook diz sobre o seu relacionamento?


O time de análise de dados do Facebook fez uma série de 6 posts sobre o valentine’s day (dia dos namorados) nos Estados Unidos.

Recomendo fortemente a leitura de todos. O posts tratam dos seguintes temas:

  • O primeiro post trata de amor e religião e constata que há poucos casais de religiões diferentes, mesmo em países com alta diversidade religiosa.
  • O segundo post trata da diferença de idade entre casais. Na média, homens são mais de dois anos mais velhos do que suas  parceiras.
  • O terceiro post trata da duração dos relacionamentos. Um dos resultados: quanto mais tempo de relacionamento, menor a chance de o casal se separar.
  • O quarto post trata das “melhores” cidades para os solteiros (como são cidades dos EUA, provavelmente não interessará muito os leitores deste blog).
  • O quinto post trata da mudança de comportamento dos casais antes e depois do relacionamento. Esse é um dos mais bacanas. Para quem quiser ler algo em português, a Folha fez uma matéria. Vale reproduzir um gráfico, relacionando a quantidade de posts com palavras positivas e os dias antes/após o início do namoro:

1898250_10152219519288415_127545461_n

Os dados confirmam aquilo que você já percebia: casais recém formados postam sobre unicórnios vomitando arco-iris e o efeito pode durar muito, muito tempo (destaque para o gráfico feito com ggplot2).

  • Por fim, o último post trata do que acontece após o término do relacionamento. As interações, principalmente de apoio dos amigos, aumentam bastante.

O Facebook é, muito provavelmente, a organização com a maior base de dados sobre informações pessoais do mundo. O potencial disso é inimaginável. No final do ano passado, eles contrataram o professor da NYU Yann LeCun para liderar o departamento de inteligência articial da empresa – parece que ainda há muita coisa interessante por esperar.

Mais sobre análise de dados do Facebook neste blog, aqui (analise seus próprios dados) e aqui (descubra características  da pessoa – como a orientação sexual – com base no que ela curte).

Analisando microdados do IBGE com o R


Os materiais do Seminário de Metodologia do IBGE de 2013 estão disponíveis para download. Dentre eles, destaco o do mini-curso Introdução à análise de dados amostrais complexos. Lá você vai aprender a replicar os resultados da POF, da PNAD e amostra do Censo levando em conta o desenho amostral das pesquisas (que é necessário para se calcular corretamente medidas de precisão, como a variância). O material é bastante focado no blog de Anthony Damico, Analyze Survey Data for Free. O blog é fantástico, com diversos exemplos de como baixar e analisar dados de pesquisas públicas levando em conta o plano amostral, tudo com ferramentas gratuitas como o R.

Você é obeso… mas não é gordo 2! Ou, mais sobre p-valores.


Já falamos que os p-valores não podem ser interpretados como uma medida absoluta de evidência, como comumente costumam ser. Entre algumas interpretações recorrentes, por exemplo, vale mencionar alguns cuidados:

  • se para um certo conjunto de dados, uma hipótese A (e uma estatística calculada sob A) gera um p-valor de 1% e outra hipótese B (e uma estatística calculada sob B) gera um p-valor de 10%, isto não necessariamente quer dizer que os dados trazem mais evidência contra A do que contra B. Até porque rejeitar A pode implicar, logicamente, na rejeição de B.
  • se para um certo conjunto de dados, uma hipótese A (e uma estatística calculada sob A) gera um p-valor menor que 5%, isto não necessariamente é evidência contra A.
  • se um estudo sobre a hipótese A resulta em p-valor menor do que 5% e outro estudo gera um p-valor maior do que 5%, isto não necessariamente quer dizer que os estudos apresentam resultados contraditórios.

Dentre outras questões.

Mas o que essas coisas querem realmente dizer? Muitas vezes é difícil entender o conceito sem exemplos (e gráficos) e é isso que pretendemos trazer hoje aqui. Vamos tratar do primeiro ponto listado, uma questão que, muitas vezes, pode confundir o usuário do p-valor: o p-valor pode apresentar evidências de que alguém seja obeso e, ao mesmo tempo, evidências de que este alguém não seja gordo, caso você, por descuido, tome o p-valor como uma medida absoluta de evidência e leve suas hipóteses nulas ao pé da letra. O exemplo abaixo foi retirado do artigo do Alexandre Patriota (versão publicada aqui).

Considere duas amostras aleatórias, com 100 observações cada, de distribuição normal com médias desconhecidas e variância igual 1.  Suponha que as médias amostrais calculadas nas duas amostras tenham sido x1=0.14 e x2=-0.16 e que você queira testar a hipótese nula de que ambas as médias populacionais sejam iguais a zero.

A estatística para esta hipótese é n*(x1^2+x2^2), e o valor obtido na amostra é  100*(0.14^2+(-0.16)^2)=4.52. A distribuição desta estatística, sob a hipótese nula, é uma qui-quadrado com 2 graus de liberdade, o que te dá um p-valor de 10%. Assim, se você segue o padrão da literatura aplicada, como o p-valor é maior do que 5%, você dirá que aceita (ou que não rejeita) a hipótese nula de que as médias sejam iguais a zero.

Agora suponha que outro pesquisador teste, com os mesmos dados, a hipótese de que as médias populacionas sejam iguais a si. Para esta hipótese, a estatística seria (n/2)*(x1 – x2)^2, e o valor obtido na amostra é  (100/2)*(0.14+0.16)^2= 4.5. A distribuição desta estatística sob a hipótese nula é uma qui-quadrado com 1 grau de liberdade, o que te dá um p-valor de 3%.  Caso o pesquisador siga o padrão da literatura aplicada, como o p-valor é menor do que 5% (o tão esperado *), ele dirá que rejeita a hipótese de que as médias sejam iguais.

Mas, espere um momento. Ao concluir que as médias não são iguais, logicamente  também se deve concluir que ambas não sejam iguais a zero! Com os mesmos dados, se forem testadas hipóteses diferentes, e se os resultados forem interpretados conforme faz a maior parte da literatura aplicada (que é uma interpretação bastante frágil), você chegará a conclusões aparentemente contraditórias!

Como o p-valor traz “mais evidência” contra a hipótese  de que as médias seja iguais do que contra a hipótese de que ambas sejam iguais a zero, tendo em vista que se rejeitarmos a primeira, logicamente temos que rejeitar a segunda? O que está acontecendo?

Para entender melhor, lembremos o que é o p-valor. O p-valor calcula a probabilidade de a estatística de teste ser tão grande, ou maior, do que a estatística de teste observada. Intuitivamente, o p-valor tenta responder a seguinte pergunta:  se eu adotasse esta discrepância observada como evidência suficiente para rejeitar a hipótese nula, quantas vezes este teste me levaria a erroneamente rejeitar esta hipótese quando ela é de fato verdadeira. Isto é, o p-valor leva em consideração em seu cálculo todos aqueles resultados amostrais que gerariam estatísticas tão extremas quanto a observada, que poderiam ter ocorrido mas não ocorreram.

Repare como calculamos a estatística 1 e note o termo (x1^2+x2^2). Percebe-se que a estatística se torna mais extrema cada vez que o ponto (x1, x2) se distancia de (0,0) – em qualquer direção. Isto é, ela cresce com relação à distância euclidiana de (x1,x2) em relação ao ponto (0,0). Talvez isso seja mais fácil de entender com imagens. No gráfico abaixo, quanto mais escura a cor, maior é o valor da estatística de teste.

dist_eucl_cont

Já na estatística 2, perceba que o termo principal é (x1 – x2)^2, e o que se mede é a distância do ponto em relação à curva x1=x2. Isto é, a distância absoluta de x1 em relação a x2. Vejamos as curvas de nível. Note que ao longo da curva há diversas regiões em branco, mesmo quando distantes do ponto (0,0), pois o que a estatística mede é a distância entre os pontos x1 e x2 entre si.

dist_abs_cont

Agora deve ficar mais fácil de entender o que está acontecendo. O p-valor calcula a probabilidade de encontrar uma estatística tão grande ou maior do que a observada. Ao calcular (x1 – x2)^2, todos os pontos que são distantes de (0,0), mas são próximos entre si, não geram estatísticas extremas. Como uma imagem vale mais do que mil palavras, façamos mais uma. No gráfico abaixo,  os pontos pretos são todos aqueles cuja estatística de teste supera a estatística observada (0.14, -0.16). Já os pontos azuis e vermelhos são todos os pontos que tem uma estatística de teste maior do que a observada, medidos pela distância euclidiana em relação à reta x1=x2.

contraste-p-valorNote que vários pontos pretos que se encontram “longe” de (0,0) não são nem vermelhos nem azuis, pois estão “pertos” da reta x1=x2. Fica claro, portanto, porque o p-valor da segunda estatística é menor. Isso ocorre porque resultados extremos que discordariam bastante de (0,0) – como (0.2, 0.2) ou (0.3, 0.3) – não são considerados em seu cálculo. Note que é possível obter um p-valor ainda menor (1,6%) testanto a hipóse de que média 1 seja menor ou igual à média 2. E se a média 1 não é menor ou igual a média 2, isso implica que elas não são iguais a si, e que também não são ambas iguais a zero. É importante ter claro também que todas as estatísticas são derivadas pelo mesmo método – razão de verossimilhanças – e possuem propriedades ótimas, não são estatísticas geradas ad-hoc para provocar um resultado contra-intutivo.

Para não alongar muito este post, frise-se que o que deve ser tirado como lição principal é que o p-valor não é uma medida absoluta de suporte à hipótese que está sendo testada. Mas como interpretar melhor os resultados acima? Caso você queira continuar no âmbito frequentista, algumas medidas seriam, por exemplo, não considerar literalmente as hipóteses nulas (isto é, não rejeitar ou aceitar uma hipótese precisa como x1=x2 ou x1=x2=0), avaliar que discrepâncias em relação à hipótese nula são ou não relevantes (do ponto de vista científico, e não estatístico) e conferir a função poder e intervalos de confiança para algumas alternativas de interesse.  Trataremos disso mais a frente (caso vocês ainda não tenham enjoado do assunto!).

Bicicletas aumentam em 30% a permanência de meninas na escola, na Índia.


Foi o que encontraram os pesquisadores Karthik Muralidharan e Nishith Prakash. A bicicleta afeta principalmente as meninas que vivem entre 5 a 10 Km da escola. Isto mostra: (i) como pequenas distâncias, isto é, pequenos custos, podem ter efeito substancial em algo tão importante no longo prazo como a educação; mas, também, que (ii) esses obstáculos podem ser, muitas vezes, resolvidos com medidas bastante simples.

Veja, abaixo, o vídeo dos pesquisadores:

Via Mankiw.

Solucionando crimes com matemática e estatística


Enquanto Breaking Bad não volta, comecei a assistir ao seriado Numb3rs, cujo enredo trata do uso da matemática e da estatística na solução de crimes. Confesso que, a princípio, estava receoso. Na maior parte das vezes, filmes e seriados que tratam desses temas costumam, ou mistificar a matemática, ou conter erros crassos.

Todavia, o primeiro episódio da série abordou uma equação para tentar identificar a provável residência de um criminoso, sendo que: (i) os diálogos dos personagens e as explicações faziam sentido; e, algo mais surpreendente, (ii) as equações de background, apesar de não explicadas, pareciam fazer sentido. Desconfiei. Será que era baseado em um caso real?

E era. Bastou pesquisar um pouco no Google para encontrar a história do policial que virou criminologista, Kim Rossmo, em que o episódio foi baseado. E inclusive, encontrar também um livro para leigos, de leitura agradável, que aborda alguns dos temas de matemática por trás do seriado: The Numbers behind Numb3rs.

A primeira equação que Rossmo criou tinha a seguinte cara:

rossmo

A intuição por trás da equação pode ser resumida desta forma: o criminoso não gosta de cometer crimes perto da própria residência, pois isso tornaria muito fácil sua identificação; assim, dentro de uma certa zona B, a probabilidade de o criminoso residir em um certo local é menor quanto mais próximo este estiver do crime (esse é o segundo termo da equação). Entretanto, a partir de certo ponto, começa a ser custoso ao criminoso ir mais longe para cometer o crime – assim, a partir dali, a situação se inverte, e locais longe do crime passam a ser menos prováveis (esse é o primeiro termo da equação). Em outras palavras, você tenta calcular a probabilidade de um criminoso morar na coordenada (Xi , Xj), com base na distância desta com as demais coordenadas dos crimes (xn, yn), levando em conta o fato de a residência estar ou não em B. Os parâmetros da equação são estimados de modo a otimizar o modelo com base nos dados de casos passados.

Por mais simples que seja, a equação funcionou muito bem e Kim Rossmo prosseguiu com seus estudos em criminologia. Evidentemente que, como em qualquer modelo, há casos em que a equação falha miseravelmente, como em situações em que os criminosos mudam de residência o tempo inteiro – mas isso não é um problema da equação em si, pois o trabalho de quem a utiliza é justamente identificar se a situação é, ou não, adequada para tanto. Acho que este exemplo ilustra muito bem como sacadas simples e bem aplicadas podem ser muito poderosas!

PS: O tema me interessou bastante e o livro de Rossmo, Geographic Profiling, entrou para a (crescente) wishlist da Amazon.

Déficits causam câncer


Reinhart e Rogoff perderam muito tempo com os argumentos errados. Vejam o gráfico:

deficit_e_cancer

Brincadeiras à parte, gostei da carta dos autores a Krugman e do post do Hamilton.

Já DeLong argumenta que, se os autores dizem que a idéia geral do artigo não se altera radicalmente por causa dos erros, por outro lado, isso não muda o fato de o argumento ter sido fraco desde o princípio (não que eu concorde com DeLong, mas o ponto é mais do que pertinente):

The third thing to note is how small the correlation is. Suppose that we consider a multiplier of 1.5 and a marginal tax share of 1/3. Suppose the growth-depressing effect lasts for 10 years. Suppose that all of the correlation is causation running from high debt to slower future growth. And suppose that we boost government spending by 2% of GDP this year in the first case. Output this year then goes up by 3% of GDP. Debt goes up by 1% of GDP taking account of higher tax collections. This higher debt then reduces growth by… wait for it… 0.006% points per year. After 10 years GDP is lower than it would otherwise have been by 0.06%. 3% higher GDP this year and slower growth that leads to GDP lower by 0.06% in a decade. And this is supposed to be an argument against expansionary fiscal policy right now?….

Gráfico retirado de Os números (não) mentem.