Passer au contenu
Cet article a été traduit du japonais à l'aide de l'IA
Lire en japonais
Cet article est dans le domaine public (CC0). N'hésitez pas à l'utiliser librement. CC0 1.0 Universal

Système d'Intelligence Artificielle d'Apprentissage : Le Concept ALIS

Dans ce document, j'ai pour objectif d'organiser le Système d'Intelligence Artificielle d'Apprentissage (ALIS) en couvrant ses concepts et principes, jusqu'à sa conception de base et ses méthodes de développement.

Concept

L'IA générative actuelle, principalement les grands modèles linguistiques, est entraînée sur la base d'un apprentissage supervisé utilisant des réseaux neuronaux.

Nous considérons ce processus d'entraînement des réseaux neuronaux comme un apprentissage inné.

ALIS est un système qui permet une inférence complète en intégrant les processus d'apprentissage inné et acquis, en incorporant un processus d'apprentissage acquis distinct de l'apprentissage inné.

Dans cet apprentissage acquis, les connaissances acquises sont stockées en dehors du réseau neuronal et utilisées lors de l'inférence.

Par conséquent, le cœur technique d'ALIS réside dans l'extraction, le stockage des connaissances réutilisables, ainsi que la sélection et l'utilisation des connaissances pendant l'inférence.

De plus, ALIS n'est pas simplement une technologie élémentaire unique, mais aussi une technologie système qui combine l'apprentissage inné et l'apprentissage acquis.

Éléments d'un Système d'Intelligence d'Apprentissage

ALIS considère que l'apprentissage inné existant et l'apprentissage acquis futur fonctionnent selon les mêmes principes dans le cadre de l'apprentissage et de l'inférence.

Pour expliquer les principes de l'apprentissage dans ALIS, nous définissons cinq éléments d'un système d'intelligence d'apprentissage :

Le premier est le Processeur Intelligent. Il s'agit d'un système de traitement qui effectue des inférences en utilisant des connaissances et extrait des connaissances pour l'apprentissage.

Des exemples représentatifs de processeurs intelligents incluent les LLM et certaines parties du cerveau humain.

Le second est le Magasin de Connaissances. Il s'agit d'un emplacement de stockage où les connaissances extraites sont sauvegardées et peuvent être récupérées au besoin.

Dans les LLM, le magasin de connaissances est constitué des paramètres du réseau neuronal. Chez les humains, il correspond à la mémoire à long terme du cerveau.

Le troisième est le Monde. Il s'agit de l'environnement externe tel que perçu par les systèmes d'intelligence d'apprentissage tels que les humains ou ALIS.

Pour les humains, le monde est la réalité elle-même. Dans le cas des LLM, le mécanisme qui reçoit la sortie du LLM et lui fournit un retour est considéré comme l'équivalent du monde.

Le quatrième est la Mémoire d'État. Il s'agit d'une mémoire temporaire interne, comme un bloc-notes, qu'un système d'intelligence d'apprentissage utilise pendant l'inférence.

Dans les LLM, il s'agit de l'espace mémoire utilisé pendant l'inférence, connu sous le nom d'états cachés. Chez les humains, elle correspond à la mémoire à court terme.

Le cinquième est le Cadre. Il s'agit du cadre de pensée. Dans la terminologie d'un système d'intelligence d'apprentissage, il fait référence aux critères de sélection des connaissances nécessaires pendant l'inférence et à la structure logique de l'espace d'état pour organiser la mémoire d'état.

Dans les LLM, c'est la structure sémantique des états cachés, et généralement, son contenu est vague et incompréhensible pour les humains. De plus, la sélection des connaissances est intégrée au mécanisme d'attention, qui sélectionne les jetons existants à référencer pour chaque jeton en cours de traitement.

Pour les humains, comme mentionné ci-dessus, il s'agit du cadre de pensée. Lorsque l'on pense en utilisant un cadre de pensée spécifique, certains ensembles de savoir-faire sont rappelés de la mémoire à long terme et chargés dans la mémoire à court terme. Ensuite, les informations actuellement perçues sont organisées selon le cadre de pensée pour comprendre la situation.

Principes d'un Système d'Intelligence d'Apprentissage

Un système d'intelligence d'apprentissage fonctionne comme suit :

Le processeur intelligent agit sur le monde. Le monde répond avec des résultats basés sur cette action.

Le processeur intelligent extrait des connaissances réutilisables de ces résultats et les stocke dans le magasin de connaissances.

Lorsque le processeur intelligent agit de manière répétée sur le monde, il sélectionne des connaissances dans le magasin de connaissances et les utilise pour modifier son mode d'action.

C'est le mécanisme de base.

Cependant, fondamentalement, les méthodes d'extraction, de stockage, de sélection et d'utilisation des connaissances déterminent si le système peut réaliser un apprentissage significatif.

Les humains possèdent des mécanismes qui permettent une extraction, un stockage, une sélection et une utilisation efficaces des connaissances, ce qui leur permet d'apprendre.

Les réseaux neuronaux, y compris les LLM, disposent de mécanismes de stockage, de sélection et d'utilisation, bien que la partie extraction soit gérée par un enseignant externe. Cela leur permet d'apprendre tant qu'un enseignant fournit l'entrée.

De plus, un système d'intelligence d'apprentissage peut réaliser un apprentissage plus complexe en apprenant également l'extraction, le stockage et la sélection des cadres, ainsi que leur utilisation dans la mémoire d'état, en tant que connaissances.

Types de Connaissances

En se basant sur ce principe, lors de la conception de l'apprentissage acquis, il est nécessaire de clarifier la forme d'information que prendra la connaissance acquise.

Il est envisageable d'apprendre les connaissances acquises séparément en tant que paramètres d'un réseau neuronal.

Cependant, les connaissances acquises n'ont pas besoin d'être limitées uniquement aux paramètres du réseau neuronal. Une option réaliste est la connaissance textuelle en langage naturel.

Si la connaissance est textuelle en langage naturel, elle peut être extraite et utilisée en exploitant les capacités de traitement du langage naturel des LLM. De plus, elle peut être traitée comme des données dans un système informatique standard, ce qui facilite le stockage et la sélection.

En outre, la connaissance textuelle en langage naturel est facile à vérifier, à comprendre et, dans certains cas, à modifier pour les humains et les autres LLM.

Elle peut également être partagée avec d'autres systèmes d'intelligence d'apprentissage, et être fusionnée ou divisée.

Pour ces raisons, la connaissance acquise dans le concept ALIS sera initialement conçue pour cibler la connaissance textuelle en langage naturel.

Mémoire d'État Acquise et Cadre

J'ai expliqué les avantages de choisir les connaissances textuelles en langage naturel comme connaissances acquises.

De même, le texte en langage naturel peut également être utilisé pour la mémoire d'état et le cadre d'inférence.

Le cadre, qui est une structure conceptuelle, peut également être stocké et utilisé dans le magasin de connaissances en tant que connaissance textuelle en langage naturel.

Lors de l'initialisation ou de la mise à jour des états basés sur la structure définie par ce cadre, une mémoire d'état basée sur le texte peut être utilisée.

En concevant ALIS pour utiliser le format texte non seulement pour les connaissances acquises mais aussi pour les cadres et la mémoire d'état, ALIS peut exploiter les capacités de traitement du langage naturel des LLM pour l'apprentissage acquis et l'inférence générale.

Connaissance Formelle

Les connaissances acquises, les cadres et la mémoire d'état peuvent être représentés non seulement par du texte en langage naturel, mais aussi par des langages formels ou des modèles formels plus rigoureux.

Bien que j'aie écrit "sélectionner", l'objectif d'ALIS est d'incorporer de multiples mécanismes d'apprentissage des connaissances acquises pour permettre une utilisation hybride de l'apprentissage inné et acquis.

Les connaissances représentées par des langages formels ou des modèles formels peuvent être plus rigoureuses et exemptes d'ambiguïté.

De plus, si un cadre est exprimé à l'aide d'un langage formel ou d'un modèle formel, et qu'un état initial est étendu dans la mémoire d'état, alors un modèle formel peut être traité par un processeur intelligent (pas un LLM) pour effectuer des simulations rigoureuses et un raisonnement logique.

Un excellent exemple de tels langages formels et modèles formels est celui des langages de programmation.

À mesure que le système apprend sur le monde, s'il peut exprimer les lois et les concepts sous-jacents sous forme de programmes au sein d'un cadre, ceux-ci peuvent alors être simulés par un ordinateur.

Colonne 1 : Types de Connaissances

En organisant les connaissances au sein d'un système d'intelligence d'apprentissage, il devient clair qu'elles peuvent être globalement classées en trois systèmes et deux types.

Les trois systèmes sont : la connaissance des paramètres de réseau traitée par les réseaux neuronaux, la connaissance naturelle en langage naturel, et la connaissance formelle en langages formels.

Les deux types sont sans état (stateless) et avec état (stateful).

La connaissance des paramètres de réseau sans état est une connaissance intuitive, comme celle que l'on trouve dans l'IA d'apprentissage profond. Les caractéristiques des chats et des chiens, qui ne peuvent être pensées ou identifiées verbalement, peuvent être apprises comme connaissance des paramètres de réseau sans état.

La connaissance des paramètres de réseau avec état est une connaissance floue, dérivée de processus itératifs, comme celle que l'on trouve dans l'IA générative.

La connaissance naturelle sans état est une connaissance telle que le sens associé à un mot.

La connaissance naturelle avec état est une connaissance incluant le contexte trouvé dans une phrase.

Certaines connaissances naturelles sont intrinsèquement incluses dans la connaissance des paramètres de réseau avec état, mais il existe aussi des connaissances qui peuvent être acquises post-natalement à partir de texte en langage naturel.

La connaissance formelle sans état est une connaissance qui peut être exprimée par des formules mathématiques n'incluant pas d'itération. La connaissance formelle avec état est une connaissance qui peut être exprimée par des programmes.

La mémoire à court terme du cerveau peut également être utilisée comme mémoire d'état pour les connaissances naturelles et formelles.

Cependant, comme il s'agit d'une mémoire à court terme, il est difficile de maintenir un état stable. De plus, elle n'est pas douée pour retenir des connaissances dans un état formalisé et non ambigu.

D'autre part, le papier, les ordinateurs ou les smartphones peuvent être utilisés comme mémoire d'état pour écrire et modifier du texte en langage naturel, des langages formels ou des modèles formels.

Généralement, les données sur papier ou sur ordinateur sont souvent perçues comme un moyen de stocker des connaissances en tant que magasin de connaissances, mais elles peuvent aussi être utilisées comme mémoire d'état pour organiser les pensées.

Ainsi, il est évident que les humains réalisent des activités intellectuelles en utilisant habilement ces trois systèmes et deux types de connaissances.

ALIS a également le potentiel d'améliorer considérablement ses capacités en permettant et en renforçant les activités intellectuelles qui exploitent ces mêmes trois systèmes et deux types de connaissances.

En particulier, ALIS a la force de pouvoir utiliser de vastes magasins de connaissances et une grande mémoire d'état. De plus, il peut facilement préparer de multiples instances de chacun et effectuer des tâches intellectuelles en les basculant ou en les combinant.

Colonne 2 : Orchestration Intellectuelle

Bien qu'il soit avantageux de pouvoir stocker une grande quantité de connaissances dans le magasin de connaissances, la simple possession d'une grande quantité de connaissances n'est pas nécessairement un atout pour l'activité intellectuelle, en raison des limitations du nombre de jetons qu'une IA générative peut utiliser simultanément et de la contrainte selon laquelle les connaissances non pertinentes deviennent du bruit.

D'autre part, en segmentant de manière appropriée le magasin de connaissances et en créant des magasins de connaissances spécialisés à haute densité qui regroupent les connaissances nécessaires à des tâches intellectuelles spécifiques, les problèmes de limites de jetons et de bruit peuvent être atténués.

En contrepartie, ces magasins de connaissances spécialisés ne seraient utilisables que pour ces tâches intellectuelles spécifiques.

De nombreuses activités intellectuelles sont des combinaisons complexes de diverses tâches intellectuelles. Par conséquent, en divisant les connaissances en magasins de connaissances spécialisés en fonction du type de tâche intellectuelle et en subdivisant l'activité intellectuelle en tâches intellectuelles, ALIS peut exécuter l'ensemble de l'activité intellectuelle en basculant de manière appropriée entre les magasins de connaissances spécialisés.

Ceci est comparable à un orchestre composé de musiciens professionnels jouant différents instruments et d'un chef d'orchestre dirigeant l'ensemble.

Grâce à cette technologie système, "l'orchestration intellectuelle", ALIS sera en mesure d'organiser ses activités intellectuelles.

Conception de Base et Méthode de Développement d'ALIS

À partir d'ici, j'organiserai l'approche de développement pour ALIS.

Comme déjà mentionné dans les principes et les colonnes, ALIS est intrinsèquement conçu pour étendre facilement ses fonctions et ses ressources. Cela s'explique par le fait que l'essence d'ALIS ne réside pas dans des fonctions spécifiques, mais dans les processus d'extraction, de stockage, de sélection et d'utilisation des connaissances.

Par exemple, plusieurs types de mécanismes d'extraction de connaissances peuvent être préparés, puis sélectionnés ou utilisés simultanément, selon la conception du système.

De plus, ALIS peut être configuré pour effectuer cette sélection lui-même.

Le stockage, la sélection et l'utilisation peuvent de même être librement sélectionnés ou parallélisés.

Par conséquent, ALIS peut être développé de manière incrémentale et agile, sans avoir besoin de concevoir l'intégralité des fonctionnalités de manière séquentielle (en cascade).

Les Débuts d'ALIS

Concevons maintenant une version très simple d'ALIS.

L'interface utilisateur de base sera l'IA de chat familière. Initialement, l'entrée de l'utilisateur sera transmise directement au LLM. La réponse du LLM sera ensuite affichée sur l'interface utilisateur, et le système attendra la prochaine entrée de l'utilisateur.

Lorsque l'entrée suivante arrivera, le LLM recevra non seulement la nouvelle entrée, mais aussi l'intégralité de l'historique de chat entre l'utilisateur et le LLM jusqu'à ce point.

Derrière cette interface utilisateur d'IA de chat, nous préparerons un mécanisme pour extraire des connaissances réutilisables de l'historique du chat.

Ceci peut être ajouté au système d'IA de chat comme un processus exécuté à la fin d'une conversation ou à intervalles réguliers. Bien entendu, un LLM sera utilisé pour l'extraction des connaissances.

Ce LLM recevra le concept et les principes d'ALIS, ainsi que le savoir-faire en matière d'extraction de connaissances, sous forme de prompts système. Si les connaissances ne sont pas extraites comme prévu, les prompts système devront être affinés par essais et erreurs.

Les connaissances extraites de l'historique du chat seront stockées directement dans un lac de connaissances (knowledge lake). Un lac de connaissances est un mécanisme permettant de stocker simplement les connaissances dans un état plat et non structuré avant qu'elles ne soient structurées.

Ensuite, nous préparerons un mécanisme de structuration pour faciliter la sélection des connaissances à partir du lac de connaissances.

Cela implique de fournir des magasins de vecteurs d'intégration pour la recherche sémantique, comme cela est typiquement utilisé dans RAG, et des index de mots-clés, entre autres.

Des options plus avancées incluent la génération d'un graphe de connaissances ou la classification par catégories.

Cette collection d'informations structurées pour le lac de connaissances sera appelée une base de connaissances. L'ensemble de cette base de connaissances et du lac de connaissances constituera le magasin de connaissances.

Ensuite, nous intégrerons le magasin de connaissances dans le traitement de l'interface utilisateur du chat.

Ceci est fondamentalement identique à un mécanisme RAG général. Pour l'entrée de l'utilisateur, les connaissances pertinentes sont sélectionnées dans le magasin de connaissances et transmises au LLM avec l'entrée de l'utilisateur.

Cela permet au LLM d'utiliser automatiquement les connaissances lors du traitement de l'entrée de l'utilisateur.

De cette manière, les connaissances s'accumuleront à chaque conversation avec l'utilisateur, réalisant un ALIS simple qui utilise les connaissances accumulées à partir des conversations passées.

Scénario Simple

Par exemple, imaginez un utilisateur développant une application web à l'aide de cette version simple d'ALIS.

L'utilisateur signale que le code proposé par le LLM a entraîné une erreur. Après que l'utilisateur et le LLM collaborent pour résoudre le problème, ils découvrent que la spécification de l'API externe connue du LLM était obsolète, et le programme fonctionne correctement après avoir été adapté à la dernière spécification de l'API.

À partir de ce fil de discussion, ALIS pourrait alors accumuler des connaissances dans son magasin de connaissances : spécifiquement, que la spécification de l'API connue du LLM est ancienne, et quelle est la dernière spécification de l'API.

Ensuite, la prochaine fois qu'un programme utilisant la même API sera créé, ALIS pourrait exploiter ces connaissances pour générer un programme basé sur la dernière spécification de l'API dès le départ.

Améliorations d'ALIS Initial

Cependant, pour que cela se produise, cette connaissance doit être sélectionnée en réponse à l'entrée de l'utilisateur. Il est possible que cette connaissance ne soit pas directement liée à l'entrée de l'utilisateur, car le nom de l'API problématique pourrait ne pas apparaître dans l'entrée de l'utilisateur.

Dans ce cas, le nom de l'API n'apparaîtrait que lors de la réponse du LLM.

Par conséquent, nous allons légèrement étendre le simple ALIS en ajoutant des mécanismes de pré-analyse et de post-vérification.

La pré-analyse est similaire au "mode de pensée" des LLM récents. Une mémoire capable de contenir du texte comme mémoire d'état sera préparée, et le prompt système instruira le LLM d'effectuer une pré-analyse lors de la réception de l'entrée de l'utilisateur.

Le résultat de la pré-analyse du LLM sera stocké dans la mémoire d'état. Sur la base de ce résultat de pré-analyse, des connaissances seront sélectionnées dans le magasin de connaissances.

Ensuite, l'historique du chat, le résultat de la pré-analyse, les connaissances correspondant à l'entrée de l'utilisateur, et les connaissances correspondant au résultat de la pré-analyse seront transmis au LLM pour recevoir une réponse.

De plus, le résultat renvoyé par le LLM sera également utilisé pour rechercher des connaissances dans le magasin de connaissances. Incluant les connaissances trouvées à cet endroit, le LLM sera invité à effectuer une post-vérification.

Si des problèmes sont détectés, les points problématiques et les raisons de l'指摘 (remarque/critique) seront inclus et retransmis au LLM de chat.

En offrant des opportunités de sélectionner des connaissances pendant la pré-analyse et la post-vérification, nous pouvons augmenter les chances d'utiliser les connaissances accumulées.

Perspectives

Cette approche, consistant à construire un ALIS initial puis à y apporter des améliorations pour pallier ses faiblesses, illustre parfaitement le développement agile et l'amélioration incrémentielle d'ALIS.

De plus, comme illustré, l'ALIS initial est le plus adapté à une utilisation dans le développement logiciel. Cela s'explique par le fait qu'il s'agit d'un domaine très demandé et également d'un domaine où les connaissances peuvent être accumulées facilement et clairement.

C'est un genre où les choses sont clairement en noir ou blanc, tout en étant un domaine crucial où l'expérimentation par essais et erreurs et l'accumulation itérative de connaissances sont nécessaires et importantes.

De plus, puisque le développement d'ALIS est lui-même du développement logiciel, le fait que les développeurs d'ALIS puissent être eux-mêmes des utilisateurs d'ALIS est également attrayant.

Et, parallèlement au système ALIS, le lac de connaissances (knowledge lake) peut également être partagé ouvertement sur des plateformes comme GitHub.

Cela permettrait à de nombreuses personnes de collaborer à l'amélioration du système ALIS et à l'accumulation de connaissances, chacun bénéficiant des résultats, ce qui accélérerait encore le développement d'ALIS.

Bien sûr, le partage des connaissances ne se limite pas aux développeurs d'ALIS, mais peut être recueilli auprès de tous les développeurs de logiciels utilisant ALIS.

Le fait que les connaissances soient en langage naturel offre deux avantages supplémentaires :

Le premier avantage est que les connaissances peuvent être exploitées même lorsque le modèle LLM change ou est mis à jour.

Le deuxième avantage est que le vaste lac de connaissances accumulées peut être utilisé comme ensemble de données de pré-entraînement pour les LLM. Cela peut se faire de deux manières : en l'utilisant pour le fine-tuning, ou en l'utilisant pour le pré-entraînement du LLM lui-même.

Dans tous les cas, si des LLM qui ont appris de manière innée les connaissances accumulées dans le lac de connaissances peuvent être utilisés, le développement logiciel deviendra encore plus efficace.

En outre, au sein du développement logiciel, il existe divers processus tels que l'analyse des exigences, la conception, l'implémentation, les tests, l'exploitation et la maintenance, et des connaissances spécialisées existent pour chaque domaine et plateforme logicielle. Si un mécanisme est créé pour segmenter la vaste connaissance accumulée selon ces perspectives, un orchestre ALIS peut également être formé.

Ainsi, les technologies élémentaires pour ALIS sont en place. La clé est maintenant d'essayer pratiquement diverses méthodes – telles que le savoir-faire en extraction de connaissances, la sélection appropriée des connaissances, la segmentation des connaissances spécialisées et la manière d'utiliser la mémoire d'état – afin de découvrir des approches efficaces. De plus, à mesure que la complexité augmente, le temps de traitement et les coûts d'utilisation du LLM augmenteront, nécessitant une optimisation.

Ces processus d'essais et erreurs et d'optimisation peuvent être poursuivis de manière adaptative grâce au développement et à l'amélioration des cadres.

Initialement, les développeurs, en tant qu'utilisateurs, intégreront probablement des cadres dans ALIS par essais et erreurs. Cependant, même alors, le LLM lui-même peut être amené à générer des idées de cadres.

Et en incorporant dans ALIS des cadres qui améliorent ou découvrent des cadres basés sur les résultats reçus du monde et les connaissances extraites, ALIS lui-même effectuera des essais et erreurs et une optimisation de manière adaptative.

ALIS dans le Monde Réel

Une fois qu'ALIS aura été affiné à ce stade, il devrait être capable d'apprendre des connaissances non seulement dans le monde du développement logiciel, mais aussi plus largement dans divers domaines.

À l'instar du développement logiciel, ALIS devrait étendre son champ d'application à diverses activités intellectuelles que les humains réalisent à l'aide d'ordinateurs.

Même dans de telles activités purement intellectuelles, ALIS possède une sorte de nature d'IA incarnée (embodied AI) par rapport au monde cible.

C'est parce qu'il reconnaît la frontière entre lui-même et le monde, agit sur le monde à travers cette frontière, et peut percevoir les informations reçues du monde.

Ce que nous appelons généralement un "corps" est une frontière avec le monde qui est physiquement visible et localisée en un seul endroit.

Cependant, même si la frontière est invisible et spatialement distribuée, la structure de perception et d'action à travers une frontière est la même que celle d'un corps physique.

En ce sens, ALIS, lorsqu'il effectue des activités intellectuelles, peut être considéré comme possédant la nature d'une IA virtuellement incarnée.

Et une fois qu'ALIS sera affiné à un stade où il pourra apprendre de manière appropriée même dans des mondes nouveaux et inconnus, il est possible qu'ALIS puisse être intégré comme partie d'une véritable IA incarnée qui possède un corps physique.

De cette manière, ALIS sera finalement appliqué au monde réel et commencera à apprendre de celui-ci.