Os "almoços grátis" coevolucionários são realmente almoços grátis?


7

Em seu artigo " Almoços Livres Coevolucionários ", David Wolpert e William Macready descrevem um conjunto de exceções aos teoremas Sem Almoço Gratuito que eles provaram em um artigo anterior . As exceções envolvem jogos para dois jogadores, nos quais um jogador tenta minimizar o custo esperado de pesquisa, com o jogo ideal, ou pelo menos o jogo bom, por um oponente.

Almoços grátis são "permitidos" neste caso, porque a escolha exata da função de custo para minimizar as mudanças depende de qual aptidão (ou seja, objetivo) funciona nas rodadas anteriores de jogo "descartadas". Em outras palavras, dado que um oponente já sabe alguma coisa sobre o jogo e escolhe respostas que minimizam o retorno esperado do jogador, ele pode eliminar certas funções de condicionamento físico sem precisar avaliá-las. Para ilustrar como isso funciona, a W&M fornece este gráfico:

Um gráfico ilustrando o desempenho relativo de três algoritmos de otimização em um cenário coevolucionário.

Aqui, grepresenta o algoritmo de busca que não presta atenção aos movimentos do oponente; representa o algoritmo de busca que considera todas as respostas possíveis do oponente a cada movimento; e representam o algoritmo de busca que mostra apenas uma resposta possível do oponente a cada movimento.g1 1g2

Isso ilustra o caráter do almoço gratuito fornecido: os algoritmos que levam em consideração as informações fornecidas pelo oponente se saem melhor do que os algoritmos que não o fazem, e aqueles que coletam o máximo de informações possível do oponente se saem melhor do que aqueles que coletam apenas alguns. A W&M amplia esse ponto em sua discussão posterior sobre a inteligência do oponente. Eles mostram que, mesmo quando um oponente não é onisciente, mas tem conhecimento parcial, o jogador pode explorar seu conhecimento parcial. No caso de total ignorância, isso não funcionará porque o oponente sempre responde com um movimento aleatório. Nesse caso, parece não haver ganho:

o desempenho esperado do agente será a média das possíveis respostas do antagonista.

Eu acho que isso se parece com acima. Mas nos casos em que o oponente tem algum conhecimento, o desempenho do algoritmo parece aumentar monotonicamente com a inteligência do oponente.g

O que me confunde sobre tudo isso é que o argumento parece resumir-se à seguinte afirmação trivial: em todos os domínios problemáticos, algoritmos que se preocupam em aprender com oponentes qualificados fazem melhor do que algoritmos que não. Ou seja, contanto que você não rejeite o almoço grátis, você pode recebê-lo.

Com efeito, o almoço é gratuito porque o oponente está comprando.

Se isso é verdade, não poderíamos imaginar toda uma gama de jogos nos quais, digamos, os jogadores jogam jogos cooperativos com oráculos, e aqueles que se recusam a cooperar têm desempenho pior em todos os problemas? Isso é um almoço grátis no mesmo sentido, certo? Mas não explicamos de onde vem o conhecimento do oráculo.

Isso significa que, se tivéssemos que modelar a fonte do conhecimento do outro jogador, estaríamos de volta à zona Sem almoço grátis? Ou é realmente a afirmação de que esse tipo de jogo competitivo produz melhores resultados, mesmo quando os dois jogadores começam com total ignorância, como a frase "almoço grátis" parece implicar?

Respostas:


2

Algoritmos coevolucionários não podem acelerar magicamente o progresso em nenhuma classe de problema arbitrária. Portanto, nesse sentido, a conclusão no final da pergunta está correta. No entanto, não se segue que todos os almoços gratuitos coevolucionários sejam triviais, como sugere a conclusão da pergunta.

Não posso oferecer uma descrição exaustiva de todos os tipos de almoços grátis co-revolucionários, mas posso oferecer dois exemplos, o primeiro dos quais é trivial e o segundo dos quais eu argumentaria que não é trivial. O segundo é não trivial, porque ajuda a explicar por que o teorema do almoço grátis realmente deve ser válido.

A diferença importante entre os dois exemplos é esta: no primeiro, os algoritmos concorrentes estão competindo para alcançar o mesmo objetivo abrangente, enquanto no segundo, os algoritmos concorrentes estão tentando alcançar objetivos diferentes. No segundo caso, a incompatibilidade entre os objetivos dos dois algoritmos permite que coisas interessantes aconteçam. Vou começar com o exemplo trivial.

Oponentes que buscam o mesmo objetivo

Imagine um problema de otimização muito simples, no qual o cenário de pesquisa é uma grade 7x7 de células. O objetivo principal é encontrar a célula com o valor máximo. 48 das células têm um valor 0 e uma célula escolhida aleatoriamente na grade tem um valor de 1.

Nosso objetivo secundário é descobrir uma estratégia de pesquisa que encontre o valor máximo mais rapidamente. Mas decorre do problema inicial que nenhuma estratégia poderia superar a pesquisa aleatória aqui, porque nada pode ser aprendido de uma célula sobre outra. No entanto, o teorema do almoço grátis co-revolucionário é válido! Aqui está o porquê:

Suponha que você tenha dois algoritmos de otimização, A e B, ambos pesquisando na grade. Realmente não importa qual estratégia eles usem, mas para concretizar, estipularemos que os dois usam uma estratégia de pesquisa aleatória. A única diferença entre eles é que B presta atenção aos movimentos de A e, quando vê que A encontrou o valor máximo, pula para a célula também. Em certo sentido, quando isso acontece, B ainda "perdeu" o concurso. Mas se você realizar muitas competições e comparar o desempenho médio de A com o desempenho médio de B, verá que B encontra o valor máximo mais rápido, em média.

A explicação é simples. O tempo médio para a primeira descoberta - seja por A ou B - permanece o mesmo. Mas sempre que A vence B na vitória, B não se incomoda em procurar outro lugar. Ele pula para a melhor célula. Quando B vence A na vitória, por outro lado, A apenas continua procurando, avançando até encontrar o valor máximo por si próprio.

Parece uma vitória se você estiver contando apenas o número de movimentos que B faz. Se você observar o número total de movimentos que A e B fazem juntos, eles na verdade se saem pior juntos do que qualquer um por si só, em média. Isso é devido ao esquecimento de A. Se mudarmos A para se comportar da mesma maneira que B, eles se sairão tão bem quanto qualquer outro por si só - mas não melhor.

Portanto, aqui, a modelagem de ambos os algoritmos nos devolve diretamente à zona de não almoço livre, exatamente como a pergunta argumenta. De fato, A e B estão apenas executando algoritmos de busca aleatória em paralelo. O número final de operações de pesquisa permanece o mesmo.

Oponentes que buscam objetivos diferentes

Agora imagine um cenário muito diferente. Suponha que tenhamos um problema de classificação: reconhecer ovelhas. Aqui, o trabalho de A é examinar um fluxo de fotos e dizer se há ovelhas nelas. Simples o suficiente.

Mas o trabalho de B é muito diferente. B tem o poder de injetar imagens próprias no fluxo! Seu objetivo não é identificar ovelhas; só quer diminuir a velocidade.

Como B pode fazer isso? Há um ótimo post no blog e um tópico associado no Twitter sobre uma questão intimamente relacionada por Janelle Shane . O tópico do Twitter começa:

Alguém tem uma foto de ovelhas em um lugar realmente incomum? É para brincar com uma rede neural.

E aqui está uma das primeiras respostas :

Que tal uma ovelha laranja?

Aqui está a ovelha laranja:

Uma foto de uma ovelha laranja.

Acontece que isso foi perfeito para brincadeiras :

Você entendeu totalmente. Ovelha laranja não é algo que se esperava. "uma vaca marrom deitada em cima de um campo verde"

Aqui estão alguns outros exemplos da postagem de Shane no blog:

Uma foto de cabras em uma árvore.

Um rebanho de ovelhas identificado erroneamente como flores.

Então, o que isso tem a ver com o nosso problema? Podemos conectá-los sendo mais precisos. Suponha que o objetivo de A seja atingir uma precisão superior a 99%, e B tenha o poder de injetar uma imagem no fluxo de A para cada nove fotos "naturais". B procura padrões no comportamento de A e os usa para encontrar imagens que mexem com seu modelo. Isso manterá a precisão de A abaixo de 99% por muito mais tempo do que se A visse apenas imagens "naturais".

Duas coisas se seguem disso. Primeiro, B fará muito melhor se prestar atenção ao que A faz. Se B apenas escolhe imagens com base em algum princípio geral escolhido aleatoriamente como "ovelhas em lugares estranhos", então há uma boa chance de que A já esteja preparado para elas. Caso contrário, aprenderá rapidamente a lidar com eles corretamente, e B precisará adotar uma nova estratégia. Por outro lado, se B observa o comportamento de A, ele pode escolher as coisas específicas em que A é pior e se concentrar nelas. Assim que A melhorar em um deles, B pode ter outro pronto para ir. Enquanto B puder encontrar padrões no comportamento de A, B sempre apresentará as imagens mais desafiadoras para A.

Segundo, A se sairá muito melhor se prestar atenção em quais imagens B escolhe. Afinal, B está procurando padrões no comportamento de A. Se ele encontrar padrões, ele os usará para enviar fotos falsas ou problemáticas para A. Por sua vez, isso significa que haverá padrões visíveis determinando as escolhas de B. Aqui, novamente, se A estiver prestando atenção aos padrões no comportamento de B, ele poderá identificar mais rapidamente quais imagens B estão injetando.

O importante é que, nesse cenário, A e B confiem em dados que garantem ter padrões . É garantido que tenha padrões, porque se A está fazendo o melhor possível, A está fazendo algo diferente de pesquisa aleatória. E se B está fazendo o seu melhor, então B está fazendo algo diferente de pesquisa aleatória.

Então, inicialmente, isso parece uma situação de almoço grátis realmente atraente. Mas o que realmente mostramos? Mostramos isso:

Enquanto A estiver fazendo algo diferente de pesquisa aleatória, B sempre poderá encontrar amostras fora da banda que os métodos de A não podem manipular.

Esse é o teorema do almoço grátis em poucas palavras!

A única maneira de A impedir que B encontre imagens fora da banda é se comportando de maneira aleatória para B. Mas se o comportamento de A não for realmente aleatório, a longo prazo, B sempre será capaz de encontrar o padrão - mesmo que o próprio B esteja fazendo apenas pesquisa aleatória.

O mesmo argumento funciona na outra direção. A única maneira de B impedir A de notar padrões em suas imagens é se comportando de maneiras aleatórias. Mas se o comportamento de B não for realmente aleatório, A acabará por encontrar o padrão, mesmo que esteja apenas fazendo uma pesquisa aleatória.

Nesse cenário, os dois algoritmos tentarão se enganar adotando comportamentos cada vez mais complexos e aparentemente aleatórios. Portanto, a longo prazo, eles convergirão lentamente para uma pesquisa verdadeiramente aleatória - o melhor que qualquer algoritmo pode fazer em média em todos os domínios problemáticos.

Um pool infinito de aleatoriedade

Pode ser que essas estratégias de aprendizado coevolucionário ainda tenham essa vantagem sobre outras: elas podem incentivar os dois algoritmos a explorar o espaço de comportamentos não aleatórios relevantes de maneira mais rápida ou extensiva. Eu nem tenho certeza disso. De qualquer forma, o teorema do almoço sem reserva é válido em geral, porque o espaço de possíveis comportamentos não aleatórios é muito, muito menor que o espaço de possíveis comportamentos aleatórios.

Como nós sabemos? Seria fora de tópico entrar em uma prova detalhada, mas considere a questão relacionada de quantas cadeias longas podem ser compactadas em cadeias mais curtas. Independentemente do método de compactação, a maioria de todas as seqüências não pode ser compactada. É fácil provar isso com um argumento de contagem de bin. Suponha que consideremos cadeias binárias e inicie com a cadeia vazia. Supondo que não possa haver cadeias de comprimento negativo, isso é incompressível. Agora considere as seqüências de comprimento 1. Existem duas, mas há apenas uma cadeia de comprimento 0, portanto, apenas uma delas pode ser compactada. Agora, temos duas seqüências incompressíveis e uma terceira que pode ser compactada em um bit. Passando para as seqüências de comprimento 2: existem quatro, mas existem apenas duas seqüências de comprimento 1, e a sequência de um comprimento 0 já está sendo usada, portanto, podemos compactar apenas duas das seqüências de comprimento 2. Os outros dois são incompressíveis. São três strings compressíveis e quatro strings incompressíveis ... e assim por diante.

À medida que os números aumentam, uma das coisas que você nota é que, mesmo entre as strings compressíveis, metade delas é compressível apenas um bit, porque são compactadas em strings que são elas mesmas incompressíveis. Um quarto é compressível apenas por dois bits; um oitavo é apenas compressível por três bits. Não importa como você o corta, o número de seqüências de caracteres substancialmente compactáveis ​​é sempre muito menor do que o número de sequências que são incompressíveis ou pouco compactáveis.

A linha de raciocínio para o comportamento aleatório é semelhante. Você também pode conectar essas idéias à prova de que há muito mais números reais do que números inteiros. No esquema global das coisas, o teorema do almoço grátis é verdadeiro porque o escopo da aleatoriedade é inimaginavelmente vasto.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.