1 points par GN⁺ 2024-10-27 | 1 commentaires | Partager sur WhatsApp
  • Entropix est un projet qui cherche à améliorer la qualité de l’inférence en lisant l’incertitude d’un LLM au moment où il choisit le token suivant, puis en changeant la méthode d’échantillonnage selon l’état
  • Les critères de décision sont l’entropie et la varentropie (varentropy) de la distribution des logits ; la combinaison de ces deux valeurs permet de répartir l’état de confiance du modèle en 4 catégories
  • Quand la confiance est élevée, l’échantillonnage argmax convient, mais lorsqu’il existe plusieurs candidats sérieux, on peut comparer les chemins via des embranchements (branching)
  • Un état d’entropie élevée peut signifier que le modèle ne sait vraiment pas, ou que les options sont en pratique équivalentes ; il faut alors des réponses comme l’insertion de tokens de réflexion (thinking tokens), l’ajustement de la température ou des embranchements
  • Il n’existe pas encore d’évaluation à grande échelle, donc l’effet reste incertain, mais l’échantillonnage au moment de l’inférence est un domaine où l’open source peut tenter des améliorations expérimentales sans gros budget

Le problème visé par Entropix

  • Entropix est un projet développé par XJDR, qui vise à améliorer l’inférence en changeant de stratégie d’échantillonnage lorsque le modèle est incertain
  • Il n’existe pas encore d’évaluation à grande échelle d’Entropix, donc l’ampleur du gain réel de performance n’est pas claire
  • Cela dit, l’échantillonnage fondé sur l’incertitude fournit une méthode expérimentale et un modèle mental pour regarder autrement l’inférence des LLM

Où l’incertitude des LLM apparaît-elle ?

  • L’échantillonnage est le processus qui détermine quel token choisir parmi les logits, c’est-à-dire la distribution des tokens possibles pour un LLM
  • Le degré de confiance du modèle se voit dans la distribution des logits pour le token suivant
    • Si la confiance est élevée, la probabilité se concentre nettement sur quelques tokens
    • Si la confiance est faible, les candidats possibles pour le token suivant sont plus largement répartis
  • L’incertitude n’est pas toujours un mauvais signal, et elle peut avoir plusieurs causes
    • Lorsque les tokens sont des synonymes, comme good et great, ou sont en pratique équivalents
    • Lorsqu’il existe des chemins de branchement, par exemple si un programme peut être écrit en Java ou en C
    • Lorsque le modèle ne sait pas quoi faire, ou rencontre une entrée hors distribution (out of distribution) qu’il n’a pas vue dans ses données d’entraînement

Entropie et varentropie

  • Entropix mesure l’incertitude au moyen de l’entropie (entropy) et de la varentropie (varentropy) des logits
  • L’entropie indique à quel point les logits prédits diffèrent les uns des autres, et montre l’incertitude associée au résultat le plus probable
    • Avec une faible entropie, le modèle est assez confiant sur certains logits
    • Avec une forte entropie, la distribution des logits devient plus uniforme et la confiance diminue
  • La varentropie est un indicateur qui montre la forme (shape) de l’incertitude
    • Une varentropie élevée signifie que certaines valeurs diffèrent fortement des autres
  • Les deux indicateurs reposent sur le concept de surprisal (auto-information)
    • Le surprisal mesure à quel point un événement est inattendu compte tenu de sa probabilité
    • Si la probabilité d’un événement x est P(x), son surprisal est I(x) = -log₂(P(x))
    • Si P(x) = 1/8, le surprisal est de 3 bits ; si P(x) = 1/2, il est de 1 bit
  • L’entropie est l’espérance du surprisal sur tous les résultats possibles
  • La varentropie est calculée comme la variance du surprisal, et indique à quel point certains résultats sont plus surprenants que le surprisal moyen

Les 4 états d’incertitude

  • En combinant entropie et varentropie, on peut diviser l’état du modèle en 4 catégories
    • Faible entropie · faible varentropie : une distribution pointue où un résultat a une probabilité très élevée
    • Faible entropie · forte varentropie : une distribution avec quelques pics distincts
    • Forte entropie · faible varentropie : une distribution uniforme ou presque uniforme
    • Forte entropie · forte varentropie : une distribution largement étalée, mais non uniforme

Échantillonnage adaptatif selon l’état

  • Faible entropie · faible varentropie

    • C’est l’état idéal : le modèle est relativement sûr non seulement de son premier choix, mais aussi de l’alternative si ce choix était erroné
    • La liste des candidats est souvent bien ordonnée, ce qui rend adapté l’échantillonnage argmax, qui choisit le token le plus probable
  • Faible entropie · forte varentropie

    • Le modèle attribue une probabilité très élevée à quelques choix
    • Cet état est difficile à interpréter : il peut représenter tout un nouveau chemin de sortie, ou une situation où plusieurs formulations sont toutes possibles, comme avec des synonymes
    • Une réponse possible est le branchement (branching) : prédire les deux logits, suivre chacun des chemins, puis comparer les résultats après un certain point
    • Si les résultats des branches ont des niveaux de confiance similaires mais des contenus différents, on peut transformer cela en question à poser à l’utilisateur
  • Forte entropie · faible varentropie

    • Le modèle peut être dans un état de faible confiance, ou dans une situation où toutes les options sont interchangeables
    • Entropix propose alors d’insérer comme token suivant un token de réflexion, afin d’amener le modèle vers un état de confiance plus élevée
    • Un exemple est un token comme Wait..
    • Le token de réflexion est inséré dans la sortie comme un signal indiquant que le modèle doit passer plus de temps de calcul à réfléchir avant de répondre
    • Par exemple, si le modèle s’apprête à prédire The capital of Germany is Paris sans en être sûr, l’insertion de Wait peut conduire à une suite comme The capital of Germany is Paris… Wait, no, it’s actually Berlin
  • Forte entropie · forte varentropie

    • Il n’y a pas de candidat clairement dominant, mais le modèle est plus confiant dans certaines sorties que dans d’autres
    • Comme les meilleurs choix peuvent tous être acceptables, par exemple s’ils sont synonymes, on peut faire un choix aléatoire avec une température (temperature) plus élevée
    • Comme dans les états précédents, il est aussi possible de créer des branches ou d’insérer un token de réflexion

Différence entre branchement et tokens de réflexion

  • Les deux méthodes cherchent à utiliser davantage de calcul d’inférence dans les états incertains
  • La prédiction par branchement suit plusieurs logits pour voir vers quels autres tokens ils mènent
    • On l’appelle souvent MCTS (Monte Carlo Tree Search)
    • Elle a souvent été tentée avec les LLM, mais les résultats ont été mitigés
    • Le principal compromis est que chaque branche ne peut pas tirer parti du calcul effectué par les autres
  • Les tokens de réflexion permettent d’obtenir du calcul supplémentaire dans un état incertain, sans le consacrer à explorer des branches qui pourront être jetées
    • L’insertion de Wait… amène l’IA à reconnaître qu’elle a pu se tromper
  • La question de savoir laquelle des deux approches est meilleure — branchement ou tokens de réflexion — reste une question de recherche ouverte

Signaux fondés sur l’attention

  • Entropix utilise aussi en partie d’autres mesures d’entropie lorsqu’il ajuste la température
  • Attention Entropy indique si une tête d’attention suit un token précis ou répartit son attention sur de nombreux tokens dans le contexte
  • Attention Agreement montre si plusieurs têtes d’attention se concentrent sur le même token ou regardent des tokens différents
  • Si l’entropie des têtes est faible et que l’agreement est élevé, cela peut constituer un signal supplémentaire indiquant qu’on peut échantillonner le token le plus probable
  • Si l’agreement est faible, différentes têtes peuvent contribuer à des prédictions différentes, ce qui peut justifier d’envisager un branchement

Pourquoi c’est important

  • L’idée d’Entropix est facile à comprendre et n’est pas entièrement nouvelle, mais elle pousse à repenser l’amélioration de l’inférence des LLM au niveau de l’échantillonnage
  • Même si les évaluations n’ont pas encore confirmé de gain important, ces techniques au moment de l’inférence sont relativement faciles à expérimenter
  • Elles pourraient devenir une piste prometteuse pour permettre à des hackers open source de tenter d’améliorer l’inférence sans gros budget

1 commentaires

 
GN⁺ 2024-10-27
Avis sur Hacker News
  • Il dit qu’on lui a posé deux fois la question : « Monsieur Babbage, si l’on entre de mauvais chiffres dans la machine, obtient-on les bonnes réponses ? »
    Charles Babbage ajoutait qu’il n’arrivait pas vraiment à comprendre quel embrouillement de pensée pouvait produire une telle question

    • Les gens pensent savoir ce que l’« IA » est censée faire, mais quand elle se comporte autrement que prévu, ils disent qu’elle est cassée
    • C’est une question tout à fait légitime, et on a plutôt l’impression que Babbage ne l’a pas comprise, ou a fait semblant de ne pas la comprendre
  • Ce genre de techniques d’échantillonnage fait partie des rares cas où l’on peut encore améliorer des modèles récents avec du matériel grand public
    Ça ne durera probablement pas, et au final on verra sans doute apparaître des échantillonneurs entraînables, mais pour l’instant ça vaut le coup de bricoler avec : https://github.com/codelion/optillm
    Les auteurs d’optillm semblent penser que le calcul supplémentaire d’Entropics ne donne pas de meilleurs résultats qu’un simple décodage en chaîne de pensée. Je ne sais pas s’ils ont aussi vérifié l’efficacité : https://x.com/asankhaya/status/1846736390152949966
    Beaucoup de problèmes des LLM semblent venir de la fuite sémantique, comme dans l’article GSM Symbolic, ou d’une attention détournée par des informations non pertinentes ; il y a peut-être donc aussi une marge d’amélioration côté attention
    J’ai d’ailleurs écrit quelques billets à ce sujet : https://zzbbyy.substack.com/p/semantic-leakage-quick-notes, https://zzbbyy.substack.com/p/llms-and-reasoning, https://zzbbyy.substack.com/p/o1-inference-time-turing-machi...

    • Le problème avec ces différentes techniques d’échantillonnage, c’est la manière dont les gens les évaluent en général
      Certains affirment que ça marche mieux, mais il n’y a pas de benchmark rigoureux pour le démontrer. On entend surtout des choses du genre « le texte est meilleur » ou « le style est plus frais » ; sur ce point, je trouve que LeCun a raison à 100 %. Évaluer un modèle généraliste en disant qu’il est bon en « poésie » ou en « prose », c’est presque la définition même d’un biais, et c’est se tirer soi-même une balle dans le pied avec des anecdotes personnelles
      J’aimerais voir les résultats appliqués au code ou aux maths. Par exemple, j’aimerais un benchmark soigneux avant/après pour savoir si l’échantillonneur fonctionne mieux sur des problèmes de maths d’olympiade
    • La fuite sémantique peut simplement être une faiblesse du modèle, mais elle peut aussi renforcer l’idée que le modèle ne raisonne pas « vraiment ». Plus d’entraînement pourrait peut-être aider
      Ou bien cela pourrait être une faiblesse plus fondamentale du mécanisme d’attention. Des alternatives commencent d’ailleurs à apparaître
  • Je ne sais pas bien si ce projet repose sur des articles académiques, c’est-à-dire s’il utilise des techniques publiées pour juger l’incertitude des LLM
    Parmi les travaux récents, celui-ci semble assez pertinent : https://learnandburn.ai/p/how-to-tell-if-an-llm-is-just-gues...
    On y utilise l’idée d’entropie sémantique, plus sophistiquée que la simple entropie standard des logits de tokens, et mieux adaptée pour quantifier statistiquement si un LLM est en train de deviner ou s’il a un fort niveau de confiance. L’article original est un papier publié dans Nature par des auteurs d’Oxford

    • L’idée centrale de l’entropie sémantique — estimer l’entropie de la distribution des unités de sens plutôt que celle des séquences individuelles de l’espace de sortie — est bonne, mais elle reste un peu naïve dans la mesure où elle traite ces unités de sens comme une partition bien définie de l’espace de sortie
      Il existe aussi un travail [1] qui généralise davantage cette approche, en effectuant un clustering souple à partir d’une notion d’équivalence sémantique entre les sorties échantillonnées
      Il faut quand même rester prudent. Nous avons récemment publié un article [2] qui benchmarke de façon globale les meilleures méthodes récentes d’estimation d’incertitude pour les LLM, et dans de nombreux cas les approches sensibles à la sémantique fonctionnaient très bien, mais sur d’autres tâches des baselines simples comme l’entropie moyenne de la distribution des tokens faisaient aussi bien, voire mieux, que des techniques plus complexes
      Nous développons également une bibliothèque open source Python [3] qui implémente des méthodes récentes d’estimation d’incertitude applicables aux LLM, et qui facilite à la fois le benchmark des méthodes d’estimation et l’estimation de l’incertitude des sorties de modèles en production
      [1] https://arxiv.org/abs/2307.01379
      [2] https://arxiv.org/abs/2406.15627
      [3] https://github.com/IINemo/lm-polygraph
    • Cela semble s’appuyer sur le travail de ce compte Twitter anonyme : https://x.com/_xjdr
      J’ai suivi ça d’assez près, et j’ai trouvé intéressant qu’un petit modèle puisse être plus efficace avec cet échantillonneur. Si le sujet vous intéresse, ça vaut la peine de lire ses posts, et ce type d’échantillonnage donne l’impression d’être quelque chose de vraiment important
    • Je ne pense pas qu’il s’agisse d’un article académique. Dans un cadre académique, on se serait attendu à une meilleure compréhension de la différence entre incertitude au niveau du token et incertitude sémantique / justesse sémantique, ou au moins à l’établissement d’une corrélation empirique entre les deux avant d’en tirer des conclusions
      Comme je l’ai écrit dans un autre commentaire, l’auteur semble avoir une incompréhension de fond, et la note en haut de l’article laisse penser que c’est peut-être pour cela qu’il n’a pas obtenu de résultats vraiment pratiques
      Ce n’est pas pour le blâmer ni pour le décourager. Il a peut-être mis le doigt sur quelque chose, et ce type d’approche originale vaut la peine d’être essayé. Mais, pour les raisons évoquées plus haut, s’il n’y avait pas d’effet positif il aurait été difficile d’en faire un papier ; il n’est donc pas surprenant non plus qu’il n’existe pas de publication académique sur cette approche
    • À ma connaissance, ce n’est pas un article académique, et c’est justement pour cela que j’avais envie d’écrire ce billet. Cela dit, ce projet a à la fois des adeptes passionnés et des opposants tout aussi passionnés sur le ML Twitter
    • Je m’adressais surtout aux lecteurs de HN intéressés par l’incertitude des LLM, et j’aimerais voir des résultats de tests montrant dans quelle mesure l’auteur du billet / du dépôt identifie réellement bien l’incertitude
  • Quand l’entropie est élevée, le modèle devrait avoir une porte de sortie
    Il faudrait déclencher un signal indiquant que la certitude de la réponse globale est faible, accumuler un score de certitude pendant la génération, puis permettre à l’utilisateur de vérifier à la fin si la réponse était vraiment de très mauvaise qualité en termes de certitude. Une telle réponse devrait pouvoir être écartée ou remplacée par « je ne sais pas »

    • On appelle généralement cela s’abstenir ou refuser
      Quand on compare plusieurs méthodes de quantification de l’incertitude d’un modèle dans ce domaine, on effectue souvent une validation par refus. En gros, on continue de refuser les points de données dont l’incertitude est élevée, puis on observe à quel point la qualité moyenne des sorties restantes augmente. Une bonne estimation de l’incertitude devrait être fortement corrélée à la qualité de la sortie, donc la qualité moyenne des sorties à faible incertitude devrait être plus élevée
      Un benchmark récent [1] sur les approches d’estimation de l’incertitude des LLM a justement utilisé cette méthode, et une bibliothèque open source [2] permettant ce type de benchmark est également en cours de développement. On peut aussi produire un score d’incertitude pour une sortie donnée d’un modèle, ce qui permet de l’intégrer à des applications en contexte industriel
      [1] https://arxiv.org/abs/2406.15627
      [2] https://github.com/IINemo/lm-polygraph
    • Le problème, c’est que les classificateurs à réseaux neuronaux profonds ne sont généralement pas bien calibrés statistiquement dans leur état par défaut
      Donc, même si une entropie élevée est souvent un signal de « manque de confiance », le modèle peut aussi très souvent se tromper avec assurance. Par conséquent, utiliser l’entropie des logits comme indicateur de fiabilité peut facilement induire fortement en erreur
      Je ne suis pas spécialiste des LLM ; c’est un avis fondé sur ma compréhension des classificateurs en général. Je me demande si cette considération cesse de s’appliquer quand on a suffisamment de données
    • Entropix fournit un framework capable de faire ce genre de choses. Structurellement, il détecte l’état courant puis ajuste les paramètres du sampler ou bascule vers une stratégie d’échantillonnage totalement nouvelle
      Il est tout à fait possible de faire des expériences en poussant fortement vers des réponses de refus, et je recommande de l’essayer directement. Le dépôt smollm-entropix [1] implémente l’ensemble sous forme de notebook Jupyter, ce qui facilite les tests de ces idées
      [1]: https://github.com/SinatrasC/entropix-smollm
    • Il semble presque certain que beaucoup de jetons supplémentaires seront ajoutés au vocabulaire. Pas seulement des jetons de thinking, mais peut-être aussi des jetons « je ne sais pas », ainsi que de nombreuses stratégies de décodage plus sophistiquées. Ce qu’il faut, c’est générer les données
    • Le nouveau Claude Sonnet 3.5 fait déjà plus ou moins cela, d’après mon expérience
  • Les grands GPT modernes produisent les logits d’un énorme classificateur sur l’ensemble du vocabulaire de jetons
    Ils vivent dans un certain espace, et on peut non seulement supposer qu’ils suivent une variété dotée de propriétés de convexité non triviales, mais aussi le calculer empiriquement. Le problème consistant à déterminer quel LLM a écrit un texte donné, y compris lorsqu’on lui a demandé d’adopter un certain style, est proche d’un problème bien défini, voire pratiquement résolu
    Ce n’était pas seulement un sujet de recherche, c’était aussi un domaine où les progrès étaient rapides et impressionnants, puis à un moment donné on l’a simplement éteint
    Devenir le meilleur dans ce domaine représente une activité énorme. Et c’est typiquement le genre de chose qu’une startup devrait faire. Il est difficile pour les acteurs établis et fortunés d’en devenir des concurrents, non parce qu’ils ignorent ce marché, mais parce qu’ils ne souhaitent pas activement qu’il existe

    • Tu peux expliquer un peu plus pourquoi ce serait utile ? À te lire, il semble qu’une bonne partie des requêtes modifieraient suffisamment la sortie pour empêcher la détection d’un LLM précis. Et le fait que les nouveaux LLM utilisent massivement des données synthétiques/générées me semble aussi introduire une variable assez importante
  • Cette manière d’expliquer ressemble presque à un algorithme de parcours de labyrinthe. Ici, le temps de calcul correspondrait à « jusqu’à quelle profondeur suivre un chemin pour tester si c’est une solution possible »
    Je me demande s’il y a d’autres similarités. Par exemple, existe-t-il des algorithmes de résolution de labyrinthe applicables aux LLM ?

    • Échantillonner séquentiellement pour trouver la séquence complète ayant la probabilité jointe la plus élevée est clairement un problème de recherche. C’est pour cela que des algorithmes comme la recherche par faisceaux sont souvent utilisés pour l’échantillonnage
    • La question d’aborder le décodage des LLM sous l’angle de la navigation a aussi été posée, sous un autre angle, dans ce post Reddit : https://www.reddit.com/r/MachineLearning/comments/1dw2pqo/d_...
    • Oui, cela semble être un domaine qui mérite davantage de recherche
      Pour être honnête, cela va dans la direction opposée à la Bitter Lesson(http://www.incompleteideas.net/IncIdeas/BitterLesson.html). Cette leçon venait aussi du fait qu’on traitait de manière excessivement sophistiquée la recherche dans les échecs et les labyrinthes. Mais à l’échelle actuelle des LLM, ce type d’amélioration pourrait avoir de la valeur
  • Chaque fois que je lis ce genre d’optimisations potentielles, j’ai du mal à comprendre comment des gens peuvent faire confiance aux LLM et les utiliser avec si peu de supervision
    Est-ce qu’ils croient vraiment que des produits « IA » qui utilisent des LLM sont assez compétents pour contrôler un ordinateur ou écrire du code correct ? Par conception, est-ce que tout n’est pas de la « hallucination » ou de la supposition ? Est-ce qu’on peut vraiment surmonter ça ?

    • J’ai écrit ou supervisé, avec ChatGPT et Python, quelques programmes utilisés dans le système de test de production de mon entreprise
      Ce sont des programmes qui envoient des opérations à des machines, consultent les résultats/erreurs/sorties, enregistrent ça dans des fichiers .csv puis les transforment en fichiers Excel bien formatés. Ils fournissent aussi un guide de démarrage montrant comment les techniciens doivent brancher les choses pour certains tests
      Je ne suis pas programmeur, et il n’y a pas non plus de programmeur dans notre entreprise. Pourtant, il a écrit du code qui fonctionnait exactement comme demandé. Quand le code coinçait pendant le développement, je le remettais dans ChatGPT pour qu’il corrige le problème, et au final tout a été résolu. Ça a pris environ une journée ; si je l’avais fait moi-même, il m’aurait fallu un mois, et en sous-traitance ça aurait coûté 10 000 dollars et une semaine
      Les LLM sont peut-être mauvais pour des projets de programmation haut de gamme à très hauts salaires. Mais pour les gens qui ont besoin de faire quelque chose avec un ordinateur sans parvenir à franchir la barrière de la langue qui consiste à dire à l’ordinateur quoi faire, c’est une bénédiction
    • Comment les humains surmontent-ils ça ? En y réfléchissant bien, on en arrive à la conclusion que les LLM peuvent être utilisés pour toutes sortes de choses. Par exemple, les humains non plus n’écrivent pas du code pour le pousser immédiatement en production
    • Bien sûr que si, j’y crois. Ce n’est pas une question hypothétique. Presque tout mon code est écrit par Claude 3.5 Sonnet
      Il est bien plus robuste et correct que le code que j’écris habituellement. Ça fait 20 ans que je programme
    • Je ne pense pas. Mais les humains ont du mal à reculer quand ils ont trop investi, émotionnellement ou financièrement, et ils ont plutôt tendance à tout miser
      Ce n’est qu’une autre bulle. Comme Client/Server, Industry 4.0, Machine Learning, Microservices, Cloud, Crypto
  • Est-ce que quelqu’un a déjà essayé de voir ce qui se passe si on empêche totalement le modèle de devenir incertain ?
    Par exemple, un échantillonneur qui revient en arrière et choisit un autre token chaque fois que la certitude passe sous un seuil. Au final, chaque token individuel aurait alors une certitude au-dessus de ce seuil
    Ça n’éliminerait sans doute pas complètement les sorties indésirables, mais ce serait intéressant

    • Dans ce cas, est-ce qu’il ne deviendrait pas tout simplement incapable de répondre ?
      Ou alors il pourrait dire « je ne sais pas » avec une certitude totale
    • Avant, on obtenait des sorties presque déterministes, proches d’une citation figée, mais elles restaient quand même affectées par les erreurs en virgule flottante
  • Il existe des dizaines de milliards de stratégies d’échantillonnage pour les modèles de langage
    Le problème, c’est qu’il est très difficile de montrer empiriquement qu’une stratégie d’échantillonnage donnée est meilleure que l’échantillonnage standard top-k ou top-p. Minimiser la perplexité ne suffit pas à prouver la supériorité d’une méthode particulière. La stratégie proposée dans le billet de blog a le même problème. En théorie, elle semble plausible, mais en pratique c’est une innovation non validée

    • Il n’est pas nécessaire d’avoir une preuve absolue
      Il est difficile de dire clairement ce que veut dire « meilleur », et comme il est coûteux de collecter des choses comme des données de préférence, la preuve est difficile à obtenir
      Après avoir vu beaucoup d’échantillons, on peut malgré tout dire au bon sens que « pour optimiser X, cette méthode semble mieux fonctionner »
  • Les limites des réponses des LLM ont bien plus de dimensions que la seule « incertitude »
    Il y a par exemple « la question/la phrase n’a pas de sens », « il n’y a pas assez d’informations pour répondre », « le consensus des experts dit que personne ne peut vraiment savoir », etc.
    Les humains ont tendance à réduire les raisons pour lesquelles il est difficile de répondre à une question donnée à un simple problème d’incertitude, et donc à considérer qu’une réponse de LLM n’a qu’un niveau unique d’incertitude. Mais c’est de l’anthropomorphisme
    Les images d’IA, et avant elles les photos, ont montré des façons nouvelles et inimaginées pour une image d’être fausse, c’est-à-dire d’avoir l’air vraie tout en étant fausse. Les interactions langagières avec l’IA font la même chose de manière plus subtile

    • Oui. Mais si on pouvait détecter qu’on est peut-être entré dans l’un de ces états, on pourrait ensuite examiner exactement lequel
      Jusqu’ici, on l’a surtout fait avec de l’apprentissage par renforcement, mais ça semble aussi valoir la peine d’explorer des approches qui capturent et traitent ça au moment de l’inférence. C’est aussi bien plus accessible en open source. Ce type d’apprentissage par renforcement, c’est quelque chose que seuls les grands laboratoires de ML peuvent faire
    • Parler d’hallucination pour désigner l’inexactitude d’un modèle est une expression tout aussi anthropomorphique
      J’ai l’impression que l’anthropomorphisme fait partie de la stratégie marketing des LLM
    • C’est vrai que l’incertitude est un terme défini de manière assez lâche. En général, on l’utilise comme un indicateur indirect de la probabilité que la sortie du modèle soit correcte dans un certain sens
      On peut aussi décomposer l’incertitude en plusieurs « saveurs ». La décomposition la plus simple et la plus souvent discutée est celle entre incertitude aléatoire et incertitude épistémique. L’incertitude épistémique, ou incertitude liée au modèle, désigne généralement les cas où le modèle reçoit un type d’entrée qu’il n’a jamais vu auparavant et produit une mauvaise sortie, une situation dans laquelle il est difficile d’espérer qu’il réagisse correctement. À l’inverse, l’incertitude aléatoire est inhérente aux données elles-mêmes ; on peut penser à l’ambiguïté naturelle de la tâche ou à un étiquetage bruité
      Dans le domaine de l’estimation de l’incertitude, on s’intéresse beaucoup au développement de méthodes pour quantifier ces différents types d’incertitude, et selon la méthode, la sensibilité peut être plus forte à l’une ou à l’autre
    • Ça semble très lié à mon usage des LLM pour structurer des données. J’ai précisément besoin d’un bon indicateur d’incertitude pour chaque fragment de données
    • Est-ce que ce ne sont pas, eux aussi, différents types d’incertitude ?