Welcome

  • Echos de la recherche #9
    Les côtés obscurs des LLM Des pistes pour les optimiser et les expliquer Des nouvelles du front de la sécurité, de la performance ou de l’interprétabilité des modèles de langage ; et en bonus : l’IA générative en musique, et la guerre entre convolutifs et transformers. #Sécurité #Interprétabilité #Optimisation #Modèles de langage #Méthodologie Lien de téléchargement de l’article Concrètement, cet article propose une alerte très forte sur la sécurité des modèles de langage, un nouveau framework d’optimisation de ces modèles permettant une forte économie des coûts matériels, et un nouveau travail prometteur en interprétabilité de ces modèles. Au-delà, un peu de culture générale dans l’ia générative en musique, et une nouvelle étape pour déterminer quelle architecture est la plus intéressante en traitement de l’image. Le côté obscur des LLM en ce moment c’est la sécurité, car de nombreux cas d’aspiration de contenu remontent, en revanche, les LLM fonctionnent sur leur performances et leur coût d’usage, notamment en cloud, ainsi qu’en interprétabilité pour que ce ne soit plus des boites noires mais que leur comportement deviennent plus explicable. Nous avons développé un dispositif de classification par LLM qui permet de juger de la toxicité de messages publiés sur une messagerie interne à gros volume de publication. Nos efforts d’optimisation nous ont permis d’atteindre un facteur 30 de temps de traitement entre la première version et la version actuellement opérationnelle. Pour la sécurité, nous avons spécialisé un modèle de langage installé sur les serveurs de notre client afin de ne faire circuler aucune donnée sur le web. C’est parti… Comme chaque mois, nous proposons de vous présenter les travaux académiques du mois passé qui nous paraissent intéressants et utiles pour un déploiement à court terme. Au programme : Modèles de langage et cyber-sécurité : une catastrophe annoncée Les modèles de langage ne cessent de faire les gros titres depuis la sortie de ChatGPT et autres travaux liés (Llams, Falcon, Mistral, etc.). De plus en plus de projets chez nos clients visent à exploiter ces outils pour créer de nouveaux services exploitant le langage naturel. Et si, en effet, ces modèles sont une petite révolution en termes d’applications potentielles, force est de reconnaître qu’ils sont un peu trop récents pour pouvoir être déployés sereinement dans un système d’information, voire même pour être utilisés correctement. Nous avons déjà extensivement parlé des difficultés à industrialiser un modèle Deep Learning, un de nos combats journaliers. Nous proposons ici de nous attarder sur les problèmes de cyber-sécurité de ces modèles. En effet, la sécurité informatique ne fait pas très bon ménage avec le Deep Learning. Entre inversion de modèle, dataset empoisonné ou adversarial attacks, les vecteurs de faiblesse de ces modèles sont légion, et encore mal maîtrisés par les acteurs de ce domaine. Mais au-delà, les larges modèles de langage permettent d’ouvrir tout un nouveau champ de risques que nous ne soupçonnions même pas… À la racine du problème, encore une fois, se trouve nos limites de compréhension théorique de ces modèles qui sont juste, bêtement, “beaucoup trop gros” pour être maîtrisés correctement. Hors, un blog est récemment apparu dans notre viseur, qui se spécialise dans ces failles des modèles de langage et leurs conséquences. Si nous vous recommandons l’intégralité de ce blog (https://embracethered.com/blog/posts/), les deux derniers articles sont édifiants. Typiquement : https://embracethered.com/blog/posts/2023/google-bard-data-exfiltration/ Dans cet article, l’auteur montre que l’automatisation permettant à Bard (LLM Google) d’aller chercher de l’information dans les Google Documents de l’utilisateur permet d’une manière assez simple d’effectuer une injection, notamment en partageant un document avec un utilisateur (une action qui ne demande pas de validation de la part de la victime!). Ce document contient une ré-écriture du prompt du LLM qui permettra d’exfiltrer des informations vers un serveur malveillant…  Ci-dessous (issu du blog) le document en question : On notera avec un peu d’humour que les requêtes du “département juridique” sont très importantes 🙂. Au-delà, on retrouve le fait que le contrôle d’un modèle par prompt est un contrôle très faible et limité, pouvant facilement être détourné. Si vous combinez cette approche avec les techniques de dissimulation d’un prompt (typiquement, le cypher présenté dans une récente revue de la recherche), il deviendra quasi impossible de détecter ce type d’attaque. Ceci dit, rendons hommage à Google pour avoir adressé cette faille (uniquement sous cette forme spécifique…) Et remarquons que l’auteur a relevé des problèmes similaires sur ChatGPT qui, eux, ne seront de l’aveu même d’OpenAI pas résolus : L’optimisation des modèles de langage a un nouveau framework ! Deuxième travail (cette fois ci académique) que nous voulons vous présenter aujourd’hui : l’optimisation des modèles de langage, en apprentissage ou en inférence. C’est maintenant un problème bien connu de tous ceux qui ont voulu manipuler ces modèles : leur extrême lourdeur rend leur utilisation très coûteuse. Naïvement, nous parlons (pour entraîner ces modèles) de plusieurs GPUs A100 particulièrement onéreux, et même leur simple utilisation (inférence) induit des coûts et des lourdeurs assez insupportables. Dans Efficient Memory Management for Large Language Model Serving with PagedAttention de Kwon et al (Berkeley), les auteurs proposent une approche rafraîchissante sur ce problème, et proposent même un framework d’application : L’idée fondamentale de vLLM est de sortir un peu de l’approche académique pour replonger dans les principes informatiques et, notamment, l’optimisation de l’utilisation de la mémoire vive des GPUs qui, à date, reste trop simpliste. Entre autres problèmes remontés par les auteurs, le fait qu’un LLM allouera pour toute prédiction un bloc mémoire contigu ayant la taille maximale nécessaire pour générer la plus longue phrase possible. Hors, dans une majorité des cas, cet espace mémoire ne sera absolument pas utilisé. Nous sommes face à un problème classique de fragmentation de la mémoire ou une partie importante de cette mémoire est allouée (donc bloquée), mais non utilisée… Les auteurs s’intéressent particulièrement au KV Cache qui est un élément central d’optimisation des modèles de type Transformer. Le schéma ci-dessous présente les différentes répartitions de la mémoire, notamment entre Orca (une approche précédente, ici (attention) ré-implémentée par les auteurs) et leur approche : Le […]
  • Echos de la recherche #8
    Novembre 2023 Eric Debeir – Directeur scientifique de Datalchemy – eric@datalchemy.net Lien pour télécharger cet article Nos clients nous interrogent de plus en plus sur l’implémentation de modèles de langage pour des chatbots ou des moteurs de recherche de contenu générant, à partir d’une question des documents de synthèses multilingues à partir de leur propre base documentaire. Autrement dit “je veux mon propre Chat GPT”. Alors évidemment, nous suivons de près ce qui s’écrit et ce qui peut s’implémenter dans les nouveaux développements autour des LLM. Faisons le tri dans une littérature toujours aussi foisonnante. Nous observons depuis bientôt un an un phénomène que nous connaissons (hélas) un peu trop bien à Datalchemy, cette fois-ci sur les célèbres Large Language Models : une frénésie de travaux scientifiques qui, tous, promettent une petite révolution, mais qui en majorité exigent un recul indispensable quand on veut considérer leurs résultats. En effet (et c’était par ailleurs le sujet de notre dernier webinar), le surplus de recherche crée un effet d’aveuglement, particulièrement dans le domaine du Deep Learning où nous évoluons dans un déficit d’approches théoriques assez préjudiciable. Pourtant, nous ne pouvons pas pour autant ignorer cette recherche. Les Large Language Models sont aujourd’hui un sujet brûlant qui touche une majorité de nos clients. Dans la jungle des publications qui sortent, certaines sont plus intéressantes que d’autres, et la reproduction des expériences d’une recherche à l’autre nous permet d’identifier de mieux en mieux les axes de travail pertinents comme les impasses officielles. Nous vous proposons aujourd’hui de faire un tour d’horizon de certaines publications qui ont été dignes d’intérêt ces derniers mois. Conforme à notre volonté d’appréhender au mieux la robustesse et l’industrialisation de ces outils, nous nous concentrons sur les travaux visant une forme d’interprétabilité des modèles, mais pas uniquement. Au programme, nous avons un travail très intéressant d’optimisation des modèles, deux travaux d’interprétabilité se distinguant du reste, et deux travaux très réalistes et terre à terre qui recadrent sérieusement les talents incroyables que l’on prête un peu trop vite à ces nouveaux outils. Pourquoi lire ce qui suit : cette complexité croissante avec la longueur est une épée de Damoclès datant de 2017. Tout travail essayant de repousser cette frontière est donc particulièrement intéressant. Ici, la solution a l’élégance d’être assez simple à utiliser, tout en offrant un nouveau regard sur les approches plus anciennes. Ceci dit, gardons toujours du recul, un travail trop récent étant particulièrement risqué à implémenter. Ce sujet est très connu des chercheurs en NLP depuis 2017 et la sortie du célèbre Transformer de Vaswani et al : les Transformers sont très sensibles à la longueur de la phrase sur laquelle ils travaillent, avec une complexité quadratique rédhibitoire. Et force est de reconnaître que le sujet reste d’actualité, car aujourd’hui encore, ce sujet est considéré comme non résolu par la recherche. Au-delà d’une complexité technique, cette limitation a des impacts très forts sur l’utilisation d’un LLM. Typiquement, exposer au modèle un texte dont la longueur est plus longue que la longueur d’entraînement causera une très forte dégradation des performances. Ainsi, l’application classique du chatbot capable de soutenir une conversation dans la durée devient un sujet insoluble, tout du moins via une approche classique. Dans Efficient Streaming Language Models with Attention Sinks, de Xiao et al [https://arxiv.org/abs/2309.17453], les auteurs adressent ce sujet d’une manière particulièrement intéressante, en visant un paradigme de streaming soit de génération continue dans le temps. Nous n’allons pas trop tomber dans la technique dans cet article (si vous avez des questions, contactez-nous 🙂 ), mais un premier résultat très intéressant est qu’une solution anciennement considérée comme pertinente s’avère en réalité être très décevante. Nous parlons ici de la window attention, où le modèle ne s’intéresse qu’à un contexte immédiat du token sur lequel il est en train de travailler. Si cette approche a souvent été présentée comme une solution, elle est ici invalidée en termes de résultats, et c’est typiquement ce type de retours qui nous intéresse particulièrement pour mieux répondre à nos clients. (Ci-dessus : représentation en génération de phrases de l’attention donnée aux éléments précédents pour chaque nouvel élément généré, où, dans le mode dense, chaque nouvel élément généré exploite l’intégralité des éléments précédents) Et en effet, si l’approche de window attention est effectivement stable en mémoire, les auteurs observent formellement que les résultats de cette approche s’écroulent dès que la taille de contexte initiale est perdue. Au-delà, ils produisent une observation passionnante sur le concept d’attention sink, où les modèles continuent à donner une importance démesurée aux premiers éléments de la séquence même quand on en est assez éloignés. Ce phénomène est identifié comme un problème qui va nuire fortement à la capacité du modèle à généraliser sur des séquences longues, et les auteurs proposent une solution, dite StreamingLLM, qui semble améliorer fortement les résultats. L’approche est relativement simple à mettre en œuvre, avec un code source exploitable et clair. Pourquoi lire ce qui suit : interpréter un modèle de langage est un enjeu fondamental. Les outils issus du Deep Learning souffrent terriblement de cet aveuglement sur le fonctionnement interne, avec toujours le risque rampant d’observer une illusion de bon fonctionnement basée sur des biais. Ce type de travail peut s’additionner aux autres approches (par exemple, celles que nous avons données dans notre dernier webinaire sur la robustesse) pour viser un “best effort” de contrôle des modèles. La question hante l’ensemble des chercheurs en Deep Learning depuis 2012 : certes, nous pouvons entraîner un modèle sur une tâche et obtenir de bons résultats, mais qu’apprend réellement un réseau de neurones ? Le problème n’a fondamentalement pas changé : il y a trop de paramètres dans un modèle IA pour pouvoir étudier chacun d’une manière correcte et complète. Cela n’empêche pas de travailler (typiquement, les applications de type neuron coverage permettent de viser une meilleure robustesse, et l’étude des représentations intermédiaires guide de nombreux travaux), mais cela continue d’être un frein énorme à notre compréhension de ces modèles, leur interprétation et donc, […]
  • Echos de la recherche #7
    Et en 3D, vous y voyez quelque chose ? Mais oui grâce aux réseaux neuronaux. Rédigé par Eric DEBEIR – Directeur scientifique de Datalchemy – eric[at]datalchemy.net www.datalchemy.net NeRFs, Signed Distance Fields… Derrière ces termes barbares, se cachent une petite révolution scientifique née de l’intelligence artificielle aux nombreuses applications. Nous vous proposons aujourd’hui un focus sur ce nouveau domaine qui est apparu aux alentours de 2021 et qui a récemment connu de nouveaux résultats impressionnants. Nous repartirons ainsi d’un travail incontournable de NVIDIA, les Instant Neural Graphic Primitives pour nous intéresser ensuite à deux travaux récents : LeRFs, et le Gaussian Splatting. Mais avant cela, une introduction plus complète s’impose. De quoi parlons-nous ? Un enjeu fondamental est celui de la Computer Vision : exploiter une information visuelle issue de capteurs, afin de modéliser une représentation du monde. Ces modélisations sont souvent en deux dimensions (à partir d’une photographie classique), mais le passage à une représentation en 3 dimensions est incontournable si l’on veut ensuite pouvoir agir correctement : détection précise d’un élément dans l’espace, manipulation robotique, etc. Deux grandes approches existent fondamentalement pour représenter une scène en 3 dimensions : NeRFs (Neural Radience Fields) et SDFs (Signed Distance Fields) sont deux nouvelles méthodes pour modéliser une scène en trois dimensions. Chacune a ses avantages et ses défauts, et nous ne rentrerons pas trop dans les détails techniques dans cet article. Retenons surtout que ces approches visent à modéliser une scène via l’entraînement d’un réseau de neurones spécifique, réseau de neurones qui, une fois entraîné, pourra ensuite être utilisé pour questionner l’apparence de chaque « point » à partir d’une caméra virtuelle. Un intérêt particulier de ces méthodes et que l’on peut générer la représentation en 3 dimensions à partir d’une collection de photographies en 2 dimensions prises à des angles différents. Au-delà, les NeRFs et SDFs permettent une reconstruction d’une qualité photo-réaliste inégalée, dépassant tout ce qui existait auparavant. Jusqu’au travail suivant, le principal problème était l’extrême lenteur (due à la lourdeur de calcul) pour générer une nouvelle scène. Mais NVIDIA lança une première révolution avec les Instant NGPs… Instant NGP – Instant Neural Graphic Primitives with a Multiresolution Hash Encoding Ce travail de Müller et al [1] a eu l’effet d’un coup de tonnerre dans le monde de la recherche. Les auteurs ont ici travaillé globalement l’idée d’entraîner un réseau de neurones pour représenter une scène, en travaillant sur quatre applications différentes : Gigapixel image, SDF, NRC et NeRF. La principale évolution ici est la rapidité d’entraînement et de génération, avec une approche considérée comme « instantanée » (ce qui est peut être légèrement exagéré). À partir d’une collection de photographies de la scène cible, un réseau de neurones est entraîné avec une précision croissante en fonction du temps alloué pour l’entraînement. La principale révolution apportée par les auteurs porte sur la méthode pour modéliser les détails de la scène en fonction du niveau de résolution visé. Ici, une architecture hiérarchique encode des hashs permettant d’identifier la manière dont nous voulons appeler le réseau de neurones entraîné. Cette méthode est extrêmement efficace, et visiblement suffisamment volatile pour être appliquée aux quatre domaines cibles de la publication. Autre argument très fort de ce travail, la rapidité d’entraînement du modèle qui était bien plus intéressante que ce qui existait jusqu’ici, rendant l’approche pratiquement exploitable. À noter que cette rapidité n’est pas étrangère à l’affiliation des auteurs (NVIDIA). L’algorithme de multi-hash encoding a ainsi été implémenté directement en CUDA pour être le plus efficace possible sur un GPU. Ce travail est disponible sur github aujourd’hui, quand bien même la licence du code source ne permet pas une utilisation commerciale… On notera que NVIDIA a notamment accompagné un grand nombre de créations artistiques exploitant ce travail, en encourageant l’utilisation dans différents cadres de création… Néanmoins, à l’époque, ce travail s’est avéré insuffisant pour imaginer une application à l’industrie réaliste et efficace. De nombreux chercheurs ont travaillé le sujet, et nous vous proposons de vous présenter deux travaux récents passionnants… 3D Gaussian Splatting for Real-Time Radiance Field Rendering Ce travail de Kerbl et al [2] de l’Inria (Cocorico de rigueur) a récemment chamboulé le domaine en proposant des résultats de bien meilleure qualité avec un rendu temps réel beaucoup plus exploitable. On a ainsi vu récemment de nombreux acteurs se jeter sur cette approche pour créer des visualiseurs web de NeRFs, ou pour faire du rendu temps réel animé de meshs tout en conservant une qualité proche du photo-réalisme. Ici, les auteurs arrivent à générer de nouvelles vues à partir d’une scène enregistrée à 30 images par secondes, à une résolution de 1080p. Les résultats sont impressionnants : À ce jour, cette approche est la plus pertinente pour entraîner et utiliser un NeRF, en attendant les travaux ultérieurs. Il faut noter que cette notion de rapidité de rendu est fondamentale pour utiliser correctement ces outils, par exemple en rendu d’animation (pour explorer une scène acquise, voire pour animer une scène). Nous suivons avec beaucoup d’attention ces travaux d’optimisation, et attendons les prochains pour continuer d’identifier les meilleures opportunités pour nos clients. LERF : Language embedded Radiance Field Le travail suivant de Kerr et al [3] fera sourire ceux qui suivent le domaine du Deep Learning, car après tout, existe-t-il ne serait-ce qu’un domaine où les récents progrès en traitement du langage n’ont pas été appliqué ? Ici, l’idée est de coupler l’apprentissage d’un NeRF avec le modèle CLIP d’OpenAI. Pour rappel, ce dernier a été entraîné à rapprocher, dans un espace latent, une description textuelle d’une image. CLIP a déjà été extensivement utilisé pour questionner le contenu d’une image à partir d’un prompt textuel. Ici, les auteurs entraînent le modèle de manière à pouvoir interroger un NeRF à partir d’un texte de description. L’image ci-dessous devrait éclaircir le sujet : Attention : c’est bien une scène en 3 dimensions qui est travaillé, et non une simple image. Ce travail nous permet de mettre en évidence une limite aujourd’hui des NeRFs, à savoir, leur utilisation. C’est une chose de modéliser une scène en 3d d’une manière photo-réaliste, c’en est une autre […]
  • Echos de la recherche #6
    Un nouvel opus de Transformers, cinéma ou  réalité ? Lien pour le téléchargement de l’article en pdf Ne cachons pas notre joie, voilà une revue de recherche qui sera assez éloignée du fracas des modèles de langage et autres GPT-like (qui ont fait l’objet d’un webinaire dédié en juillet), pour nous intéresser à trois travaux passionnants et fondamentaux sortis ces deux dernières semaines. Au programme : une nouvelle architecture très simple et diablement efficace pour la vision, un modèle génératif convainquant pour la génération de musique, et un travail scientifique prometteur pour l’interprétabilité du Deep Learning et la génération de représentations de la donnée. En route ! Un Vision Transformer de référence [https://arxiv.org/abs/2306.00989] Que se passe-t-il ? Quoi qu’on pense de Meta en tant qu’entreprise, force est de reconnaître que le laboratoire Meta AI reste un des acteurs les plus intéressants du domaine. Un de leurs avantages reste de chercher des architectures efficaces, à contre-courant des approches académiques classiques. Ici, avec Hiera, Meta AI nous propose une nouvelle architecture de base autour du Vision Transformer, plus simple et plus efficace. Si le ViT est en effet une architecture qui s’impose doucement depuis trois ans dans le monde académique, sa grande jeunesse a conduit à de nombreux travaux qui tentaient d’améliorer ses résultats via différentes astuces plus ou moins contrôlées. Comme l’observent les auteurs, les évolutions récentes du ViT ont certes amélioré ses résultats, mais au prix d’une plus grande lourdeur. Hors, dès que l’on s’extrait du monde académique pour s’intéresser à l’ingénierie, la rapidité d’entraînement d’un modèle est un facteur clé permettant d’itérer plus rapidement sur un problème et donc d’avoir des outils mieux adaptés. Ici, Hiera est donc un modèle beaucoup plus simple où les auteurs ont retiré un certain nombre d’évolutions proposées ces deux ou trois dernières années, au profit d’un pré-entraînement beaucoup plus efficaces basé sur le MAE (Masked AutoEncoder) où le modèle apprend à appréhender le biais spatial dans les images, biais qui n’est pas présent structurellement dans l’architecture du Transformer. Notons que cette absence de biais spatial dans le Transformer est un vieux sujet sur lequel de nombreuses approches ont été tentées, mais au prix d’une lourdeur supplémentaire. Les auteurs ici argumentent sur le fait que le MAE est un pretraining qui introduit ce biais spatial, mais pour un sur-coût d’entraînement minimal. Le modèle est qui plus est un modèle hiérarchique avec donc un traitement de l’image en entrée à différents niveaux de résolution. Notons que l’approche MAE (consistant à masquer une partie de l’image et à entraîner le modèle à retrouver cette partie masquée) est fondamentalement mal adaptée pour un modèle hiérarchique, les auteurs proposent ici une adaptation spécifique. Pourquoi c’est intéressant Le Deep Learning est un domaine de recherche, et cela pose souvent problème en application. En effet, de nombreuses améliorations sont proposées, souvent validées selon une approche spécifique, mais sans recul sur la combinaison et la pertinence réelle de ces améliorations. Qui plus est, ces améliorations sont souvent des sources de complexité et de lenteur supplémentaires, qui freinent l’utilisation de ces modèles en application directe. Ici, une nouvelle architecture plus simple et plus contrôlée est une excellente nouvelle pour nous, car nous avons ici un point de départ plus stable et plus rapide pour approcher de nouveaux sujets. Au delà, rappelons que ces modèles peuvent jouer un rôle de “backbone” dans des modèles plus spécialisés (notamment en segmentation, détection, etc.) Il y a donc fort à parier que ce modèle pourra faire directement évoluer de nombreux outils plus spécialisés. Rappelons néanmoins que MetaAI proposait il y a un an un nouveau modèle convolutif de référence (A Convnet for the 2020s [https://arxiv.org/abs/2201.03545]) contre l’évolution des Vision Transfomers. Cette nouvelle étude semble acter que les convolutifs rentrent peu à peu dans l’histoire 🙂 IA Générative et musique, une nouvelle étape [https://arxiv.org/abs/2306.05284] L’IA générative est un sujet très actif depuis les explosions de Stable Diffusion et des Large Language Models, adaptée donc à l’image ou au texte. La musique est un sujet très intéressant mais assez frustrant, car beaucoup moins efficace que ce qu’on peut observer ailleurs. Plusieurs raisons à ce retard : Si l’on laisse de côté les approches très récents où l’on mélangeait modèles de diffusion et son qui étaient assez décevants, la dernière approche convaincante était le Jukebox d’OpenAI en 2020 [https://openai.com/research/jukebox] Dès lors, le récent travail de Meta AI (encore eux, promis, nous essayons d’équilibrer nos veilles) sur la musique est un travail passionnant qui pose de nouveaux résultats bluffants en termes de résultats. Le sujet n’est pas encore “conclu“, mais nous vous encourageons déjà à aller écouter sur la page du projet les différents exemples : https://ai.honu.io/papers/musicgen/ Que se passe-t-il ? Sans rentrer trop dans la technique, les auteurs ont ici approché le problème un peu à la manière des célèbres Latent Diffusion Models, en entraînant un modèle génératif non pas sur la musique directement, mais sur la musique encodée via le projet EnCodec de Meta [https://github.com/facebookresearch/encodec]. Ce projet permettait d’apprendre une compression de l’information via un modèle encodeur/décodeur relativement classique. Le nouveau projet génératif s’appuie donc sur ces représentations de haut niveau pour apprendre à générer de nouvelles musiques Ces morceaux de trente secondes peuvent être générés depuis un prompt textuel (qui reste assez décevant) ou depuis une mélodie d’un autre morceau (où là, la condition semble être appliquée d’une manière beaucoup plus efficace). Le point technique important ici est sur la manière de modéliser la musique et de la générer. Déjà, la modélisation de la musique porte sur plusieurs vecteurs quantifiés parallèles, et non pas un unique vecteur comme on le retrouve souvent en texte ou en image. Ces vecteurs complémentaires sont nécessaires pour retrouver un son de qualité. Hors, cette multiplication pose un problème d’optimisation en utilisation. Les auteurs ici travaillent plusieurs approches pour générer ces vecteurs à différents niveaux en cherchant à paralléliser les calculs. Une contrainte est que ces vecteurs sont générés séquentiellement avec donc une dépendance à l’historique. Les auteurs proposent donc un framework […]
  • Echos de la recherche #5
    IA, quel risque à évaluer les risques ? Lien pour téléchargement en pdf Les modèles de langage sont toujours l’événement le plus brûlant de l’actualité du Deep Learning, et sans surprise, deux des travaux retenus pour aujourd’hui prolongent ces outils. Néanmoins, nous allons un peu nous écarter des multiples travaux visant à légèrement instrumenter ou optimiser ces modèles, pour nous intéresser à deux approches plus originales et plus intéressantes. La première porte sur des travaux de Google visant à étendre ces modèles à la compréhension et la manipulation de schémas, quand la seconde elle vise à créer un agent compétent au jeu Minecraft, avec (spoiler) une petite déception sur l’approche. Néanmoins, avant de partir sur ces travaux, nous allons nous arrêter sur une publication de Deepmind importante portant sur la gestion des risques en IA, et leur mitigation. Un système d’alerte pour les risques de l’IA Une des plus inquiétantes épée de Damoclès au-dessus des outils d’intelligence artificielle porte sur leur robustesse et leur sécurité. En effet, dès qu’on a le malheur de s’éloigner de l’aspect “impressionnant”, on re-découvre que ces outils sont aujourd’hui impossible à valider complètement tel qu’on pourrait le faire pour un algorithme plus classique que l’on peut tester exhaustivement. Hors, si entraîner un réseau de neurones est toujours intéressant, nous sommes beaucoup plus attentifs à leur industrialisation et, donc, à la maîtrise de leurs risques. Le travail récent de Deepmind [https://www.deepmind.com/blog/an-early-warning-system-for-novel-ai-risks] est ainsi incontournable pour tout acteur désirant questionner sa stratégie en test et validation de modèles IA. S’il ne donne évidemment pas de solution “parfaite”, il a le mérite de rappeler l’ensemble des risques et de proposer une méthodologie itérative pour maîtriser au mieux les outils générés. Deepmind s’intéresse ici aux risques dits “extremes”, notamment en distinguant les risques liés à une mauvaise généralisation et ceux dus à une mauvaise manipulation. Quels sont ces risques ? Deepmind tente d’être le plus exhaustif possible, et propose une méthodologie adressant un entraînement responsable, un déploiement impliquant des auditeurs externes, une transparence sur les conditions de l’entraînement, et une politique de sécurité complète, notamment via une isolation du modèle mitigeant attaques adversariales ou autres détournements L’idée sous-jacente porte sur une exposition croissante d’un modèle auprès du grand public au fur et à mesure que le modèle est validé, tout en conservant une maîtrise des ré-entraînements afin de conserver la possibilité de contrôler les modèles générés. Deepmind identifie enfin six limitations fondamentales à toute approche de ce type, dont la majorité se rapportent à nos déficits de compréhension en Deep Learning. : Un modèle de langage apprend à interpréter des schémas Ce sont deux publications différentes de Google Brain qui sont entrées dans notre radar ces dernières semaines, qui visent toutes deux à travailler sur l’interprétation d’un schéma numérique. L’enjeu est ici évident : de nombreuses connaissances sont exposées sous la forme de schémas visant à résumer un grand nombre d’informations numériques en un unique visuel. Si des modèles deviennent capable de modéliser ce type d’information, nous gagnons un nouveau champs d’analyse particulièrement puissant pour interpréter des documentations spécifiques. Un exemple d’application, repris depuis le blog de Google Brain, est visible ci-dessous : La tâche étant tout sauf triviale, deux travaux différents sont ici mis à l’honneur MatCha: Enhancing Visual Language Pretraining with Math Reasoning and Chart Derendering, Liu et al, [https://arxiv.org/abs/2212.09662], vise à améliorer les travaux précédents en modéle de langage visuel. Le modèle nommé MatCha va ainsi viser une modélisation jointe entre les pixels d’un schéma et un langage décrivant ce schéma, via deux formes de pré-entraînements : Ces deux tâches de pretraining sont visibles ci-dessous, en bleu pour la première tâche, en rouge pour la seconde : Les résultats sont déjà intéressants, et remercions les auteurs de présenter autant des cas réussis que des cas d’échec : Le second travail est DePlot: One-shot visual language reasoning by plot-to-table translation, de Lu et al [https://arxiv.org/abs/2212.10505]. Basé directement sur le premier, il vise lui à adresser le sujet de la compréhension visuelle de diagrammes, dans un premier temps sur des transcriptions de schéma vers texte, pour ensuite tester des questions ouvertes sur le texte généré. Le modèle va toujours tenter de générer, à partir du schéma, une table linéarisée de données. Cette approche est intéressante car elle vise une uniformisation de la forme de la donnée générée qui permet notamment de contrôler le fonctionnement et de se projeter facilement vers un outil d’application. Elle pose aussi des limites évidentes sur le type de schéma qui peut être adressé par ce modèle. Le modèle peut ensuite être couplé à un modèle de langage classique (quel qu’il soit) pour effectuer des tâches d’analyse : Les auteurs reproduisent les tests faits sur le premier modèle, pour ensuite observer de bien meilleurs résultats en utilisant DePlot avec un modèle de langage. Pourquoi c’est intéressant : La gestion de documents est un sujet central chez DatAlchemy. Nous avons travaillé de nombreuses fois dans des configurations où nous devons adresser une masse de documents pour extraire de l’information. Le fait de pouvoir interpréter des schémas et générer une information qualifiée est un énorme avantage pour régulariser les informations extraites et compléter ce qui est extrait du texte pur. Un nouveau jouet pertinent dans notre boite à outils 🙂 Une IA qui sait jouer à Minecraft (ou pas) Beaucoup de bruit récemment sur le travail Voyager: An Open-Ended Embodied Agent with Large Language Models, Wang et al [https://voyager.minedojo.org/], dans lequel on retrouve des acteurs prestigieux comme NVIDIA ou Standford. Cette approche vise à créer incrémentalement un agent jouant au jeu Minecraft en s’appuyant sur les modèles de langage, et obtient des résultats impressionnants, où un agent va progressivement réussir à construire des éléments de plus en plus complexes : Du point de vue du renforcement, un domaine que nous suivons avec beaucoup d’attention, le résultat est impressionnant. Néanmoins, en allant analyser l’approche, nous allons observer des choses très intéressantes, mais d’autres plus décevantes. Le point très intéressant porte sur l’utilisation d’un modèle de langage selon […]