Say Not “Complexity”

De Racionalidade
Ir para: navegação, pesquisa

Original

Once upon a time . . .

This is a story from when I first met Marcello, with whom I would later work for a year on AI theory; but at this point I had not yet accepted him as my apprentice. I knew that he competed at the national level in mathematical and computing olympiads, which sufficed to attract my attention for a closer look; but I didn’t know yet if he could learn to think about AI.

I had asked Marcello to say how he thought an AI might discover how to solve a Rubik’s Cube. Not in a preprogrammed way, which is trivial, but rather how the AI itself might figure out the laws of the Rubik universe and reason out how to exploit them. How would an AI invent for itself the concept of an “operator,” or “macro,” which is the key to solving the Rubik’s Cube?

At some point in this discussion, Marcello said: “Well, I think the AI needs complexity to do X, and complexity to do Y—”

And I said, “Don’t say ‘complexity.’”

Marcello said, “Why not?”

I said, “Complexity should never be a goal in itself. You may need to use a particular algorithm that adds some amount of complexity, but complexity for the sake of complexity just makes things harder.” (I was thinking of all the people whom I had heard advocating that the Internet would “wake up” and become an AI when it became “sufficiently complex.”)

And Marcello said, “But there’s got to be some amount of complexity that does it.”

I closed my eyes briefly, and tried to think of how to explain it all in words. To me, saying “complexity” simply felt like the wrong move in the AI dance. No one can think fast enough to deliberate, in words, about each sentence of their stream of consciousness; for that would require an infinite recursion. We think in words, but our stream of consciousness is steered below the level of words, by the trained-in remnants of past insights and harsh experience . . .

I said, “Did you read A Technical Explanation of Technical Explanation?”

“Yes,” said Marcello.

“Okay,” I said. “Saying ‘complexity’ doesn’t concentrate your probability mass.”

“Oh,” Marcello said, “like ‘emergence.’ Huh. So . . . now I’ve got to think about how X might actually happen . . .”

That was when I thought to myself, “Maybe this one is teachable.

Complexity is not a useless concept. It has mathematical definitions attached to it, such as Kolmogorov complexity and Vapnik-Chervonenkis complexity. Even on an intuitive level, complexity is often worth thinking about—you have to judge the complexity of a hypothesis and decide if it’s “too complicated” given the supporting evidence, or look at a design and try to make it simpler.

But concepts are not useful or useless of themselves. Only usages are correct or incorrect. In the step Marcello was trying to take in the dance, he was trying to explain something for free, get something for nothing. It is an extremely common misstep, at least in my field. You can join a discussion on Artificial General Intelligence and watch people doing the same thing, left and right, over and over again—constantly skipping over things they don’t understand, without realizing that’s what they’re doing.

In an eyeblink it happens: putting a non-controlling causal node behind something mysterious, a causal node that feels like an explanation but isn’t. The mistake takes place below the level of words. It requires no special character flaw; it is how human beings think by default, how they have thought since the ancient times.

What you must avoid is skipping over the mysterious part; you must linger at the mystery to confront it directly. There are many words that can skip over mysteries, and some of them would be legitimate in other contexts—“complexity,” for example. But the essential mistake is that skip-over, regardless of what causal node goes behind it. The skip-over is not a thought, but a microthought. You have to pay close attention to catch yourself at it. And when you train yourself to avoid skipping, it will become a matter of instinct, not verbal reasoning. You have to feel which parts of your map are still blank, and more importantly, pay attention to that feeling.

I suspect that in academia there is a huge pressure to sweep problems under the rug so that you can present a paper with the appearance of completeness. You’ll get more kudos for a seemingly complete model that includes some “emergent phenomena,” versus an explicitly incomplete map where the label says “I got no clue how this part works” or “then a miracle occurs.” A journal may not even accept the latter paper, since who knows but that the unknown steps are really where everything interesting happens? And yes, it sometimes happens that all the non-magical parts of your map turn out to also be non-important. That’s the price you sometimes pay, for entering into terra incognita and trying to solve problems incrementally. But that makes it even more important to know when you aren’t finished yet. Mostly, people don’t dare to enter terra incognita at all, for the deadly fear of wasting their time.

And if you’re working on a revolutionary AI startup, there is an even huger pressure to sweep problems under the rug; or you will have to admit to yourself that you don’t know how to build an AI yet, and your current life plans will come crashing down in ruins around your ears. But perhaps I am over-explaining, since skip-over happens by default in humans; if you’re looking for examples, just watch people discussing religion or philosophy or spirituality or any science in which they were not professionally trained.

Marcello and I developed a convention in our AI work: when we ran into something we didn’t understand, which was often, we would say “magic”—as in, “X magically does Y”—to remind ourselves that here was an unsolved problem, a gap in our understanding. It is far better to say “magic,” than “complexity” or “emergence”; the latter words create an illusion of understanding. Wiser to say “magic,” and leave yourself a placeholder, a reminder of work you will have to do later.

http://lesswrong.com/lw/ix/say_not_complexity/

Não Fale em "Complexidade"

Era uma vez...

Esta é uma história de quando eu conheci o Marcello, com quem viria a trabalhar por um ano em teoria da IA; mas naquele momento eu ainda não o tinha aceito como meu aprendiz. Eu sabia que ele tinha competido em nível nacional em olimpíadas de matemática e computação, o que bastou para atrair a minha atenção para um olhar mais atento; mas eu ainda não sabia se ele seria capaz de aprender a pensar sobre IA.

Eu tinha pedido a Marcello para dizer como ele achava que uma IA poderia descobrir como resolver um cubo mágico. Não de uma forma pré-programada, que é trivial, mas como a própria IA poderia descobrir as leis do universo Rubik e entender como explorá-las. Como é que uma IA inventaria por si mesma o conceito de um "operador", ou "macro", que é a chave para resolver o Cubo de Rubik?

Em algum ponto nessa discussão, Marcello disse: "Bem, eu acho que a IA precisa de complexidade para fazer X, e de complexidade para fazer Y-"

E eu disse: "Não diga ‘complexidade.’"

Marcello disse: "Por que não?"

Eu disse: "Complexidade nunca deve ser um fim em si mesmo. Você pode precisar usar algum algoritmo específico que adiciona uma certa quantidade de complexidade, mas complexidade pela própria complexidade só torna as coisas mais difíceis." (Eu estava pensando em todas as pessoas que eu tinha ouvido afirmarem que a Internet iria "acordar" e tornar-se uma IA quando se tornasse "suficientemente complexa.")

E Marcello disse: "Mas tem que haver alguma quantidade de complexidade que faz o serviço."

Fechei os olhos por um instante, e tentei pensar em como explicar tudo em palavras. Eu simplesmente sinto que dizer "complexidade" parece o movimento errado na dança da IA. Ninguém pode pensar rápido o suficiente para deliberar, em palavras, sobre cada frase de seu fluxo de consciência; pois isso exigiria recursão infinita. Nós pensamos em palavras, mas o nosso fluxo de consciência é dirigido abaixo do nível das palavras, pelos restos de percepções passadas e dura experiência que nos treinaram...

Eu disse: "Você leu Uma Explicação Técnica de Explicação Técnica ? "

"Sim", disse Marcello.

"Tudo bem", eu disse. "Dizer 'complexidade' não concentra sua massa de probabilidade."

"Oh," disse Marcello, "tipo 'emergência'. Huh. Então... agora eu tenho que pensar em como X poderia realmente acontecer... "

Foi quando eu pensei comigo mesmo: "Talvez esse seja ensinável."

A complexidade não é um conceito inútil. Ele está ligado a definições matemáticas, como a complexidade de Kolmogorov e complexidade de Vapnik-Chervonenkis. Mesmo em um nível intuitivo, muitas vezes vale a pena pensar em complexidade - você tem que julgar a complexidade de uma hipótese e decidir se é "complicada demais", dada a evidência em que ela se apoia, ou olhar para um projeto e tentar torná-lo mais simples.

Mas os conceitos não são úteis ou inúteis em si mesmos. Somente usos estão corretos ou incorretos. No passo que Marcello estava tentando dar na dança, ele estava tentando explicar algo de graça, tirar algo do nada. É um passo em falso extremamente comum, pelo menos na minha área. Você pode participar de uma discussão sobre Inteligência Artificial Geral e ver as pessoas fazendo a mesma coisa, esquerda e direita, de novo e de novo, sempre desviando das coisas que elas não entendem, sem perceber que é isso o que elas estão fazendo.

Acontece em um piscar de olhos: colocar, por trás de algo misterioso, um nó causal que não controla expectativas, um nó causal que parece uma explicação, mas não é. O erro ocorre abaixo do nível das palavras. Ele não exige nenhuma falha de caráter especial; é como os seres humanos pensam por padrão, como eles têm pensado desde os tempos antigos.

O que você deve evitar é desviar da parte misteriosa; você deve se demorar sobre o mistério para enfrentá-lo diretamente. Há muitas palavras que podem desviar dos mistérios, e algumas delas seriam legítimas em outros contextos - "complexidade", por exemplo. Mas o erro essencial é aquele desvio, independentemente do nó causal que vai atrás dele. O desvio não é um pensamento, mas um micro-pensamento. Você precisa prestar muita atenção para se pegar no flagra. E quando você se treinar para evitar o desvio, isso se tornará uma questão de instinto, não um raciocínio verbal. Você tem de sentir que partes do seu mapa estão ainda em branco, e mais importante, prestar atenção a esse sentimento.

Eu suspeito que na academia há uma enorme pressão para varrer os problemas para debaixo do tapete, para que você possa apresentar um documento com a aparência de completude. Você receberá mais louros por um modelo aparentemente completo que inclui alguns "fenômenos emergentes," do que com um mapa explicitamente incompleto cujo rótulo diz "Eu não tenho idéia de como funciona esta parte" ou "então ocorre um milagre." Uma revista pode até mesmo não aceitar este segundo artigo, já que quem sabe se, na verdade, não é nesses passos desconhecidos que tudo de interessante acontece? E sim, às vezes acontece que todas as partes não-mágicas do seu mapa são também não-importantes. Esse é o preço que você paga às vezes, por entrar em terra incognita e tentar resolver problemas incrementalmente. Mas isso torna ainda mais importante saber quando você ainda não terminou. N amaior parte, as pessoas sequer se atrevem a entrar terra incognita, por causa do medo mortal de perder o seu tempo.

E se você está trabalhando em uma startup revolucionária de IA, há uma pressão ainda maior para varrer os problemas para debaixo do tapete; ou você vai ter que admitir para si mesmo que você ainda não sabe como construir uma IA, e os seus planos de vida atuais irão desabar em ruínas ao redor de suas orelhas. Mas talvez eu esteja explicando demais, já que o desvio acontece por padrão em seres humanos; se você quiser exemplos, basta ver as pessoas discutindo religião, filosofia ou espiritualidade ou qualquer ciência em que eles não foram treinados profissionalmente.

Marcello e eu desenvolvemos uma convenção em nosso trabalho em IA: quando nos deparávamos com algo que não entendíamos, o que era frequente, nós dizíamos "mágica" - como em "X magicamente faz Y" - para lembrar que aqui estava um problema não resolvido, uma lacuna no nosso entendimento. É muito melhor dizer "mágica" do que "complexidade" ou "emergência"; essas últimas palavras criam uma ilusão de compreensão. Mais sábio dizer "mágica", e deixar um espaço reservado para si mesmo, um lembrete do trabalho que você terá que fazer mais tarde.

http://lesswrong.com/lw/ix/say_not_complexity/