2 points par GN⁺ 2024-06-07 | 1 commentaires | Partager sur WhatsApp
  • OpenAI a présenté une méthode scalable pour mieux comprendre l’intérieur des modèles de langage, en décomposant les représentations de GPT‑4 en 16 millions de caractéristiques
  • L’outil clé est un autoencodeur parcimonieux, une approche qui vise à relier un petit nombre de schémas d’activation influençant la sortie à des concepts compréhensibles par les humains
  • La nouvelle méthode a montré une scaling plus prévisible que les techniques existantes et a été utilisée pour entraîner plusieurs autoencodeurs sur les activations de GPT‑2 small et de GPT‑4
  • Les limites sont également claires : de nombreuses caractéristiques restent difficiles à interpréter, et les activations de GPT‑4 passées par un autoencodeur parcimonieux n’atteignent que le niveau de performance d’un modèle entraîné avec environ 10 fois moins de calcul d’entraînement
  • L’article, le code et l’outil de visualisation des caractéristiques publiés constituent une base pour les recherches futures ; à court terme, OpenAI prévoit de vérifier leur utilité pour le monitoring et le pilotage du comportement des modèles de langage

Pourquoi il est difficile d’interpréter l’intérieur des réseaux neuronaux

  • Les méthodes permettant de comprendre l’activité neuronale interne des modèles de langage actuels ne sont pas encore suffisamment établies
  • Pour des artefacts comme une voiture, il est possible de concevoir, d’évaluer et de réparer à partir des spécifications des pièces ; mais un réseau neuronal n’est pas composé de pièces conçues directement, c’est le résultat d’un algorithme d’apprentissage
  • Pour cette raison, un réseau neuronal ne se décompose pas facilement en pièces identifiables, et il est difficile d’aborder la sûreté de l’IA comme on raisonnerait sur la sécurité d’une voiture
  • Pour interpréter les réseaux neuronaux, il faut d’abord trouver des unités constitutives utiles permettant d’expliquer le calcul neuronal

L’approche par autoencodeur parcimonieux

  • Les activations internes d’un modèle de langage s’allument selon des motifs difficiles à prévoir et semblent représenter plusieurs concepts simultanément
  • Les activations sont denses : pour chaque entrée, de nombreux éléments s’activent ensemble
  • Dans le monde réel, seuls de petits sous-ensembles de concepts sont pertinents dans un contexte donné ; la parcimonie est donc importante
  • Un autoencodeur parcimonieux est une méthode permettant d’identifier le petit nombre de caractéristiques importantes pour produire une sortie donnée
    • On espère une structure similaire au petit nombre de concepts qu’une personne garde en tête lorsqu’elle raisonne sur une situation
    • Même sans récompenser directement l’interprétabilité, les caractéristiques présentent des schémas d’activation parcimonieux qui s’alignent naturellement avec des concepts faciles à comprendre pour les humains
  • Les grands modèles de langage représentent un très grand nombre de concepts ; pour couvrir suffisamment les concepts d’un modèle frontière, l’autoencodeur doit donc lui aussi devenir très grand

Des caractéristiques à grande échelle trouvées dans GPT‑4

  • OpenAI a développé une méthodologie permettant de faire passer les autoencodeurs parcimonieux à l’échelle de dizaines de millions de caractéristiques dans des modèles d’IA frontière
  • Cette méthodologie offre de meilleurs gains de scaling que les techniques existantes et présente des propriétés de passage à l’échelle régulières et prévisibles
  • Plusieurs nouveaux indicateurs ont également été introduits pour évaluer la qualité des caractéristiques
  • Avec cette recette, OpenAI a entraîné divers autoencodeurs sur les activations de GPT‑2 small et de GPT‑4
    • Pour GPT‑4, OpenAI a entraîné un autoencodeur à 16 millions de caractéristiques
  • L’interprétabilité des caractéristiques a été vérifiée en visualisant les documents dans lesquels une caractéristique donnée s’active
    • Les exemples incluent des caractéristiques liées aux défauts humains, aux hausses de prix, à X et Y, aux journaux d’entraînement, aux questions rhétoriques, aux anneaux algébriques et à la dopamine
    • Dans GPT‑4, une caractéristique liée à « l’expression selon laquelle des choses, en particulier les humains, sont flawed » a aussi été identifiée
  • D’autres caractéristiques peuvent être explorées dans l’outil de visualisation des caractéristiques

Les limites qui restent

  • On espère que l’interprétabilité pourra améliorer la fiabilité des modèles et leur pilotabilité, mais ce travail en est encore à un stade précoce
  • Beaucoup de caractéristiques découvertes restent difficiles à interpréter
    • Certaines s’activent sans motif clair
    • Dans certains cas, des fausses activations apparaissent, sans lien avec le concept qu’elles semblent normalement encoder
    • Il n’existe pas encore de bonne méthode pour vérifier la validité des interprétations
  • Les autoencodeurs parcimonieux ne capturent pas tous les comportements du modèle d’origine
    • Lorsque les activations de GPT‑4 passent par un autoencodeur parcimonieux, les performances obtenues sont équivalentes à celles d’un modèle entraîné avec environ 10 fois moins de calcul d’entraînement
    • Pour cartographier entièrement les concepts d’un LLM frontière, il pourrait être nécessaire de passer à des milliards, voire des milliers de milliards de caractéristiques
    • Même avec des techniques de scaling améliorées, une telle échelle reste difficile à atteindre
  • Un autoencodeur parcimonieux peut trouver des caractéristiques en un point du modèle, mais ce n’est qu’une étape vers l’interprétation de l’ensemble du modèle
    • Comment le modèle calcule ces caractéristiques
    • Comment ces caractéristiques sont ensuite utilisées dans les parties suivantes du modèle
    • Comprendre ces deux problèmes demandera beaucoup plus de travail

Ressources publiées et prochaines étapes

  • OpenAI a publié un article décrivant les expériences et la méthode
  • OpenAI fournit l’ensemble complet des autoencodeurs pour GPT‑2 small ainsi que le code pour les utiliser
  • OpenAI a également publié un outil de visualisation des caractéristiques permettant d’examiner à quoi les caractéristiques de GPT‑2 et GPT‑4 peuvent correspondre
  • À court terme, OpenAI prévoit de tester sur des modèles frontière si les caractéristiques découvertes sont pratiquement utiles pour le monitoring et le pilotage du comportement des modèles de langage
  • À long terme, l’objectif est que l’interprétabilité fournisse de nouvelles façons de raisonner sur la sécurité et la robustesse des modèles, et renforce fortement la confiance grâce à des garanties sur le comportement de puissants modèles d’IA

1 commentaires

 
GN⁺ 2024-06-07
Commentaires sur Hacker News
  • L’un des premiers exemples est GPT-4 feature: ends of phrases related to price increases, mais 2 réponses sur 5 ne semblent avoir aucun rapport avec une hausse des prix
    Par exemple, il y a une phrase disant que le prix du pétrole brut a baissé, ou une phrase de facture de blanchisserie mentionnant un prix contractuel
    J’ai l’impression qu’ils ont mal compris quelque chose, mais comme il devait y avoir beaucoup d’exemples possibles, je me demande pourquoi ils ont choisi précisément ceux-là

    • Il faut noter que la plupart des exemples n’ont pas de compteur de surbrillance verte
      La surbrillance verte apparaît dans des phrases comme small losses. KEEPING SCORE: The Dow Jones industrial average rose..., et les autres phrases semblent plutôt servir de contraste pour montrer à quel point ce neurone réagit à un motif spécifique
  • C’est vraiment génial, et ça donne l’impression d’aller vers le type de recherche sémantique profonde qu’on attendait
    J’aime bien les exemples où l’on filtre des documents selon le concept de « hausse de prix », ou où l’on cherche des concepts de plus haut niveau comme les « questions rhétoriques »
    Je me demande comment cela se comparerait à une approche consistant à entraîner ou affiner le modèle sur des exemples de questions rhétoriques pour les retrouver dans des documents
    Au lieu d’envoyer une entrée et de générer une réponse, cette méthode ne regarde que les activations du réseau, donc elle pourrait être plus rapide ou plus précise

    • Exa essaie ce genre de chose
      J’y ai trouvé quelques résultats intéressants de cette manière, mais je n’ai pas encore l’impression que ce soit suffisamment bon
      https://exa.ai/search?c=all
  • Intéressant, et ça me rappelle un travail similaire qu’Anthropic avait fait avec Claude 3 Sonnet
    [0] https://transformer-circuits.pub/2024/scaling-monosemanticit...

    • La page web donne fortement l’impression de suggérer qu’OpenAI a inventé les autoencodeurs creux pour ce projet
      C’est assez étrange qu’ils ne citent pas la source sur la page web et qu’ils aient caché la référence dans l’article
    • La méthode est la même, et c’est plus proche d’une application par OpenAI de la recherche d’Anthropic à son propre modèle
    • Il a été dit que l’entraînement de ceci a nécessité un niveau de ressources de calcul presque comparable à celui de l’entraînement du modèle d’origine
  • Il est intéressant que ce résultat soit sorti moins de trois semaines après « Mapping the Mind of a Large Language Model » d’Anthropic
    Ce genre d’essais est vraiment prometteur, et pourtant on entend encore souvent dire qu’« on ne sait absolument pas comment fonctionnent les LLM ou le deep learning », mais quand on voit ce type de recherche, cela ressemble à une généralisation excessive
    Je me demande si cela a été publié un peu dans la précipitation en réaction à l’annonce d’Anthropic et au départ de Jan Leike d’OpenAI
    Le lien vers l’article ne va même pas vers arXiv et l’analyse semble bien plus superficielle, mais c’est peut-être sans rapport

    • Le texte lui-même répète des phrases comme « actuellement, nous ne savons pas comment interpréter l’activité neuronale à l’intérieur des modèles de langage », « contrairement à la plupart des créations humaines, nous ne comprenons pas bien le fonctionnement interne des réseaux neuronaux » et « le réseau est mal compris et ne peut pas être facilement décomposé en parties identifiables »
      Si les gens disent qu’on ne sait pas actuellement pourquoi le modèle produit certaines sorties, c’est parce que, comme le texte l’indique clairement, on ne le sait effectivement pas encore
    • Indépendamment des autres événements mentionnés, il était prévu de publier l’article à cette période
      Dire qu’on ne sait encore presque rien du fonctionnement des LLM reste à mon avis globalement exact
      Les autoencodeurs creux pourraient peut-être changer cela un jour, mais il reste encore beaucoup de chemin à parcourir
    • Je pense au contraire que ce type de recherche renforce l’idée que notre compréhension du fonctionnement interne est encore très limitée
      Le billet de blog répète aussi que ce travail n’en est qu’à ses débuts et comporte de nombreuses limites
    • C’est pénible de retrouver la source, mais quelqu’un sur Twitter a trouvé que le premier commit remontait à il y a 6 mois
      Ils baignaient probablement tous dans la même ambiance à San Francisco, et cette tendance semblait déjà se diffuser dans l’ensemble du secteur
    • Le fait que le titre de l’article suggère qu’un LLM aurait un esprit ne me paraît pas être un très bon signal de la part des auteurs
      Il y a aussi beaucoup de bavardage creux autour de la « sécurité »
      Ce serait bien qu’ils montrent le travail pour qu’il soit reproductible, mais comme publicité, ce n’est pas si mal
  • Dans un autre exemple, ils semblent avoir classé comme contenu sexuel un document qui ressemble à une explication scientifique de l’anatomie reproductive
    Voici le lien vers le concept [content warning]: https://openaipublic.blob.core.windows.net/sparse-autoencode...
    DocID: 191632

  • Je me demande en quoi cette approche diffère de l’application de quelque chose comme SHAP[0][1] à un modèle, ou en quoi elle l’améliore
    La phrase de la première ligne, « actuellement, nous ne savons pas comment interpréter l’activité neuronale à l’intérieur des modèles de langage », me semble simplement fausse
    [0] https://github.com/shap/shap
    [1] https://en.wikipedia.org/wiki/Shapley_value#In_machine_learn...

    • Je pense que SHAP est quelque chose d’assez distinct
      L’analyse de Shapley est fondamentalement une méthodologie issue de la théorie des jeux et agnostique au modèle, qui se contente d’examiner dans quelle mesure chaque partie de l’entrée contribue à une prédiction donnée, mais ne traite pas de la façon dont le modèle fonctionne en interne pour produire sa sortie
      Tant qu’on dispose d’une boîte noire interrogeable, on peut calculer des valeurs de Shapley ou leurs approximations, mais cela n’explique pas comment ni pourquoi le modèle fonctionne en interne pour autant
  • Quelqu’un pourrait expliquer simplement pourquoi c’est important ? Pas forcément au niveau d’un enfant de 5 ans, mais avec des mots de base, je suis curieux.

    • Les IA basées sur des LLM ont beaucoup de « caractéristiques », ce qui ressemble dans une certaine mesure à des « concepts ».
      Cela peut aller, par exemple, du concept d’apostrophe dans le mot don't jusqu’au schéma selon lequel, dans le contexte de l’histoire des débuts des États-Unis, "George Wash" est généralement suivi de "ington".
      Dans le réseau neuronal d’un LLM, ces éléments sont mappés sur des chemins qui ressemblent à des circuits logiciels.
      Comme on comprend mal comment ces caractéristiques sont produites à l’intérieur du LLM, quels circuits s’activent au moment de produire une sortie, et pourquoi ce sont ces circuits qui sont suivis, il est difficile de déboguer cette partie et d’améliorer le modèle.
      Si les LLM/IA deviennent suffisamment avancés, on voudra pouvoir identifier s’ils essaient délibérément de nous tromper, mais actuellement ce n’est pas possible.
      C’est pourquoi le domaine qui cherche à comprendre ce qui se passe réellement dans le réseau neuronal quand des concepts sont créés et produits s’appelle l’interprétabilité.
      OpenAI, DeepMind et Anthropic ont trouvé des moyens d’observer les circuits internes des LLM et de faire apparaître certaines caractéristiques.
      On pose une question au modèle, puis on regarde quelles parties du circuit interne « s’allument » et, pour vérifier, on retire le circuit afin de voir si cette caractéristique est moins utilisée dans la réponse.
      Les graphiques et les mots mis en évidence sont des représentations visuelles de concepts dont on peut être assez sûr.
      Par exemple, le concept de « AND » qui relie deux parties d’une phrase met en évidence le mot « AND ».
      Si le sujet de l’interprétabilité t’intéresse, Neel Nanda est probablement la meilleure source.
      En revanche, son approche diffère de la méthodologie d’OpenAI abordée dans cet article : https://www.neelnanda.io/mechanistic-interpretability
    • Les concepts de haut niveau stockés dans les grands modèles, comme les modèles de diffusion ou les transformers, sont en général difficiles à séparer les uns des autres, et le modèle reste presque une boîte noire.
      Beaucoup de recherches visent à mieux voir ce que sait réellement un modèle, et c’est une avancée supplémentaire dans cette direction.
      Cela permet de séparer plus facilement les concepts.
      On pourrait ainsi analyser les connaissances présentes dans le modèle et, potentiellement, ajouter, supprimer ou modifier l’importance de certains concepts tout en affectant moins les concepts non liés.
      Cela dit, on peut toujours douter du niveau de précision atteignable avec cette technique précise, et certains concepts sont probablement trop proches pour être séparés proprement, donc ce ne sera pas parfait.
    • D’après la réponse de ChatGPT elle-même, cet article explique comment les chercheurs utilisent des autoencodeurs clairsemés pour identifier et interpréter les caractéristiques clés dans des modèles de langage complexes comme GPT-4, afin de rendre leur fonctionnement interne plus compréhensible.
      Ce progrès pourrait améliorer la sûreté et la fiabilité de l’IA en décomposant le processus de décision du modèle en éléments plus simples et interprétables par l’humain.
    • Globalement, c’est une reprise du travail fait par Anthropic, donc il n’y a rien de fondamentalement nouveau.
      Ce qui a été fait ici consiste à trouver, à l’intérieur de GPT-4, des motifs correspondant à certains concepts identifiables.
      Ce travail semble avoir été mené par l’équipe sécurité d’OpenAI aujourd’hui en grande partie démantelée, et on y voit aussi les noms d’Ilya et de Jan Leike, les co-responsables récemment partis.
      Officiellement, l’objectif est la sécurité : il s’agit de pouvoir renforcer ou inhiber l’activation de certains concepts pendant l’exécution du modèle.
      La démonstration d’Anthropic où le modèle devient obsédé par le Golden Gate Bridge en est un exemple : https://www.anthropic.com/news/golden-gate-claude
      Ce type de travail semble avoir un intérêt non seulement pour la sécurité, mais aussi d’un point de vue fonctionnel, puisqu’il suggère qu’on peut contrôler le modèle d’une certaine manière.
  • Est-ce que cela voudrait dire que publier aussi un autoencodeur entraîné sur le réseau neuronal pour expliquer sa sortie pourrait devenir une bonne pratique ?
    Ce serait peut-être utile si tous les modèles publics de Hugging Face avaient ce genre d’élément annexe.

    • Un tel encodeur serait probablement spécifique à un modèle donné.
  • C’est une sorte de fMRI pour réseaux neuronaux ?
    En quelque sorte, on pourrait voir quelles zones s’allument selon le sujet.
    Je me demande aussi s’il serait possible d’ajouter un réseau neuronal d’évaluation chargé d’évaluer automatiquement les zones activées.
    Cela semble potentiellement comparable au fait qu’une IA ait pu reconstruire ce qu’un patient regardait à partir du seul scan fMRI.

  • L’une des fonctions attendues de ce type de recherche est d’identifier les hotspots utilisés pendant le raisonnement.
    Comme avec une machine virtuelle, on pourrait peut-être mettre en cache tout ou partie de ces zones afin de réduire le temps de réponse et le nombre de cycles de calcul nécessaires.