2 pontos por GN⁺ 2024-06-07 | 1 comentários | Compartilhar no WhatsApp
  • A OpenAI apresentou um método escalável para decompor as representações do GPT‑4 em 16 milhões de características, com o objetivo de entender melhor o interior dos modelos de linguagem
  • A ferramenta central é o autoencoder esparso, uma abordagem que busca conectar um pequeno número de padrões de ativação que influenciam a saída a conceitos compreensíveis por humanos
  • O novo método mostrou um scaling mais previsível do que técnicas anteriores e foi usado para treinar vários autoencoders nas ativações do GPT‑2 small e do GPT‑4
  • As limitações também são claras: muitas características ainda são difíceis de interpretar, e as ativações do GPT‑4 após passarem por um autoencoder esparso ficam em um nível de desempenho equivalente ao de um modelo treinado com cerca de 10 vezes menos computação de treino
  • O artigo, o código e a ferramenta de visualização de características publicados servem de base para pesquisas futuras e, no curto prazo, a OpenAI pretende verificar se isso é útil para o monitoramento e direcionamento do comportamento de modelos de linguagem

Por que é difícil interpretar o interior de redes neurais

  • Ainda não existe um método suficientemente estabelecido para entender a atividade neural dentro dos modelos de linguagem
  • Artefatos como carros podem ser projetados, avaliados e consertados com base nas especificações de suas peças, mas redes neurais não são compostas por partes projetadas diretamente, e sim pelo resultado de algoritmos de treinamento
  • Por isso, redes neurais não se decompõem facilmente em componentes identificáveis, o que dificulta lidar com segurança em IA da mesma forma que se raciocina sobre a segurança de um carro
  • Para interpretar uma rede neural, primeiro é preciso encontrar unidades de composição úteis que consigam explicar o cálculo neural

A abordagem com autoencoders esparsos

  • As ativações internas de modelos de linguagem se acendem em padrões difíceis de prever e parecem representar vários conceitos ao mesmo tempo
  • As ativações aparecem de forma densa, com muitos elementos sendo ativados juntos para cada entrada
  • Como os conceitos do mundo real costumam envolver apenas uma pequena parte do todo em contextos específicos, a esparsidade é importante
  • Autoencoders esparsos são uma forma de identificar o pequeno número de características importantes para gerar uma determinada saída
    • A expectativa é encontrar uma estrutura parecida com o pequeno conjunto de conceitos que uma pessoa mantém em mente ao raciocinar sobre uma situação
    • Mesmo sem recompensar diretamente a interpretabilidade, as características exibem padrões de ativação esparsos que se alinham naturalmente a conceitos mais fáceis de entender por humanos
  • Como modelos de linguagem grandes representam um número enorme de conceitos, o autoencoder também precisa ser muito grande para cobrir adequadamente os conceitos de modelos de fronteira

Características em larga escala encontradas no GPT‑4

  • A OpenAI desenvolveu uma metodologia para escalar autoencoders esparsos em modelos de IA de fronteira para a faixa de dezenas de milhões de características
  • A metodologia apresenta ganhos de escala melhores do que técnicas anteriores, com propriedades de expansão suaves e previsíveis
  • Também foram introduzidas várias novas métricas para avaliar a qualidade das características
  • Com essa receita, foram treinados diversos autoencoders nas ativações do GPT‑2 small e do GPT‑4
    • Para o GPT‑4, foi treinado um autoencoder com 16 milhões de características
  • A interpretabilidade das características foi verificada visualizando os documentos em que cada característica é ativada
    • Os exemplos incluem falhas humanas, aumento de preços, X e Y, logs de treinamento, perguntas retóricas, anéis algébricos e características relacionadas à dopamine
    • No GPT‑4, também foi identificada uma característica relacionada a “expressões de que coisas, especialmente humanos, são flawed”
  • Mais características podem ser exploradas na ferramenta de visualização de características

Limitações que ainda permanecem

  • Há expectativa de que a interpretabilidade possa aumentar a confiabilidade e a capacidade de direcionamento dos modelos, mas o trabalho atual ainda está em estágio inicial
  • Muitas das características descobertas ainda são difíceis de interpretar
    • Em alguns casos, elas são ativadas sem um padrão claro
    • Em outros, aparecem ativações falsas não relacionadas ao conceito que normalmente parecem codificar
    • Ainda não existe um bom método para verificar a validade das interpretações
  • Autoencoders esparsos não capturam todo o comportamento do modelo original
    • Quando as ativações do GPT‑4 passam por um autoencoder esparso, o desempenho fica equivalente ao de um modelo treinado com cerca de 10 vezes menos computação de treino
    • Para mapear completamente os conceitos de LLMs de fronteira, talvez seja necessário escalar para bilhões ou trilhões de características
    • Mesmo com técnicas de scaling aprimoradas, essa escala continua desafiadora
  • Autoencoders esparsos conseguem encontrar características em um ponto do modelo, mas isso é apenas uma etapa para interpretar o modelo como um todo
    • Como o modelo calcula essas características
    • Como essas características são usadas depois em outras partes do modelo
    • Entender esses dois problemas exigirá muito mais trabalho

Materiais publicados e próximos passos

  • A OpenAI publicou o artigo com os experimentos e métodos
  • Também disponibilizou a coleção completa de autoencoders para GPT‑2 small e o código para utilizá-los
  • Foi publicada ainda uma ferramenta de visualização de características para examinar ao que as características do GPT‑2 e do GPT‑4 podem corresponder
  • No curto prazo, a empresa pretende testar em modelos de fronteira se as características encontradas são úteis, na prática, para o monitoramento e direcionamento do comportamento de modelos de linguagem
  • No longo prazo, o objetivo é que a interpretabilidade ofereça novas formas de inferir segurança e robustez dos modelos e aumente significativamente a confiança por meio de garantias sobre o comportamento de modelos de IA poderosos

1 comentários

 
GN⁺ 2024-06-07
Opiniões no Hacker News
  • Um dos primeiros exemplos é recurso do GPT-4: finais de frases relacionadas a aumentos de preço, mas 2 das 5 respostas não parecem ter nenhuma relação com aumento de preços
    Por exemplo, há uma frase dizendo que o preço do petróleo bruto caiu e uma frase de uma fatura de lavanderia em que o preço do contrato é mencionado
    Acho que entendi algo errado, mas fico me perguntando por que escolheram justamente esses exemplos, quando deveriam haver muitos exemplos possíveis

    • É preciso observar que a maioria dos exemplos não tem o contador destacado em verde
      O destaque em verde aparece em frases como small losses. KEEPING SCORE: The Dow Jones industrial average rose..., e as demais frases parecem servir para contrastar o quanto esse neurônio responde a um padrão específico
  • É realmente muito legal e parece um passo na direção da busca semântica profunda que eu vinha esperando
    Gostei dos exemplos de filtrar documentos pelo conceito de “aumento de preços” ou buscar conceitos de nível mais alto, como “pergunta retórica”
    Fico curioso sobre como isso se compararia a treinar ou ajustar finamente um modelo com exemplos de perguntas retóricas para encontrá-las em documentos
    Como é uma abordagem que apenas observa as ativações da rede neural, em vez de inserir uma entrada e fazer o modelo gerar uma resposta, talvez seja mais rápida ou mais precisa

    • A Exa está tentando algo assim
      Encontrei alguns resultados interessantes com essa abordagem, mas ainda não parece boa o suficiente
      https://exa.ai/search?c=all
  • Interessante, e me lembra um trabalho parecido que a Anthropic fez com o Claude 3 Sonnet
    [0] https://transformer-circuits.pub/2024/scaling-monosemanticit...

    • A página dá a entender fortemente que os autoencoders esparsos foram inventados pela OpenAI para este projeto
      É bem estranho não citarem isso na página e enterrarem as referências dentro do artigo
    • O método é o mesmo; está mais para a OpenAI aplicar a pesquisa da Anthropic ao seu próprio modelo
    • Houve uma conversa de que treinar isso exigiu recursos computacionais quase no mesmo nível do treinamento do modelo original
  • É interessante que este resultado tenha saído menos de 3 semanas depois de “Mapping the Mind of a Large Language Model”, da Anthropic
    Essas tentativas são realmente promissoras e, embora ainda se ouça com frequência que “não sabemos nada sobre como LLMs ou deep learning funcionam”, olhando para pesquisas como esta isso parece mais uma generalização exagerada
    Fico me perguntando se isso foi lançado meio às pressas em resposta ao anúncio da Anthropic e à saída de Jan Leike da OpenAI
    O link do artigo nem vai para o Arxiv, e a profundidade da análise também parece muito menor, mas pode não ter relação

    • O próprio texto repete frases como “no momento, não sabemos como interpretar a atividade neural dentro de modelos de linguagem”, “ao contrário da maioria das criações humanas, não entendemos bem o funcionamento interno das redes neurais” e “as redes não são bem compreendidas e não podem ser decompostas facilmente em partes identificáveis”
      O motivo pelo qual as pessoas dizem que atualmente não sabemos por que os modelos produzem determinadas saídas é, como o texto afirma claramente, que de fato ainda não sabemos
    • O plano era divulgar o artigo nesta época independentemente dos outros acontecimentos mencionados
      Acho que dizer que ainda sabemos muito pouco sobre como LLMs funcionam continua sendo, em geral, correto
      Autoencoders esparsos talvez mudem isso um dia, mas ainda há um longo caminho pela frente
    • Acho que pesquisas como esta, na verdade, reforçam o ponto de que nossa compreensão do funcionamento interno ainda é muito pequena
      O post do blog também repete que este trabalho está em estágio inicial e tem muitas limitações
    • Não quero procurar a fonte, mas alguém no Twitter descobriu que o primeiro commit foi há 6 meses
      Provavelmente todo mundo estava no mesmo clima em San Francisco, e essa tendência já vinha se espalhando pela indústria como um todo
    • O fato de o título do artigo sugerir que LLMs têm uma mente não me parece um bom sinal sobre os autores
      A conversa sem sentido sobre “segurança” também continua
      Seria bom se mostrassem o trabalho de forma reprodutível, mas, como propaganda, não está ruim
  • Em outro exemplo, parece que um documento que era uma explicação científica de anatomia reprodutiva foi classificado como conteúdo sexual
    O link do conceito está aqui [aviso de conteúdo]: https://openaipublic.blob.core.windows.net/sparse-autoencode...
    DocID: 191632

  • Fico curioso sobre como esse método é diferente de, ou melhora em relação a, aplicar algo como SHAP[0][1] a modelos
    A frase da primeira linha, “no momento, não sabemos como interpretar a atividade neural dentro de modelos de linguagem”, me parece simplesmente errada
    [0] https://github.com/shap/shap
    [1] https://en.wikipedia.org/wiki/Shapley_value#In_machine_learn...

    • Acho que SHAP é algo bem separado
      A análise de Shapley é essencialmente uma metodologia de teoria dos jogos, é agnóstica ao modelo e apenas observa quanto partes individuais da entrada contribuem para uma previsão específica; ela não trata de como o modelo funciona internamente para produzir a saída
      Se você tiver uma caixa-preta invocável, consegue calcular valores de Shapley ou aproximações deles, mas isso não explica como ou por que o modelo funciona internamente
  • Alguém consegue explicar de forma simples por que isso é importante? Não precisa ser no nível de uma criança de 5 anos, mas estou curioso em termos básicos

    • IAs baseadas em LLM têm muitas “características”, e isso é, em certa medida, parecido com “conceitos”
      Por exemplo, isso pode incluir desde o conceito de apóstrofo dentro da palavra don't até o padrão de que, no contexto da história inicial dos EUA, depois de "George Wash" normalmente vem "ington"
      Dentro da rede neural de um LLM, essas coisas são mapeadas para caminhos que parecem circuitos de software
      Como não entendemos bem como essas características são criadas dentro do LLM, quais circuitos são ativados ao gerar a saída e por que ele segue esses circuitos, fica difícil depurar essa parte e também melhorar o modelo
      Quando LLMs/IA avançarem o suficiente, vamos querer identificar se estão nos enganando intencionalmente, mas hoje não conseguimos fazer isso
      Por isso, a área que tenta entender o que realmente acontece dentro da rede neural no processo de criar conceitos e gerar saídas é a interpretabilidade
      OpenAI, DeepMind e Anthropic encontraram formas de olhar para os circuitos internos dos LLMs e revelar algumas características
      Depois de fazer uma pergunta ao modelo, eles observam quais partes dos circuitos internos “acendem” e, como etapa de validação, removem circuitos para verificar se aquela característica passa a ser menos usada na resposta
      Os gráficos e as palavras destacadas são representações visuais de conceitos nos quais se pode ter bastante confiança
      Por exemplo, o conceito de “AND”, que conecta duas partes de uma frase, destaca a palavra “AND”
      Se você tem interesse em interpretabilidade, acho que Neel Nanda é a melhor fonte
      Mas a abordagem é diferente da metodologia da OpenAI tratada neste texto: https://www.neelnanda.io/mechanistic-interpretability
    • Conceitos de alto nível armazenados em modelos grandes, como modelos de difusão ou transformers, normalmente são difíceis de separar uns dos outros, e o modelo é quase uma caixa-preta
      Há muita pesquisa tentando enxergar o que o modelo sabe, e este é mais um avanço nessa direção
      Isso permite separar conceitos com mais facilidade
      Com isso, surge a possibilidade de analisar o conhecimento dentro do modelo e adicionar, remover ou alterar a importância de conceitos específicos, afetando menos conceitos não relacionados
      Ainda assim, a precisão que se pode obter com esta técnica específica é sempre questionável, e alguns conceitos são próximos demais para serem separados, então não será perfeito
    • Segundo a própria resposta do ChatGPT, este texto trata de como pesquisadores usam autoencoders esparsos para identificar e interpretar características centrais dentro de modelos de linguagem complexos, como o GPT-4, tornando seu funcionamento interno mais compreensível
      Esse tipo de avanço ajuda a aumentar a segurança e a confiabilidade da IA ao dividir o processo de tomada de decisão do modelo em partes mais simples e interpretáveis por humanos
    • No geral, é uma reprodução do trabalho feito pela Anthropic, então não há nada fundamentalmente novo
      O que fizeram aqui foi encontrar padrões dentro do GPT-4 que correspondem a determinados conceitos identificáveis
      Esse trabalho parece ter sido feito pela equipe de segurança da OpenAI, em grande parte desmantelada, e também inclui os nomes dos colíderes que saíram recentemente, Ilya e Jan Leike
      Nominalmente, o objetivo é segurança: permitir reforçar ou suprimir a ativação de certos conceitos durante a execução do modelo
      A demonstração em que a Anthropic fez o modelo ficar obcecado pela Golden Gate Bridge é um exemplo disso: https://www.anthropic.com/news/golden-gate-claude
      Esse tipo de trabalho parece ter potencial de uso funcional, além de segurança, porque permite controlar o modelo de determinadas maneiras
  • Isso quer dizer que pode se tornar uma boa prática publicar também um autoencoder treinado sobre uma rede neural para explicar a saída dessa rede neural?
    Parece que seria útil se todos os modelos públicos do Hugging Face tivessem esse tipo de acessório

    • Esse tipo de encoder provavelmente seria dependente de um modelo específico
  • Isso é como uma fMRI para redes neurais?
    Seria possível ver quais áreas acendem de acordo com o tema
    Também fico curioso se seria possível acoplar uma rede neural de avaliação que avaliasse automaticamente as áreas ativadas
    Parece algo possivelmente viável, assim como a IA conseguiu reconstruir o que um paciente estava vendo apenas a partir de exames de fMRI

  • Uma das funcionalidades esperadas nesse tipo de pesquisa é identificar hotspots usados durante a inferência
    Como em uma máquina virtual, talvez seja possível cachear essas partes total ou parcialmente para reduzir o tempo de resposta e também diminuir os ciclos de computação necessários