Segunda-feira, Novembro 02, 2009
Another Glitch in the Call
We don't need no flow control
No data typing or declarations
Did you leave the lists alone?
Hey! Hacker! Leave those lists alone!
Chorus:
All in all, it's just a pure-LISP function call.
All in all, it's just a pure-LISP function call.
Segunda-feira, Setembro 07, 2009
Por falar em aleatoriedade...
Esse pessoal já é difícil de lidar, já que são completamente refratários à razão, mas costuma ser pior ainda quando usam a enxurrada de palavras sem nexo para convencer de algo. Torna-se impossível provar que estão dizendo algo sem nexo, porque mesmo que o faça eles sempre têm a alternativa de responder com outra, e tenho coisas mais importantes a fazer com meu tempo.
Lendo o livro do Taleb que citei no post anterior e a menção ao Sokal e a Dada engine, cheguei ao argumento ideal para usar contra esse tipo. É na verdade bem mais simples do que parece. Não é preciso analisar o texto que eles escrevem e provar que sentença por sentença não tem sentido, basta provar de alguma forma que aquilo tudo é indistinguível de um monte de palavras e frases amontoadas aleatoriamente.
Isso a rigor é um teste de Turing reverso:
O Teste de Turing é um teste proposto por Alan Turing em uma publicação de 1950 chamada "Computing Machinery and Intelligence" cujo objetivo era determinar se um programa de computador é ou não inteligente. O programa é inteligente se a pessoa que participa no teste não for capaz de dizer se foi o programa ou um ser humano que respondeu às suas perguntas.
O teste consiste em uma conversa entre dois humanos e um computador, todos os três tentando parecer humanos. Todos os participantes são colocados em ambientes isolados. Se um árbitro não puder identificar de maneira definitiva qual dos participantes é o computador, então se diz que o computador passou o teste com sucesso. A fim de testar a inteligência do programa de computador, e não simplesmante a sua habilidade em transformar palavras em sons, a conversa é limitada a um canal de texto , como um teclado e tela de computador[1].
Ou seja, se um humano lendo aquilo escrito por um computador supostamente inteligente e outro humano prova que o computador tem inteligência de fato quando não consegue distingui-los, então o reverso também é verdadeiro; um humano lendo aquilo escrito por um computador burro e outro humano, prova que o humano é burro se aquilo que ambos escrevem não pode ser distinguido.
A Dada Engine é um software para gerar textos aleatórios a partir de uma gramática recursiva. Um dos geradores mais populares criados com ela é o Postmodernism Generator, que gera ensaios completos (e sem sentido) sobre alguns escritores e artistas pós-modernos.
Criar uma versão em português disso dá muito mais trabalho do que o original inglês porque a gramática é muito mais complicada (os gêneros dificultam muito), e a língua é bem mais prolixa. Com algum trabalho durante meu tempo livre consegui fazer uma tradução do Postmodernism Generator que consegue gerar texto gramaticalmente correto em português.
Alguém me perguntou porque eu não uso o Gerador de Lero-Lero. A diferença é que o gerador não é realmente aleatório. Se olhar o código-fonte na página, verá que ele tem grupos de frases prontas, e que são combinadas aleatoriamente, mas elas em si não são aleatórias. O gerador criado com a Dada Engine usa uma gramática para construir as frases de forma realmente aleatória, com todos os elementos escolhidos pelo programa.
Um parágrafo de exemplo:
"O socialismo implica que a sociedade tem significância, mas somente se a narrativa subconstrutiva é inválida; se aquilo não é o caso, a arte serve à hierarquia. Já Lacan adota o termo 'protosocialismo' para implicar a dialética da identidade sexual socio-capitalista. Vê-se que em 'Finnegan's Wake', Joyce reafirma o realismo; em 'Ulysses', porém, Joyce desconstrói o paradigma capitalista da realidade, mas cada vez mais situacionismos envolvendo a teoria material meta-capitalista existem."
Cada frase dessas é criada recursivamente, com estruturas sorteadas dentre as definidas na gramática. Por exemplo, a primeira frase:
"O socialismo implica que a sociedade tem significância, mas somente se a narrativa subconstrutiva é inválida; se aquilo não é o caso, a arte serve à hierarquia."
A primeira sentença, "o socialismo implica que a sociedade tem significância", foi formada usando uma regra assim:
$artigo [suposição] [implicação] [resultado]
O "socialismo" foi gerado usando a regra [suposição]. Essa regra pode apenas retornar algo gerado pela regra [termo], que por sua vez pode construir coisas mais complexas (como "narrativa subconstrutiva" logo adiante), mas aqui gerou apenas um "-ismo" usando o adjetivo "social".
O "implica que" foi gerado pela regra [implicação], que é bem definida, contendo as opções "implica que ", "afirma que ", "mantém que " e "sugere que ". Foi sorteada a primeira.
Por fim, "tem significância" foi gerado pela regra [resultado], que assim como [suposição] pode gerar coisas bem complexas, mas aqui apenas optou pela regra que retorna uma propriedade qualquer.
O resto da frase, "mas somente se a narrativa subconstrutiva é inválida" na verdade também é gerado em [resultado], que pode opcionalmente retornar uma [pós-condição] após produzir o resultado.
Uma das coisas mais impressionantes em desenvolver essa brincadeira foi ver os saltos com que o gerador aprimorava seu texto. Assim que os elementos de ligação entre as frases tornavam-se disponíveis, ele já conseguia gerar frases muito mais complexas do que o anterior. Se antes com frequência apareciam frases sem sentido como apenas um artigo e substantivo, assim que acrescentava algo ele passava a sofisticar muito mais e gerar frases enormes, estabelecendo relações entre eles. Tudo sem sentido, claro, mas gramaticalmente correto.
Considerando como ele consegue escrever tudo gramaticalmente correto, já está bem adianta do que muitos dos nossos graduatum universitarius fazem. Em breve começarei a fazer alguns testes de turing reversos publicamente, aí a coisa ficará realmente divertida.
Sábado, Setembro 05, 2009
Sucesso e aleatoriedade. Difícil aceitar?
Você espera tranquilo até o final da semana, sabendo que seu conselheiro anônimo não erraria, mas para sua surpresa as ações caem e você perde dinheiro. Você espera a carta da quinta semana com o pedido de desculpas e uma boa justificativa, mas nada dela aparecer. Nem na sexta, nem nunca mais.
Você resolve comentar o assunto com o seu vizinho e ele te diz que também recebeu uma carta assim na mesma semana em que você recebeu a primeira dizendo que as ações subiriam, e outra na segunda semana dizendo que elas cairiam, e nenhuma mais depois de errar essa previsão. Você fica sem entender nada.
O que é que aconteceu aqui?
Alguém com uma empresa indo mal na bolsa resolveu investir seus últimos trocados em alguns selos e enviar para 1000 pessoas escolhidas aleatoriamente da lista telefônica. 500 receberam uma carta dizendo que as ações subiriam, 500 de que as ações cairiam. Na semana seguinte novas cartas eram enviadas para aqueles cuja primeira carta acertou a previsão e os outros eram ignorados, e todo esse processo repetido recursivamente. Com alguma sorte, antes de chegar a 50 destinotários, várias pessoas já teriam acreditado nas previsões e investido dinheiro acreditando nelas.
O esquema é bem óbvio depois de esclarecido, mas por que não passaria pela cabeça da maioria das pessoas antes de ser decepcionadas? Por que a tendência a acreditar que haveria algum mago do mercado por trás de tudo?
O problema é que a maioria das pessoas não está tão acostumada a atribuir seus sucessos à sorte, apenas seus fracassos. Diante das "adivinhações", seria difícil para a maioria acreditar que aquilo foi mero acaso e que não havia de fato alguém ali, mas isso só não é cristalino porque elas não têm acesso à toda a amostra, incluindo as que errou. Costuma ser assim na maioria das coisas na vida das pessoas, e esse é o tema do livro "Fooled by Randomness" do matemático e economista Nassim Nicholas Taleb.
Taleb defende precisamente isso, com ênfase no mercado de negócios. As pessoas estão muito pouco dispostas a reconhecer que seu sucesso nessas áreas é algo aleatório, quando na verdade é um meio governado pela aleatoriedade. Para piorar, ainda é um meio que não perdoa os fracassos, ou seja, exatamente como no golpe da carta, você não tem acesso constante à toda a amostra porque os colegas que falham deixam de fazer parte dela.
Um bom exemplo: uma grande empresa resolve contratar um número grande de investidores, todos para gerenciar contas em um mercado relativamente aleatório. O chefe avisa que no final do ano aqueles que não tiverem uma margem de lucros X será demitido, e digamos que em uma boa temporada de negócios as chances de atingir aquela margem são de 70% de chances, independentemente de qualquer suposta habilidade ou conhecimento que o investidor tenha.
Isso quer dizer que se ele contratou 1000 funcionários, no final do primeiro ano apenas 300 ainda estarão trabalhando. No final do segundo ano apenas 90. No final do terceiro ano haverão apenas 27, e no final do quarto ano os 8 sortudos serão considerados investidores geniais e tidos como muito competentes, mas não fizeram absolutamente nada nesse cenário. No final do quarto ano tinham de haver 8 ainda presentes do grupo contratado quatro anos antes, e esses 8 tiveram a sorte de ser eles. Claro que eles jamais admitirão, eles atribuírão seu sucesso à tudo, desde a marca do leite em pó que bebiam quando bebês até o curso que fizeram e sua gradução, mas o mercado de negócios é um meio governado principalmente pela aleatoriedade.
É claro que quando chegar no quinto ano e 5 dentre esses 8 não conseguirem atingir a marca pela quinta vez consecutiva, já terão seus egos massageados o bastante para acreditar que de fato tinham alguma habilidade real, e aí sim, finalmente atribuíram seu fracasso ao azar. Surgirão teorias de todo tipo para explicar o que houve, quando na verdade é tudo apenas a flutuação normal.
Taleb cita esse cenário como exemplo, mas também descreve vários casos reais de investidores que encaixam-se exatamente nisso, e perderam tudo em um único evento extremo, aquele caso extremamente improvável cuja principal consequência é eliminar aqueles que conseguem manter-se dentro daquela margem por anos e anos a fio por pura sorte.
Pode parecer algo simples e alguns até criticam duramente o autor, mas os fatos falam por si mesmo. Com suas idéias de utilizar exatamente esses eventos extremos sabendo que os métodos estatísticos usados vão inevitavelmente falhar em uma hora e deixar o resto apenas correr, a empresa Universa, onde Taleb trabalha como conselheiro, faturou de 1.3 a 2 bilhões de dólares com a crise de 2007-2008, e a crise como ocoreu aparece prevista no livro, publicado em 2004.
Nenhuma teoria mirabolante nem nada como vimos por aí, pelo contrário. Taleb apenas mostrou claramente como todos os métodos estatísticos usados em um meio governado pela aleatoriedade como é o mercado não funcionam em nada, mas dão a ilusão de que conseguem prever alguma coisa, como o conselheiro anônimo das cartas faz, porque não somos capazes de ver todos para quem o método falha.
Domingo, Julho 26, 2009
junior, what are you up to?"
"I'm writing a dissertation on how rabbits eat foxes," said the
rabbit.
"Come now, friend rabbit, you know that's impossible!"
"Well, follow me and I'll show you." They both go into the
rabbit's dwelling and after a while the rabbit emerges with a satisfied
expression on his face.
Comes along a wolf. "Hello, what are we doing these days?"
"I'm writing the second chapter of my thesis, on how rabbits
devour wolves."
"Are you crazy? Where is your academic honesty?"
"Come with me and I'll show you." As before, the rabbit comes
out with a satisfied look on his face and a diploma in his paw.
Finally, the camera pans into the rabbit's cave and, as everybody
should have guessed by now, we see a mean-looking, huge lion sitting
next to some bloody and furry remnants of the wolf and the fox.
The moral: It's not the contents of your thesis that are important --
it's your PhD advisor that really counts.
Terça-feira, Julho 21, 2009
Romantismo total...
Johnny Cash
From the backdoor of your life you swept me out dear
In the bread line of your dreams I lost my place
At the table of your love I got the brush off
At the Indianapolis of your heart I lost the race
I’ve been washed down the sink of your conscience
In the theater of your love I lost my part
And now you say you’ve got me out of your conscience
I’ve been flushed from the bathroom of your heart
In the garbage disposal of you dreams I’ve been ground up dear
On the river of your plans I’m up the creek
Up the elevator of your future I’ve been shafted
On the calendar of your events I’m last week
I’ve been washed down the sink of your conscience
In the theater of your love I lost my part
And now you say you’ve got me out of your conscience
I’ve been flushed from the bathroom of your heart