Skip to content

Instantly share code, notes, and snippets.

@pmarkun
Created February 11, 2023 14:43
Show Gist options
  • Save pmarkun/1ab4b0d0d7ecfe9fbc3274698dda46d8 to your computer and use it in GitHub Desktop.
Save pmarkun/1ab4b0d0d7ecfe9fbc3274698dda46d8 to your computer and use it in GitHub Desktop.

ChatGPT é uma JPEG borrado da web

A OpenAI tem um chatbot que oferece paráfrases, enquanto o Google oferece citações. Qual deles preferimos?

Por Ted Chiang

9 de fevereiro de 2023

Em 2013, trabalhadores de uma empresa de construção alemã notaram algo estranho sobre sua fotocopiadora Xerox: quando fizeram uma cópia do plano de piso de uma casa, a cópia diferiu do original de maneira sutil, mas significativa. No plano de piso original, cada um dos três quartos da casa era acompanhado por um retângulo especificando sua área: os quartos eram 14,13, 21,11 e 17,42 metros quadrados, respectivamente. No entanto, na fotocópia, todos os três quartos foram rotulados como sendo de 14,13 metros quadrados. A empresa entrou em contato com o cientista da computação David Kriesel para investigar este resultado aparentemente inconcebível. Eles precisavam de um cientista da computação porque uma moderna fotocopiadora Xerox não usa o processo xerográfico popularizado na década de 1960. Em vez disso, ele digitaliza o documento e, em seguida, imprime o arquivo de imagem resultante. Combine isso com o fato de que praticamente todos os arquivos de imagem digitais são comprimidos para economizar espaço, e uma solução para o mistério começa a se sugerir.

Comprimir um arquivo exige dois passos: primeiro, a codificação, durante a qual o arquivo é convertido em um formato mais compacto, e, em seguida, a decodificação, pelo qual o processo é revertido. Se o arquivo restaurado for idêntico ao original, então o processo de compressão é descrito como sem perdas: nenhuma informação foi descartada. Por outro lado, se o arquivo restaurado for apenas uma aproximação do original, a compressão é descrita como com perdas: algumas informações foram descartadas e agora são irremediavelmente perdidas. A compressão sem perdas é o que normalmente é usado para arquivos de texto e programas de computador, pois esses são domínios nos quais até mesmo um único caractere incorreto tem o potencial de ser desastroso. A compressão com perdas é frequentemente usada para fotos, áudio e vídeo em situações em que a precisão absoluta não é essencial. Na maioria das vezes, não notamos se uma imagem, música ou filme não é perfeitamente reproduzido. A perda de fidelidade torna-se mais perceptível apenas quando os arquivos são apertados muito apertados. Nesses casos, notamos o que é conhecido como artefatos de compressão: a borracheira das imagens jpeg e mpeg mais pequenas ou o som metálico dos MP3 de baixa taxa de bits.

As fotocopiadoras Xerox usam um formato de compressão com perdas conhecido como jbig2, projetado para uso com imagens em preto e branco. Para economizar espaço, a copiadora identifica regiões de aparência semelhante na imagem e armazena uma única cópia para todas elas; quando o arquivo é descomprimido, ele usa essa cópia repetidamente para reconstruir a imagem. Resultou que a fotocopiadora julgou que as etiquetas especificando a área dos quartos eram semelhantes o suficiente para que fosse necessário armazenar apenas uma delas - 14,13 - e reutilizou essa para todos os três quartos ao imprimir o plano de piso.

O fato de as fotocopiadoras Xerox usarem um formato de compressão com perdas em vez de um sem perdas não é, por si só, um problema. O problema é que as fotocopiadoras estavam degradando a imagem de uma maneira sutil, na qual os artefatos de compressão não eram imediatamente reconhecíveis. Se a fotocopiadora simplesmente produzisse cópias borradas, todos saberiam que elas não eram reproduções precisas dos originais. O que levou a problemas foi o fato de que a fotocopiadora estava produzindo números que eram legíveis, mas incorretos; isso fez com que as cópias parecessem precisas quando não eram. (Em 2014, a Xerox lançou um patch para corrigir esse problema.)

Acho que este incidente com a fotocopiadora Xerox vale a pena lembrar hoje, à medida que consideramos o ChatGPT da OpenAI e outros programas semelhantes, que os pesquisadores de IA chamam de modelos de linguagem grandes. A semelhança entre uma fotocopiadora e um modelo de linguagem grande pode não ser imediatamente aparente - mas considere o seguinte cenário. Imagine que você está prestes a perder o seu acesso à Internet para sempre. Em preparação, você planeja criar uma cópia comprimida de todo o texto na Web, para que possa armazená-lo em um servidor privado. Infelizmente, o seu servidor privado tem apenas um por cento do espaço necessário; você não pode usar um algoritmo de compressão sem perdas se quiser que tudo caiba. Em vez disso, você escreve um algoritmo com perdas que identifica regularidades estatísticas no texto e as armazena em um formato de arquivo especializado. Porque você tem quase poder computacional ilimitado para lançar nessa tarefa, o seu algoritmo pode identificar regularidades estatísticas extraordinariamente sutis, o que lhe permite alcançar a proporção de compressão desejada de cem para um.

Agora, perder o seu acesso à Internet não é tão terrível; você tem todas as informações na Web armazenadas no seu servidor. A única pegadinha é que, porque o texto foi tão altamente comprimido, você não pode procurar informações pesquisando por uma citação exata; você nunca obterá um resultado exato, porque as palavras não estão sendo armazenadas. Para resolver esse problema, você cria uma interface que aceita consultas na forma de perguntas e responde com respostas que transmitem o sentido do que você tem em seu servidor.

O que eu descrevi soa muito como o ChatGPT, ou qualquer outro grande modelo de linguagem. Pense no ChatGPT como um jpeg borrado de todo o texto na Web. Ele mantém muita da informação na Web, da mesma forma que um jpeg mantém muita da informação de uma imagem de maior resolução, mas, se você estiver procurando por uma sequência exata de bits, você não a encontrará; tudo o que você sempre obterá é uma aproximação. Mas, porque a aproximação é apresentada na forma de texto gramatical, que o ChatGPT domina, geralmente é aceitável. Você ainda está olhando para um jpeg borrado, mas o borrão ocorre de uma maneira que não torna a imagem como um todo menos nítida.

Essa analogia à compressão com perda não é apenas uma maneira de entender a habilidade do ChatGPT em repackaging informações encontradas na Web usando palavras diferentes. Também é uma maneira de entender as “alucinações”, ou respostas sem sentido para perguntas factuais, às quais os grandes modelos de linguagem, como o ChatGPT, são muito propensos. Essas alucinações são artefatos de compressão, mas - como as etiquetas incorretas geradas pela fotocopiadora Xerox - são plausíveis o suficiente para que a identificação delas exija a comparação com os originais, o que neste caso significa ou a Web ou o nosso próprio conhecimento do mundo. Quando pensamos neles dessa forma, essas alucinações não são nada surpreendentes; se um algoritmo de compressão é projetado para reconstruir o texto depois que noventa e nove por cento do original foi descartado, devemos esperar que grandes porções do que ele gera sejam inteiramente fabricadas.

Essa analogia faz ainda mais sentido quando lembramos que uma técnica comum usada por algoritmos de compressão com perda é a interpolação - ou seja, estimar o que está faltando olhando para o que está nos dois lados da lacuna. Quando um programa de imagem está exibindo uma foto e precisa reconstruir um pixel que foi perdido durante o processo de compressão, ele olha para os pixels próximos e calcula a média. É isso que o ChatGPT faz quando é solicitado a descrever, por exemplo, perder um meio de calçado na secadora usando o estilo da Declaração da Independência: ele está tomando dois pontos no “espaço léxico” e gerando o texto que ocuparia a localização entre eles. (“Quando, no curso dos acontecimentos humanos, se torna necessário separar as roupas de seus pares, a fim de manter a limpeza e a ordem delas. . . .”) O ChatGPT é tão bom nessa forma de interpolação que as pessoas acham divertido: eles descobriram uma ferramenta “borrão” para parágrafos, em vez de fotos, e estão se divertindo muito brincando com ela.

Dado que os grandes modelos de linguagem, como o ChatGPT, são frequentemente exaltados como a vanguarda da inteligência artificial, pode parecer desdenhoso - ou pelo menos desanimador - descrevê-los como algoritmos de compressão de texto com perda. Eu acho que essa perspectiva oferece uma correção útil à tendência de antropomorfizar grandes modelos de linguagem, mas há outro aspecto da analogia de compressão que vale a pena considerar. Desde 2006, um pesquisador de IA chamado Marcus Hutter ofereceu uma recompensa em dinheiro - conhecida como o Prêmio para Compressão do Conhecimento Humano, ou o Prêmio Hutter - para qualquer pessoa que conseguisse comprimir de forma perdida um snapshot específico de um gigabyte da Wikipedia menor do que o vencedor anterior. Você provavelmente já encontrou arquivos comprimidos usando o formato de arquivo zip. O formato zip reduz o arquivo de um gigabyte de Hutter para cerca de trêscentos megabytes; o vencedor mais recente conseguiu reduzi-lo a cem e quinze megabytes. Isso não é apenas um exercício de smooshing. Hutter acredita que uma melhor compressão de texto será instrumental na criação de inteligência artificial de nível humano, em parte porque o maior grau de compressão pode ser alcançado entendendo o texto.

Os grandes modelos de linguagem identificam regularidades estatísticas no texto. Qualquer análise do texto da Web revelará que frases como “a oferta é baixa” costumam aparecer em proximidade com frases como “os preços sobem”. Um chatbot que incorpore essa correlação pode, quando perguntado sobre o efeito de escassez de oferta, responder com uma resposta sobre os preços aumentando. Se um grande modelo de linguagem tiver compilado uma vasta quantidade de correlações entre termos econômicos - tantas que ele possa oferecer respostas plausíveis a uma ampla variedade de perguntas - devemos dizer que ele realmente entende a teoria econômica? Modelos como o ChatGPT não são elegíveis para o Prêmio Hutter por uma variedade de razões, uma das quais é que eles não reconstroem o texto original com precisão - ou seja, eles não realizam compressão sem perda. Mas é possível que sua compressão com perda indique, mesmo assim, um entendimento real do tipo que os pesquisadores de IA estão interessados?

Vamos voltar ao exemplo da aritmética. Se você pedir ao GPT-3 (o grande modelo de linguagem do qual o ChatGPT foi construído) para somar ou subtrair um par de números, ele quase sempre responde com a resposta correta quando os números têm apenas dois dígitos. Mas sua precisão diminui significativamente com números maiores, caindo para dez por cento quando os números têm cinco dígitos. A maioria das respostas corretas que o GPT-3 dá não estão na Web - não há muitas páginas da Web que contenham o texto “245 + 821”, por exemplo -, então ele não está envolvido em simples memorização. Mas, apesar de ingerir uma vasta quantidade de informações, ele ainda não conseguiu derivar os princípios da aritmética. Uma análise minuciosa das respostas incorretas do GPT-3 sugere que ele não carrega o “1” ao realizar aritmética. A Web certamente contém explicações sobre o carregamento do “1”, mas o GPT-3 não consegue incorporar essas explicações. A análise estatística do GPT-3 de exemplos de aritmética permite que ele produza uma aproximação superficial da coisa real, mas nada mais que isso.

Dada a falha do GPT-3 em um assunto ensinado na escola primária, como podemos explicar o fato de que às vezes ele parece se sair bem ao escrever ensaios de nível universitário? Mesmo que os grandes modelos de linguagem às vezes alucinem, quando eles estão lúcidos, eles parecem realmente entender assuntos como a teoria econômica. Talvez a aritmética seja um caso especial, para o qual os grandes modelos de linguagem são mal adaptados. É possível que, em áreas fora da adição e subtração, as regularidades estatísticas no texto realmente correspondam a um conhecimento genuíno do mundo real?

Eu acho que há uma explicação mais simples. Imagine como seria se o ChatGPT fosse um algoritmo sem perdas. Se isso fosse o caso, ele sempre responderia às perguntas fornecendo uma citação verbatim de uma página da Web relevante. Provavelmente consideraríamos o software como apenas uma pequena melhoria em relação a um mecanismo de pesquisa convencional e ficaríamos menos impressionados com ele. O fato de o ChatGPT reformular material da Web em vez de cita-lo palavra por palavra faz com que pareça que ele é um aluno expressando ideias em suas próprias palavras, em vez de simplesmente regurgitar o que ele leu; cria a ilusão de que o ChatGPT entende o material. Em alunos humanos, a memorização mecânica não é um indicador de aprendizado genuíno, então a incapacidade do ChatGPT de produzir citações exatas das páginas da Web é exatamente o que nos faz pensar que ele aprendeu algo. Quando lidamos com sequências de palavras, a compressão com perdas parece mais inteligente do que a compressão sem perdas.

Muitos usos foram propostos para grandes modelos de linguagem. Pensar neles como jpegs borrados oferece uma maneira de avaliar para que eles podem ou não ser bem adaptados. Vamos considerar alguns cenários.

Os grandes modelos de linguagem podem substituir os mecanismos de pesquisa tradicionais? Para que tenhamos confiança neles, precisaríamos saber que eles não foram alimentados com propaganda e teorias da conspiração - precisaríamos saber que o jpeg está capturando as seções certas da Web. Mas, mesmo que um grande modelo de linguagem inclua apenas as informações que queremos, ainda há a questão da borracheira. Há um tipo de borracheira que é aceitável, que é a reafirmação da informação em palavras diferentes. Então há a borracheira da fabricação descarada, que consideramos inaceitável quando procuramos fatos. Não está claro se é tecnicamente possível manter o tipo aceitável de borracheira enquanto se elimina o tipo inaceitável, mas espero que descubramos isso em breve.

Mesmo que seja possível restringir os grandes modelos de linguagem de se envolver em fabricação, devemos usá-los para gerar conteúdo da Web? Isso faria sentido apenas se nosso objetivo for repackagear informações que já estão disponíveis na Web. Algumas empresas existem para fazer isso - geralmente as chamamos de moinhos de conteúdo. Talvez a borracheira dos grandes modelos de linguagem seja útil para eles, como uma maneira de evitar a infração de direitos autorais. Em geral, diria que qualquer coisa que seja boa para os moinhos de conteúdo não é boa para as pessoas que procuram informações online agora; quanto mais texto gerado por grandes modelos de linguagem for publicado na Web, mais a Web se torna uma versão mais borrada dela mesma.

Há muito pouca informação disponível sobre o próximo sucessor do ChatGPT da OpenAI, o GPT-4. Mas vou fazer uma previsão: ao montar a vasta quantidade de texto usada para treinar o GPT-4, as pessoas da OpenAI terão feito todos os esforços para excluir material gerado pelo ChatGPT ou por qualquer outro grande modelo de linguagem. Se isso se confirmar, isso servirá como confirmação involuntária de que a analogia entre grandes modelos de linguagem e compressão com perdas é útil. Repetidamente re-salvar um jpeg cria mais artefatos de compressão, porque mais informações são perdidas a cada vez. É o equivalente digital de fazer repetidamente cópias de cópias nas velhas épocas. A qualidade da imagem só piora.

De fato, um critério útil para avaliar a qualidade de um grande modelo de linguagem pode ser a disposição de uma empresa em usar o texto que ele gera como material de treinamento para um novo modelo. Se a saída do ChatGPT não for boa o suficiente para o GPT-4, podemos considerar isso como um indicador de que ela também não é boa o suficiente para nós. Por outro lado, se um modelo começar a gerar texto tão bom que possa ser usado para treinar novos modelos, então isso deve nos dar confiança na qualidade desse texto. (Suspeito que tal resultado exigiria uma grande inovação nas técnicas usadas para construir esses modelos.) Se e quando começarmos a ver modelos produzindo saída tão boa quanto a sua entrada, então a analogia da compressão com perdas não será mais aplicável.

Os grandes modelos de linguagem podem ajudar os humanos na criação de escrita original? Para responder a isso, precisamos ser específicos sobre o que queremos dizer com essa pergunta. Existe um gênero de arte conhecido como arte Xerox, ou arte de fotocópia, em que os artistas usam as propriedades distintas de fotocopiadoras como ferramentas criativas. Algo assim é certamente possível com a fotocopiadora que é o ChatGPT, então, nesse sentido, a resposta é sim. Mas eu não acho que alguém afirme que as fotocopiadoras se tornaram uma ferramenta essencial na criação de arte; a maioria dos artistas não as usa em seu processo criativo e ninguém argumenta que eles estão se colocando em desvantagem com essa escolha.

Então, vamos supor que não estamos falando de um novo gênero de escrita que seja análogo à arte Xerox. Dada essa especificação, o texto gerado por grandes modelos de linguagem pode ser um ponto de partida útil para os escritores construírem algo original, seja ficção ou não ficção? Deixar um grande modelo de linguagem lidar com o trabalho padrão permitirá aos escritores concentrar sua atenção nas partes realmente criativas?

Obviamente, ninguém pode falar por todos os escritores, mas deixe-me fazer o argumento de que começar com uma cópia borrada de trabalho não original não é uma boa maneira de criar trabalho original. Se você é um escritor, você vai escrever muito trabalho não original antes de escrever algo original. E o tempo e o esforço gastos nesse trabalho não original não são desperdiçados; pelo contrário, eu sugeriria que é exatamente isso que o habilita a criar algo original eventualmente. As horas gastas escolhendo a palavra certa e reorganizando frases para que elas se encaixem melhor umas nas outras são o que ensinam como o significado é transmitido pela prosa. Ter alunos escreverem ensaios não é apenas uma maneira de testar o seu domínio do material; isso lhes dá experiência em articular seus pensamentos. Se os alunos nunca tiverem que escrever ensaios que todos já leram antes, eles nunca adquirirão as habilidades necessárias para escrever algo que nunca lemos.

E não é o caso de, uma vez que você deixou de ser aluno, você possa usar com segurança o modelo que um grande modelo de linguagem fornece. A luta para expressar seus pensamentos não desaparece assim que você se forma - ela pode ocorrer toda vez que você começa a elaborar um novo trabalho. Às vezes, é somente no processo de escrever que você descobre suas ideias originais. Alguns podem dizer que a saída de grandes modelos de linguagem não parece muito diferente do primeiro rascunho de um escritor humano, mas, novamente, acho que essa é uma semelhança superficial. Seu primeiro rascunho não é uma ideia não original expressa claramente; é uma ideia original expressa mal, e é acompanhada por sua insatisfação amorfa, sua consciência da distância entre o que diz e o que você quer que diga. É isso que o direciona durante a reescrita, e é uma das coisas que faltam quando você começa com o texto gerado por uma IA.

Não há nada mágico ou místico na escrita, mas ela envolve mais do que colocar um documento existente em uma fotocopiadora instável e pressionar o botão Imprimir. É possível que, no futuro, construamos uma IA capaz de escrever boa prosa com base apenas em sua própria experiência do mundo. O dia em que alcançarmos isso será realmente momentoso - mas esse dia está além do nosso horizonte de previsão. Enquanto isso, é razoável perguntar: Qual é o uso de ter algo que reescreve a Web? Se estivéssemos perdendo nosso acesso à Internet para sempre e tivéssemos que armazenar uma cópia em um servidor privado com espaço limitado, um grande modelo de linguagem como o ChatGPT poderia ser uma boa solução, desde que ele pudesse ser mantido longe da fabricação. Mas não estamos perdendo nosso acesso à Internet. Então, quanto uso tem um jpeg borrado, quando você ainda tem o original? ♦

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment