notícias

O grande modelo tem sua própria compreensão da linguagem! Artigo do MIT revela grande processo de pensamento de modelo ICML 24 |

2024-08-17

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

  • Crecy vem do Templo Aofei
    Qubits | Conta pública QbitAI

Modelos grandes podem formar sua própria compreensão do mundo real!

Um estudo do MIT descobriu que à medida que um modelo se torna mais capaz, a sua compreensão da realidade pode ir além da simples imitação.

Por exemplo, se o modelo grande nunca sentiu um cheiro, isso significa que ele não consegue entender os cheiros?

A pesquisa descobriu que ele pode simular espontaneamente alguns conceitos para facilitar a compreensão.

Esta pesquisa significa queEspera-se que grandes modelos forneçam uma compreensão mais profunda da linguagem e do mundo no futuro, o artigo foi aceito pelo ICML 24.



Os autores deste artigo são o estudante de doutorado chinês Charles Jin e seu supervisor, Professor Martin Rinard, do Laboratório de Computação e Inteligência Artificial do MIT (CSAIL).

Durante o estudo, o autor pediu ao modelo grande que aprendesse apenas o texto do código e descobriu que o modelo gradualmente compreendeu o significado por trás dele.

O professor Rinard disse que esta pesquisa visa diretamente uma questão central da inteligência artificial moderna——

As capacidades dos grandes modelos surgem simplesmente de correlações estatísticas em grande escala ou geram uma compreensão significativa dos problemas do mundo real que pretendem resolver?


△Fonte: site oficial do MIT

Ao mesmo tempo, esta pesquisa também gerou muita discussão.

Alguns internautas disseram que, embora grandes modelos possam compreender a linguagem de forma diferente dos humanos, este estudo pelo menos mostra que o modelo faz mais do que apenas memorizar dados de treinamento.



Deixe grandes modelos aprenderem código puro

Para explorar se grandes modelos podem produzir compreensão em nível semântico, o autor construiu umCódigo do programa e sua entrada e saída correspondentesconjunto de dados sintéticos.

Esses programas de código são escritos usando um programa chamadoCarlosEle foi escrito em uma linguagem de ensino e é usado principalmente para realizar a tarefa de navegação de robôs em um mundo de grade 2D.

Este mundo de grade consiste em grades 8x8, cada grade pode conter obstáculos, marcadores ou espaços abertos. O robô pode mover-se entre grades e realizar operações como colocar/retirar marcadores.

A linguagem Karel contém cinco operações primitivas - mover (um passo à frente), turnLeft (girar 90 graus à esquerda), turnRight (girar 90 graus à direita), pickMarker (pegar marcador), putMarker (marcador de lugar). operações primitivas. Uma sequência de operações.



Os autores geraram aleatoriamente um conjunto de treinamento contendo 500.000 programas Karel, cada programa com duração entre 6 e 10.

Cada amostra de treinamento consiste em três partes: 5 estados de entrada, 5 estados de saída e código de programa completo. Os estados de entrada e saída são codificados em strings em um formato específico.

Usando esses dados, os autores treinaram uma variante do modelo CodeGen da arquitetura padrão do Transformer.

Durante o processo de treinamento, o modelo pode acessar as informações de entrada e saída e o prefixo do programa em cada amostra, masIncapaz de ver a trajetória completa e os estados intermediários da execução do programa

Além do conjunto de treinamento, o autor também construiu um conjunto de testes contendo 10.000 amostras para avaliar o desempenho de generalização do modelo.

Para estudar se o modelo de linguagem compreende a semântica por trás do código e ao mesmo tempo compreende profundamente o "processo de pensamento" do modelo, o autor projetou uma combinação de detectores incluindo um classificador linear e um MLP de camada oculta única/dupla.

A entrada do detector é o estado oculto do modelo de linguagem no processo de geração de tokens de programa, e o alvo de previsão é o estado intermediário de execução do programa, incluindo a orientação do robô, deslocamento em relação à posição inicial e se ele está voltado para para frente. Em direção ao obstáculo (obstáculo) essas três características.

Durante o processo de treinamento do modelo generativo, o autor registrou os três recursos acima a cada 4.000 etapas e também registrou o estado oculto do modelo generativo para formar um conjunto de dados de treinamento para o detector.



Três estágios de aprendizagem de grandes modelos

Ao observar como a diversidade, a perplexidade e outros indicadores dos programas gerados pelo modelo de linguagem mudam com o processo de formação, o autor divide o processo de formação em três etapas -

  • Estágio de balbucio: O programa de saída é altamente repetitivo e a precisão do detector é instável.
  • Estágio de aquisição gramatical: A diversidade do programa aumenta rapidamente, a precisão da geração aumenta ligeiramente e a confusão diminui, indicando que o modelo de linguagem adquiriu a estrutura sintática do programa.
  • Estágio de aquisição semântica: O grau de diversidade do programa e domínio da estrutura sintática é estável, mas a precisão da geração e o desempenho do detector são bastante melhorados, indicando que o modelo de linguagem adquiriu a semântica do programa.

Especificamente, o estágio Babbling ocupa os primeiros 50% de todo o processo de treinamento. Por exemplo, quando o treinamento atinge cerca de 20%, independentemente da especificação inserida, o modelo gerará apenas um programa fixo - "pickMarker" repetido 9 vezes.

A fase de aquisição da gramática está entre 50% e 75% do processo de treinamento. A perplexidade do modelo no programa Karel caiu significativamente, indicando que o modelo de linguagem começou a se adaptar melhor às características estatísticas do programa Karel, mas a precisão do programa Karel. o programa gerado não melhorou significativamente (de cerca de 10% a cerca de 25%), ainda não consegue concluir a tarefa com precisão.

O estágio de aquisição semântica é dos últimos 25%. A precisão do programa melhorou drasticamente, de cerca de 25% para mais de 90%. O programa gerado pode completar com precisão a tarefa dada.



Outras experiências descobriram que o detector pode não apenas prever o intervalo de tempo de sincronização no tempo t, mas tambémPreveja o status de execução do programa em etapas subsequentes

Por exemplo, suponha que o modelo generativo gere o token “move” no tempo t e irá gerar “turnLeft” no tempo t+1.

Ao mesmo tempo, o estado do programa no tempo t é que o robô está voltado para o norte e está localizado nas coordenadas (0,0), enquanto o robô no tempo t+1 será que o robô estará voltado para o oeste, com a posição inalterado.

Se o detector puder prever com sucesso, a partir do estado oculto do modelo de linguagem no tempo t, que o robô estará voltado para o oeste no tempo t+1, isso significa que antes de gerar "turnLeft", o estado oculto já contém a mudança de estado causada por este informações de operação.

Esse fenômeno mostra que o modelo não possui apenas uma compreensão semântica da parte do programa gerada, mas a cada etapa da geração já antecipou e planejou o conteúdo a ser gerado a seguir, apresentando uma visão preliminarHabilidades de raciocínio voltadas para o futuro

Mas esta descoberta trouxe novas questões para esta pesquisa——

A melhoria na precisão observada no experimento é realmente uma melhoria no modelo generativo ou é o resultado da própria inferência do detector?

Para sanar esta dúvida, o autor acrescentouExperimento de intervenção de detecção semântica



A ideia básica do experimento é alterar as regras de interpretação semântica das operações do programa, que são divididas em dois métodos: “flip” e “adversarial”.

"Flip" é uma inversão forçada do significado da instrução. Por exemplo, "turnRight" é interpretado à força como "virar à esquerda". No entanto, apenas "turnLeft" e "turnRight" podem realizar esse tipo de reversão;

"adversarial" embaralha aleatoriamente a semântica correspondente a todas as instruções. O método específico é mostrado na tabela abaixo.



Se o estado oculto do modelo generativo codifica apenas a estrutura sintática do programa em vez da informação semântica, então o detector ainda deverá ser capaz de extrair a informação semântica alterada do estado oculto com desempenho equivalente.

Pelo contrário, se o desempenho do detector cair significativamente, significa que a melhoria de desempenho mostrada pelo detector é de fato porque o estado oculto do modelo generativo codifica a semântica real.

Resultados experimentais mostram que o desempenho do detector cai significativamente sob ambas as novas semânticas.

É especialmente óbvio no modo “adversarial”, o que também é consistente com a característica de que a semântica neste modo é significativamente diferente da semântica original.



Estes resultados excluem fortemente a possibilidade de o detector “aprender o mapeamento semântico por si mesmo” e confirmar ainda que o modelo generativo de fato capta o significado do código.

Endereço do papel:
https://icml.cc/virtual/2024/poster/34849
Links de referência:
[1]https://news.mit.edu/2024/llms-develop-own-understanding-of-reality-as-language-abilities-improve-0814
[2]https://www.reddit.com/r/LocalLLaMA/comments/1esxkin/llms_develop_their_own_understanding_of_reality/