Définition des modèles de génération d’image Les modèles de texte à image sont des modèles génératifs utilisant l’intelligence artificielle pour produire des images à partir de descriptions écrites, appelées “prompts”. Ces modèles sont de plus en plus populaires en raison de leur potentiel à générer des images créatives et originales. Les données visuelles utilisées pour l’entraînement de ces modèles sont collectées à partir de sources diverses, notamment à partir d’œuvres d’art, de photographies et d’images en ligne. Quels sont les principaux acteurs ? Le domaine de la génération d’images est en constante évolution et trois acteurs majeurs y jouent un rôle prépondérant. • DALL-E 2 d’OpenAI, la première organisation à avoir fait une démonstration grand public de cette technologie • Midjourney, un laboratoire de recherche indépendant offrant une option gratuite d’utilisation du modèle sur le logiciel Discord. • Stable Diffusion de StabilityAI, une initiative open-source qui diffuse régulièrement les dernières mises à jour de son modèle. Ces trois acteurs sont à la pointe de la technologie pour la génération d’images et continuent de pousser les limites de celle-ci. Tous utilisent une technique appelée “diffusion latente” que nous creuserons plus en détail plus loin. Cependant, l’idée derrière cette méthode est d’apprendre à un modèle à recréer des formes familières dans un champ de bruit pur. Ces formes sont modelées progressivement en si elles correspondent aux mots dans le “prompt” grâce à un mécanisme d’attention. Intuition derrière la génération d’image Une analogie pour comprendre la tâche que les ordinateurs tentent d’accomplir peut-être exprimée en examinant le raisonnement d’un.e artiste lorsqu’on lui demande de dessiner une oeuvre d’art. Dans ce scénario, nous fournissons à un.e artiste une description plus ou moins précise des caractéristiques de l’objet que nous souhaitons voir dessiner. Ensuite, l’artiste utilise son imagination pour concevoir la manière dont il peut représenter l’objet. Finalement il peut s’exécuter et produire l’oeuvre finale. Les modèles de génération d’images en intelligence artificielle tentent d’automatiser cette tâche en utilisant le modèle appelé “Transformers” pour générer des images à partir de descriptions textuelles. Principe de la diffusion La modélisation générative par diffusion est une technique puissante en intelligence artificielle pour générer des images à partir de bruit pur. Ce processus implique l’application d’un débruitage itératif, à partir d’une image bruitée. En d’autres termes, le modèle apprend à reconnaître des formes familières dans un champ de bruit pur, puis affine progressivement ces éléments s’ils correspondent aux contextes donnés en entrée. Ce processus de débruitage peut être conditionné avec une image en plus d’une image bruitée en entrée. Cette méthode de conditionnement permet au modèle de tenir compte des informations supplémentaires fournies par l’image, pour produire des images plus précises. En outre, le processus de débruitage peut également être conditionné avec du texte, ce qui est l’essence du modèle texte à image que nous avons déjà introduit. Cette technique permet de générer des images à partir de descriptions textuelles en utilisant un processus similaire de débruitage itératif. Principe de la diffusion latente Les modèles de diffusion latente sont des modèles de diffusion qui au lieu de travailler directement avec une image telle quelle utilisent une représentation de l’image compressée appelée “représentation latente”. L’utilisation de représentations latentes dans les modèles de diffusion permet à ceux-ci de travailler plus efficacement avec des données visuelles ou textuelles, en comprimant l’information en un espace plus petit, tout en préservant les informations clés. De plus, l’utilisation d’une telle méthode conduit à des performances améliorées quant aux temps et aux ressources informatiques nécessaires à la génération d’image. Travailler dans un espace aussi compressé permet également d’utiliser différents types de données, telles que le texte. Ces représentations peuvent être injectées dans les couches d’attention, qui sont les composants clés des modèles Transformers. Les couches d’attention permettent au modèle d’identifier les parties importantes de l’image ou du texte en entrée, en concentrant son attention sur les zones les plus pertinentes et ainsi générer l’image adéquate. Mécanisme de la diffusion latente Pendant le processus d’inférence, le modèle associe des mots avec des images en utilisant une technique appelée CLIP (Contrastive Language-Image Pre-training), qui a été développée par OpenAI. Ce modèle cherche à produire en sortie un vecteur correspondant à l’information latente dans le “prompt” pour aider le processus de débruitage. Une fois ce vecteur produit, celui-ci est passé à travers un réseau de neurones appelé U-Net. Celui-ci est un type spécial de réseau de neurones convolutifs (CNN) d’image à image, utile pour le débruitage itératif. Ainsi, ce réseau de neurones partant de bruit et conditionné avec l’information latente contenu dans le “prompt” dé-bruite progressivement la représentation latente de l’image à générer. Finalement, une fois cette représentation latente dé-bruiter, celle-ci est passée à travers un décodeur pour produire l’image finale. Importance du prompt engineering Comme tout modèle génératif, le prompt engineering est une partie importante pour conditionner correctement l’image que l’on souhaite générer. Voici par exemple quelques éléments importants à inclure dans un “prompt” destinés à la génération d’images : • Noms des objets : Spécifier les objets que l’on souhaite inclure dans l’œuvre • Adjectifs : Utiliser des adjectifs pour décrire le style, la couleur et la qualité de l’œuvre. • Noms d’artistes : Calquer le style d’un.e artiste en particulier. • Style artistique : Calquer un style artistique, comme “pixel-art”, “fantaisie”, “surréalisme”, “contemporain” • Qualité : Spécifier la qualité de l’image, comme “haute qualité”, “4k” ou “8k” Cette liste n’est pas exhaustive et il existe d’autres techniques plus avancées pour utiliser ces outils. Affinage d’un modèle pour un usage artistique Les modèles de diffusions stables peuvent être, comme les autres types de modèles de fondation, affinés pour effectuer une tâche en particulier. Dans le cas du texte à image, cela peut être très pertinent si l’on veut explorer certaines possibilités artistiques tout en suivant le style graphique de personnage déjà existant. Nous pouvons illustrer cette adaptation en faisant apprendre à notre modèle par exemple le style graphique des Pokémon. En ajoutant des “prompts” associées à chaque Pokémon, il est ainsi possible de
15 mars 2023
Dans cette vidéo, nous avons le plaisir d’échanger avec Sébastien Gambs, professeur au département d’informatique de l’UQAM et titulaire de la chaire de recherche du Canada en analyse respectueuse de la vie privée et éthique des données massives. Le sujet du jour porte sur l’intelligence artificielle (IA), les chatbots, l’éthique et la vie privée. Sébastien Gambs s’intéresse aux tensions existantes entre l’analyse des données massives et le respect de la vie privée, ainsi qu’aux problématiques éthiques soulevées par les systèmes personnalisés. Il souligne que l’utilisation de données massives permet de créer des services personnalisés et d’extraire des connaissances pour le bien de la société. Cependant, il est nécessaire de considérer les enjeux éthiques, notamment la protection de la vie privée, la discrimination, et la transparence. Sébastien explique que les modèles d’IA peuvent potentiellement reconstruire les données d’entraînement, ce qui pose un risque pour la vie privée des individus. De plus, ces modèles peuvent reproduire et renforcer les biais historiques s’ils sont entraînés sur des données biaisées. La transparence est également un enjeu important, car il est nécessaire d’expliquer les décisions des systèmes d’IA aux utilisateurs et de leur permettre de les contester. S’agissant de la protection du consommateur et du citoyen, notre invité évoque les efforts déployés par les comités éthiques dans la recherche publique pour mieux aborder les enjeux des données massives et de l’IA. Cependant, il souligne les difficultés rencontrées par les entreprises pour opérationnaliser ces enjeux éthiques et rendre des comptes à la société. Il mentionne également le phénomène du “blanchiment éthique” en apprentissage machine, où les entreprises donnent l’impression d’avoir pris en compte les enjeux éthiques sans réellement les résoudre. Sébastien plaide pour une législation forte pour réguler l’utilisation de l’IA, citant l’exemple du projet européen AI Act. Il estime que l’auto-régulation des entreprises a ses limites et qu’une législation solide est nécessaire pour garantir une gestion éthique et responsable de l’IA. En conclusion, cette vidéo met en lumière les défis et les enjeux éthiques liés à l’utilisation des données massives et de l’intelligence artificielle, soulignant l’importance de la législation et de la prise en compte des problématiques éthiques pour assurer une utilisation responsable et respectueuse de la vie privée.
Les enseignants cherchent toujours des moyens d’engager et de motiver leurs élèves, et la technologie de génération d’images IA peut être un outil précieux pour y parvenir. Dans cette vidéo, Élianne et Daniel explorent deux moteurs de génération d’images, DALL-E 2 et MidJourney, et présentent quelques exercices pour les intégrer dans l’éducation. DALL-E 2 est un outil en ligne facile d’accès qui permet de générer rapidement des images en entrant quelques mots clés. Cependant, les résultats peuvent varier en fonction de la précision de la description. MidJourney, accessible via Discord, offre un rendu plus artistique et magique par rapport à DALL-E 2. Ces moteurs peuvent aider les enseignants à créer des supports visuels attrayants et mémorables pour les cours. Élianne et Daniel présentent trois exemples d’exercices pour intégrer la génération d’images dans l’enseignement: 1. Explorer les courants artistiques: en modifiant légèrement la requête, MidJourney peut générer des images dans différents styles artistiques, tels que le cubisme ou l’art optique. 2. Visualiser la poésie: en utilisant des extraits de poèmes ou de chansons comme requêtes, MidJourney peut générer des images intéressantes et variées qui peuvent être utilisées comme supports visuels dans les présentations. 3. Représenter visuellement des concepts théoriques: en créant des images pour des concepts scolaires, les enseignants peuvent aider les élèves à mieux mémoriser et comprendre certains themes. Par exemple, représenter une crevette avec des gants de boxe. Les enseignants peuvent également jouer avec les paramètres et les commandes de MidJourney pour influencer les résultats des images générées. Le paramètre Blend, par exemple, permet de fusionner deux à cinq images pour créer des résultats amusants et ludiques.
Dans cette courte vidéo, apprenez comment vous pouvez vous-même commencer à utilser MidJourney!
Qu’est-ce que maîtriser le langage ? Si l’on devait faire une analogie avec la linguistique, les langues sont apprises et enseignées à partir de 4 compétences langagières de base : • Compréhension écrite (modèles de compréhension) • Compréhension orale (modèles de compréhension) • Expression écrite (modèles d’expression) • Expression orale (modèles d’expression) Comment l’ordinateur et l’humain comprennent-ils le langage ? En comparaison avec les machines, l’acquisition du langage chez les êtres humains se déroule différemment. En effet, les humains peuvent comprendre celui-ci avant même de savoir lire. Cela signifie que, dès leur plus jeune âge, ils sont capables de communiquer sans nécessairement connaître les règles grammaticales. Au fil du temps, ceux-ci apprennent à transformer leur langage oral en langage écrit, leur permettant ainsi de lire et d’écrire. Une fois qu’ils ont maîtrisé la lecture, ils peuvent apprendre à reconnaître des mots qu’ils connaissaient déjà uniquement à l’oral. Les machines, quant à elles, ne sont pas capables d’interpréter le langage de cette façon. Les chercheurs doivent donc développer des systèmes qui leur permettent de traiter le texte sans avoir la capacité, comme les humains, de relier les sons à la signification des mots. Ainsi, ces systèmes doivent être bâtis sur des méthodes qui n’ont pas de connaissance préalable du langage. Cela crée le dilemme classique de “la poule et l’œuf” : comment les machines peuvent-elles commencer à traiter du texte si elles ne connaissent rien à la grammaire, aux sons, aux mots ou aux phrases. La solution est d’utiliser ce que l’on appelle des modèles de langage. Ces modèles sont en quelque sorte des cerveaux numériques qui comprennent le langage humain et permettent aux machines de réaliser certaines tâches telles que la: • Traduction automatique • Reconnaissance de la parole • Récupération de l’information • Génération d’articles de presse Compréhension de l’ordinateur L’architecture utilisée pour que l’ordinateur apprenne et maîtrise notre langage est composée d’un encodeur et d’un décodeur. Pour mieux comprendre ce processus, il est possible de réaliser une expérience de pensée : 1. Tout d’abord, choisir un objet dans l’environnement proche et le fixer du regard pendant une dizaine de secondes 2. Ensuite, imaginer cet objet dans sa tête. 3. Finalement, prendre un crayon et essayer de dessiner cet objet. Concrètement nous venons de (1) encoder l’objet dans ta tête, (2) se l’imaginer en représentation compressée que l’on appelle aussi représentation latente, (3) décoder l’objet sur papier. Ce processus permet de comprendre comment un ordinateur apprend et utilise un modèle de langage. Lors de cette expérience de pensée, l’objet est d’abord encodé dans la tête de la personne (1), puis il est imaginé dans une représentation compressée, également appelée représentation latente (2). Enfin, l’objet est décodé sur le papier (3). C’est exactement comme ça qu’un ordinateur apprend et utilise un modèle de langage. La représentation latente représente une version compressée de l’image de l’objet. C’est à ce niveau que l’on peut puiser dans sa base de connaissances pour établir des liens avec l’information qui a été encodée. En pratique, au lieu de montrer un objet, il est possible de donner une description plus ou moins précise de ses caractéristiques. La personne essaiera alors de s’imaginer l’objet avant de le dessiner. On peut répéter cette logique avec toutes sortes de systèmes de signes. Modèles de langage La même logique peut être appliquée pour le traitement du langage naturel. Dans le cas de la traduction, l’architecture encodeur-décodeur peut être comparée à deux traducteurs humains qui parlent seulement deux langues : leur langue maternelle et une langue imaginaire qu’ils ont en commun. Par exemple, s’ils parlent l’allemand et le français, l’encodeur convertira la phrase allemande en la langue imaginaire qu’ils partagent, et le décodeur pourra alors traduire la phrase en français. Cette approche permet de traduire des phrases d’une langue à une autre en utilisant une langue intermédiaire commune. Cette méthode est utilisée dans les systèmes de traduction automatique qui sont basés sur des modèles de langage et des algorithmes d’apprentissage automatique. Il est également possible d’utiliser cette architecture encodeur-décodeur pour d’autres tâches, comme la génération de textes. Par exemple, l’encodeur pourrait fournir un contexte et le décodeur serait responsable de produire un article de presse. Transformers L’architecture Transformer a été développée par Google en 2017. Elle permet d’entraîner notre fameux modèle de langage. Cette architecture utilise un encodeur et un décodeur, comme introduit précédemment. Toutefois, elle intègre un nouveau mécanisme appelé l’attention pour permettre à l’ordinateur de mieux comprendre le contexte d’une phrase. En effet, les méthodes précédentes avaient des limites de mémoire qui ne permettaient pas de comprendre le contexte complet d’une phrase. Les Transformers ont connu un succès fulgurant en raison de leur efficacité à traiter le texte et ont établi de nouveaux standards en termes de performance. Cette architecture a permis des avancées significatives dans le domaine de la compréhension du langage naturel, notamment autour de la traduction automatique et de la génération de texte. Les modèles de compréhension et d’expression sont deux applications clés de ces modèles, Les modèles de compréhension Les modèles de compréhension utilisent la portion encodeur d’un modèle de langage. C’est comme si l’on donnait à un humain un texte et qu’on lui demandait de faire des tâches directement sur ce texte. Le modèle le plus connu est BERT. Les modèles d’expression Les modèles d’expression (ou modèles génératifs) utilisent la portion encodeur puis décodeur d’un modèle de langage. C’est comme si l’on donnait à un humain un contexte et qu’on lui demandait de créer du contenu à partir de celui-ci. Le modèle le plus connu est GPT-3 aussi utilisé par ChatGPT. Comment ces modèles sont-ils entraînés ? Les modèles de compréhension Afin de comprendre un texte, il est important de comprendre les mots qui le composent ainsi que leur contexte. C’est l’idée qui est utilisée ici pour les modèles de compréhension. Le modèle reçoit une séquence de mots et doit prédire le mot manquant dans la séquence en se basant sur le contexte fourni par les mots environnants. Exemple : Le
11 mars 2023
Dans cette vidéo, Sandrine Prom Tep et Claudine Bonneau, professeures à l’UQAM, discutent avec des experts du domaine des chatbots et de l’intelligence artificielle (IA) pour mieux comprendre leur fonctionnement et leurs applications. Les chatbots sont intégrés dans diverses plateformes, comme les sites Web, les applications mobiles et les services de messagerie tels que Messenger de Facebook. Ils peuvent être basés sur des règles précises et une architecture d’arbre de décision ou utiliser l’IA pour offrir une expérience plus fluide et adaptable. Simon Taille, scientifique de données chez ElligencIA, explique que les chatbots basés sur l’IA nécessitent une phase de préentrainement pour acquérir une compréhension du langage. Ils peuvent être ensuite entraînés pour effectuer des tâches spécifiques. Les chatbots de type génératif génèrent des réponses en fonction du contexte, tandis que les chatbots non génératifs puisent des réponses préexistantes dans une base de connaissances. Pour améliorer un chatbot, il est important de vérifier la qualité des données d’entraînement et d’ajouter des exemples pertinents. Les interactions avec les utilisateurs humains peuvent également être utilisées pour réentraîner le chatbot et le rendre plus précis. Pierre Rosin, chef de produit IA au Centre Collégial de transfert de technologie JACOBB, souligne l’importance du traitement automatique du langage naturel (TALN) dans le développement des chatbots. Le TALN est une sous-branche de l’IA qui traite les données textuelles non structurées. Des modèles tels que GPT-3 d’OpenAI représentent des avancées majeures dans ce domaine. En résumé, les chatbots et l’intelligence artificielle révolutionnent l’expérience client en offrant des interactions plus fluides et personnalisées. La qualité et la quantité des données d’entraînement sont essentielles pour créer des chatbots performants et adaptés aux besoins des utilisateurs.
10 mars 2023
Dans cette vidéo éducative, Claudine Bonneau, professeure au département d’Analytique, Opérations et technologies de l’information de l’UQAM, et Sandrine Prom Tep, professeure au département de Marketing, explorent le monde des chatbots et leur impact sur l’expérience utilisateur. Les chatbots, également appelés agents conversationnels, sont des programmes automatisés permettant de communiquer avec les humains par le biais de la voix ou d’échanges textuels. Ils sont utilisés dans divers secteurs d’activité, notamment la santé, les services commerciaux et les services gouvernementaux. Les chatbots peuvent être classés en plusieurs catégories: serviciels, expérientiels, commerciaux et divertissement. Ils sont utilisés pour aider les clients dans leurs interactions avec les entreprises, en personnalisant leurs réponses en fonction des données dont ils disposent. Les chatbots peuvent également être utilisés en interne pour soutenir les employés dans leurs activités quotidiennes. Les avantages de l’utilisation des chatbots incluent des réponses instantanées et une disponibilité 24/7, ce qui permet d’économiser du temps et de l’énergie pour les clients et les employés. Les utilisateurs apprécient généralement l’interaction avec un chatbot, car il ne porte pas de jugement et peut offrir une expérience plus conviviale et personnalisée que de naviguer sur un site web. Cependant, l’appréciation des chatbots varie en fonction des facteurs sociodémographiques, tels que l’âge. Les millénariaux apprécient généralement les aspects ludiques et émotionnellement engageants des chatbots, tandis que les utilisateurs plus âgés se concentrent davantage sur l’efficacité et l’efficience. En somme, les chatbots ont un impact significatif sur l’expérience utilisateur et peuvent offrir de nombreux avantages lorsqu’ils sont bien conçus et utilisés à bon escient.