2 pontos por GN⁺ 2024-02-19 | 1 comentários | Compartilhar no WhatsApp

Representation Engineering no Mistral-7B: viagem ácida

  • O que é um vetor de controle?

    • O vetor de controle é um vetor (lista de vetores por camada) que pode ser aplicado às ativações do modelo durante a inferência para controlar o comportamento do modelo sem precisar de prompt adicional.
    • Usando o mesmo prompt e modelo, ele gera resultados diferentes dependendo de se o vetor de controle é aplicado e da sua intensidade.
  • Não é difícil criar vetores de controle

    • Constrói-se um conjunto de dados com pares de prompts contrastantes usando PCA, executa-se o modelo e coletam-se os estados ocultos de cada camada; depois, usa-se PCA de componente única para obter o vetor de controle de cada camada.
    • Esse processo leva apenas algumas linhas de código e cerca de 1 minuto.
  • O que é possível fazer com vetores de controle

    • Com o vetor de controle, é possível colocar o modelo de IA em estado de 'viagem ácida' ou controlá-lo para diferentes estados, como 'preguiça', 'trabalho diligente' ou 'criatividade'.
    • Cada vetor de controle pode ser treinado em poucos minutos e pode ser testado diretamente em notebooks de experimento no GitHub.
  • Vetores de controle vs. engenharia de prompt

    • Vetores de controle e engenharia de prompt são abordagens distintas, embora compartilhem pontos de sobreposição.
    • O vetor de controle pode gerar resultados reproduzíveis com engenharia de prompt, porém é mais fácil ajustar sua força.

Opinião do GN⁺

  • Importância dos vetores de controle: Os vetores de controle são uma ferramenta poderosa para ajustar com precisão o comportamento de modelos de IA, abrindo novas possibilidades além dos limites da engenharia de prompt.
  • Eficiência e acessibilidade: Com vetores de controle, o usuário consegue ajustar facilmente o comportamento do modelo sem montar prompts complexos, o que pode aumentar bastante a usabilidade da IA.
  • Uso criativo: Usar vetores de controle para colocar a IA em estado de 'viagem ácida' torna viáveis experimentos criativos e habilita uma nova dimensão de abordagem experimental na pesquisa em IA.

1 comentários

 
GN⁺ 2024-02-19
Comentários do Hacker News
  • Fico quase maluco ao imaginar o impacto que essa tecnologia pode causar. Minha compreensão pode não estar totalmente correta, mas parece significar que dá para armazenar "vetores de controle" personalizados para ajustar a saída do ChatGPT de forma mais próxima das preferências individuais. Isso pode levar a entretenimento de IA personalizado e, nesse mercado, podem surgir fortes efeitos de rede, tanto individuais quanto globais. Isso sugere a possibilidade de uma única empresa grande monopolizar todos os mercados no futuro.
  • O texto está bem escrito e interessante. Gostaria que fossem compartilhadas referências e posts de blog para entender melhor os LLMs.
  • Os vetores de controle me lembram hormônios humanos. Eles mudam uma grande parte do comportamento do modelo de uma só vez. Acho que em até 10 anos veremos psiquiatras de IA prescrevendo suplementos de vetor de controle de felicidade para assistentes de companhia.
  • Esta é a primeira vez que vejo o LLM resumido dessa forma, e gostei dessa abordagem.
  • O artigo é divertido e oferece um bom contraponto ao post recente "You Sound Like a Bot" sobre IA se tornando monótona. Em um aspecto menos sério, encontrar um vetor de autoconsciência é um desafio para o escritor de ficção que sabe que isso causaria problemas para a humanidade.
  • Isso é semelhante ao ajuste de vieses, concorrente do LoRA. É possível obter um bom adaptador apenas ajustando os vetores adicionais em cada ativação de camada linear.
  • O artigo é excelente. Fico com uma pergunta sobre por que integrar vetors de controle em todas as camadas da rede neural. Como cada vetor afeta todas as camadas por onde passa, isso não traz risco de distorcer demais a representação dos dados?
  • O artigo é muito bom. O uso de vetores de controle muda o julgamento do modelo sobre o comportamento das outras pessoas, não o comportamento do próprio modelo. É o mesmo vetor de honestidade gerado ao pedir ao modelo para agir honestamente ou desonestamente.
  • No aspecto de inferência (adicionar algo a todas as camadas), é muito parecido com LoRA. Pergunto se um vetor de controle pode ser codificado como LoRA e usado no framework de inferência existente sem grandes problemas, ou se eu entendi errado.
  • Tenho dúvida se é possível aplicar vários vetores simultaneamente, por exemplo combinações como alucinatório e triste, honesto e autoconsciente, preguiçoso e criativo.