Introduzimos este problema de criar um modelo parcimonioso dos dados,
que é uma descrição das probabilidades
de cada configuração possível.
Agora o que vou fazer é mostrar o método geral
para aumentar um modelo parcimonioso,
ou, conversamente, o método geral para produzir um modelo
que seja mais parcimonioso do que uma reprodução exata dos dados,
e este método é chamado o método de máxima entropia,
ou princípio de MaxEnt.
O exemplo de que vou falar
é sobre prever quando você vai conseguir um táxi em Nova York.
A piada sobre Nova York é que
você nunca consegue pegar um táxi,
menos quando não precisa de um táxi,
e aí tem táxi pra todo lado.
E, claro, há motivos peculiares para que seja dessa forma,
mas se você for tentar pegar um táxi de manhã, para sul pela Park Avenue,
esqueça, não vai conseguir pegar um táxi.
Estes são alguns táxis de Nova York.
Digamos que você quer ser científico quanto a isso,
e você decide juntar dados,
e você está juntando dados, e diz,
preciso de um táxi, vou pra rua,
quanto tempo tenho que esperar
para que finalmente haja algum táxi
que eu consiga pegar,
um táxi que esteja livre e à disposição?
Digamos que eu mantive um registro sobre isso por um tempo,
e aqui estão alguns dados que eu juntei,
e este é o tempo que me levou
para conseguir um táxi, em minutos.
Uma vez me levou 6 minutos para conseguir um táxi,
outra vez me levou 3 minutos, 4 minutos,
outra vez me levou 6 minutos de novo, e por aí vai.
Então este é o conjunto de observações,
sobre uma pergunta empírica básica:
Quanto tempo leva para pegar um táxi?
E então a pergunta é:
O que eu devo acreditar
sobre o tempo de espera
para pegar um táxi em Nova York?
Então, vocês já são bem bons nisso.
Vocês sabem, por exemplo,
que uma forma de fazê-lo
é tomar esses dados aqui,
eu tenho 10 pontos sobre quanto tempo um táxi leva,
e então a probabilidade de eu esperar 6 minutos para pegar um táxi
parece algo como... bem, temos uma, duas, três vezes dentre dez
que eu consegui um táxi após seis minutos,
então significa que é uns 30% de chances
de ter de esperar 6 minutos.
E, por exemplo, as chances de ter de esperar 2 minutos
parece ser de 20%.
Tem, logo de cara, um problema enorme aqui,
porque, por exemplo, se eu seguir este modelo ingênuo diretamente,
temos que as chances de um táxi em 1 minuto são 0.
Há 0 chances de pegar um táxi em um minuto.
Não só isso. Temos, por exemplo,
a chance de ter de esperar 7 minutos para pegar um táxi
também é 0.
Isso é intrigante, não é?
Parece com o que chamamos de "overfitting" dos dados.
Estamos descrevendo os dados de tal forma
que adicionamos muita estrutura.
O fato que eu nunca esperei mais que 6 minutos por um táxi,
mas que eu já esperei três vezes, esperei 6 minutos três vezes,
isso parece um mero acidente dos dados.
Não queremos colocar isso no nosso modelo.
Então, invés de usar o método ingênuo,
o que vou fazer,
e essa é a essência do método de máxima entropia,
vou produzir uma distribuição de probabilidade
que tenha duas coisas.
Um: minha P_{MaxEnt} que vou tentar criar.
Primeiro de tudo, P_{MaxEnt}, vamos chamá-la de P_{ME},
(P_{ME}) satisfaz
um número limitado de restrições,
e vou dizer o que é uma restrição explicitamente em breve.
E número dois:
a distribuição que satisfaz estas restrições
possui a máxima entropia
dentre todas as distribuições
que satisfaçam estas restrições.
Então veremos que
há potencialmente muitas distribuições de probabilidade
que satisfazem estas restrições,
e escolheremos aquela
(e acaba sendo que ela é única)
aquela que possui a máxima entropia
dentre todas as distribuições que satisfazem estas restrições.
Então as restrições serão sempre nas formas de valores esperados.
Serão sempre restrições sobre a média
de alguma quantidade medida sobre os dados.
Então, por exemplo...
podemos ter uma restrição sobre o valor esperado
do tempo médio de espera.
Então escrevemos assim ().
Estas chaves (<>) significam o valor esperado de x,
e então a forma que fazemos isso
é integrar a probabilidade de esperar um tempo x
vezes x, dx, integrando de 0 a ∞.
E se discretizarmos o problema e falar sobre minutos,
arredondando ao minuto mais próximo,
também podemos escrever assim.
Onde, invés de integrar sobre um contínuo de tempos,
de 0 a 0.01 etc. minutos,
aqui somamos 0 minutos, 1 minuto, 2 minutos, etc.
Então 0 minutos é um táxi logo ali, você abre a porta, maravilha.
Então isso é um valor esperado
sobre o tempo médio de espera.
E só para dar um exemplo,
aqui está um outro valor esperado que pode ser medido.
Esta é a média do tempo quadrado de espera,
e, claro, a forma como se faz isso,
é integrar x² dx, ponderado pela probabilidade de x,
e, em geral,
o valor esperado de uma função f(x)
é ponderar f(x) pela probabilidade de cada x, P(x).
Então esta notação aqui é algo que,
se não for familiar para você,
você precisa tomar algum tempo para compreender
por que esta () é a forma correta de falar sobre o valor esperado de x.
E, se quiser, esta aqui [soma discreta] pode ser mais familiar para você,
se integrais te assustarem um pouco, o que não deveriam.
O que faremos
nesta aplicação particular,
o princípio de máxima entropia,
é 1) P_{ME}(x) estará restrito
tal que o valor médio de x, o tempo médio de espera,
sob a distribuição P_{ME},
é igual ao [valor médio] dos dados.
De fato, se contarmos aqui
e medirmos o tempo médio dos dados,
descobrimos
(e estou bem contente com isso),
que o tempo médio de espera,
nesta base de dados, é 4 minutos. Então o que diremos é:
me dê distribuições de probabilidade
cujo tempo médio de espera seja 4 minutos.
Este é o primeiro passo, é o passo de restrição.
E podemos ver imediatamente que há muitas distribuições
que têm um tempo médio de espera de 4 minutos.
Aqui vai uma.
A probabilidade de esperar x minutos é 0, menos quando x=4.
Tecnicamente, esta é uma definição que só funciona no caso discreto.
Teríamos que usar funções delta, vou poupá-los de funções delta.
Outro exemplo.
P(x) = 1/2 se x=3,
1/2 se x=5,
e 0 para os outros casos.
Todos estes são modelos potenciais sobre pegar um táxi em Nova York
que satisfazem a restrição de que suas médias são de 4 minutos.
Então alguém poderia dizer:
"Eu tenho um bom modelo dos seus dados.
Um bom modelo seria: Táxis levam ou 3 ou 5 minutos
e mais nenhum outro tempo."
E, claro, podemos pensar em misturar estas duas aqui.
Então, p. ex., podemos misturar isso e isso e teríamos a distribuição,
e vou desenhá-la graficamente aqui.
Temos uma dispersão sobre tempos entre 3 e 5 minutos.
E, claro, esta distribuição original também satisfaz isso.
Por definição, se temos uma distribuição não-nula só nestes pontos
e ponderada pelo número de vezes que são vistas nos dados,
o valor esperado sobre isso também será de 4 minutos, por definição.
Então temos uma variedade de modelos candidatos.
Uma variedade de modelos que satisfazem esta restrição em particular.
Escolha aquela
que maximiza a entropia.
Então vocês devem lembrar da definição de entropia.
Se não, é a hora perfeita para pausar o vídeo, e revisar.
Mas o que queremos é a distribuição cuja entropia seja maximizada.
Isto é, queremos a distribução
que nos deixe maximamente incertos
sobre quanto tempo o táxi levará,
exceto, claro, pela restrição dada.
O que restringimos
é que o táxi leva 4 minutos em média.
Fora isso, eu quero estar maximamente incerto,
não quero ter, como diríamos filosoficamente,
não quero ter pré-conceitos sobre o que táxis em Nova York fazem,
quero estar maximamente incerto sobre seu comportamento
sujeito a esta restrição.
E podemos ver, por exemplo, aqui, intuitivamente,
a ideia de que táxis sempre levam 4 minutos para chegar
satisfaz o critério da média
mas adiciona uma quantidade enorme de estrutura adicional.
Me diz que, por algum motivo,
todos os tempos de espera, exceto 4 minutos, são proibidos.
Intuitivamente, isso requeriria alguma justificação a mais.
Mas estamos tentando ser minimamente enviesados,
estamos tentando ter um intervalo maximamente possível,
intervalo maximamente possível de todas as configurações do sistema,
sujeito à restrição do comportamento médio que observamos.
Este aqui é um pouco melhor porque permite um intervalo maior,
e de fato uma mistura destes é melhor ainda.
E o que gostaríamos de fazer é produzir uma distribuição
onde temos que perguntar,
– e esta é uma forma de interpretar entropia –
você precisa perguntar, em média, um número maximal de perguntas
a fim de decidir quanto tempo um táxi, de fato, levou para chegar.
Então este passo aqui te permite selecionar dentre todos estes modelos,
dentre todos aqueles que satisfazem as restrições,
um modelo particular.