Créer des ennuis !
L'IA a "regardé" la façon dont les humains soumettent des mises à jour (commits) sur GitHub, puis a imité les programmeurs humains pour modifier le code...
En fin de compte, cette IA a également réussi à "entraîner" un robot intelligent :
Sans blague, ce genre de chose horrible s'est réellement produit dans une étude récente publiée par OpenAI...
À l'origine, ce que les chercheurs voulaient résoudre était un problème de programmation génétique (GP) : laisser un robot intelligent apprendre à bouger .
(GP est un domaine spécial de l'informatique évolutive. Il vise principalement à créer automatiquement des programmes pour résoudre des problèmes de manière indépendante.)
Mais OpenAI a adopté une approche différente et a intégré son propre modèle de langage à grande échelle (LLM). Le résultat C'est un gros "jamais attendu".
Dans le passé, dans le processus d'évolution des agents intelligents, les chercheurs humains devaient participer à des ajustements détaillés et à la détermination de la direction de l'évolution, afin que l'agent intelligent puisse se développer dans la bonne direction.
C'est mieux maintenant. Toutes ces tâches sont prises en charge par le grand modèle. Vous pouvez apprendre, écrire du code et « apprendre » vous-même :
Une fois que le premier auteur de l'article, Joel Lehman, a exposé cette affaire. sur Internet, cela a immédiatement attiré beaucoup d'attention des internautes :
Un internaute programmeur a déclaré après l'avoir lu qu'il "ne peut pas suivre le rythme du développement (technologique)" :
Même OpenAI lui-même a déclaré dans la recherche :
Combler le fossé entre les algorithmes évolutifs fonctionnant au niveau de l'esprit humain.
Alors, comment l'IA a-t-elle réalisé cette chose « magique » ?
Concevoir des robots mobiles dans un environnement virtuel est un projet très populaire dans la recherche sur les algorithmes génétiques.
Le concours Sodarace est particulièrement très populaire car il nécessite moins de calculs et le processus peut être facilement visualisé.
Les règles sont simples, des robots composés d'"articulations" et de "muscles" courent sur des terrains variés.
OpenAI a également délibérément réécrit l'intégralité du programme du concours, du codage génétique dédié à une version Python afin de démontrer la polyvalence de la nouvelle méthode dans les langages de programmation modernes.
Par exemple, ce morceau de code Python peut être utilisé comme robot seed initial.
Après avoir défini les quatre articulations de sommet et les articulations d'extrémité d'un carré, et les avoir reliées avec des "muscles", le résultat est le suivant.
Cependant, une telle structure carrée ne peut pas bouger du tout. Ensuite, le code doit être modifié par un algorithme génétique.
L'équipe de recherche estime qu'il existe encore deux écarts d'efficacité entre l'utilisation d'algorithmes génétiques traditionnels pour modifier le code et les programmeurs humains qui le font eux-mêmes :
La première est que les logiciels deviennent de plus en plus complexes et que les humains peuvent utiliser la réutilisation modulaire du code. pour y faire face. Les algorithmes génétiques les plus avancés ne peuvent actuellement pas le faire dans les langages de programmation utilisés par les humains.
L'autre est que presque tous les algorithmes génétiques reposent sur des mutations aléatoires, et chaque fois que les programmeurs humains modifient le code, ils ont un objectif, soit pour ajouter des fonctionnalités, pour améliorer l'efficacité ou pour corriger des bugs.
Alors, existe-t-il un moyen pour l'IA d'apprendre comment les humains modifient le code ?
Oui, les données de formation requises sont toutes stockées sur GitHub.
Les excellents programmeurs écriront une description du commit chaque fois qu'ils soumettent du code, expliquant clairement ce qui a été modifié dans cette soumission.
La description du commit combinée aux données de comparaison comparant le code avant et après la soumission est un excellent matériel d'apprentissage pour l'IA.
Les chercheurs ont examiné certaines données soumises avec des descriptions claires et de petites quantités de code modifié pour former un modèle d'IA d'architecture GPT-3.
Cela équivaut à laisser l'IA apprendre des programmeurs humains comment modifier délibérément un morceau de code.
Le modèle utilisé dans cet article n'a pas besoin d'être aussi grand que les 175 milliards de paramètres de la version complète de GPT-3, et jusqu'à 750 millions de paramètres suffisent.
On obtient ainsi le modèle de base de l'IA, qui jouera le rôle d'opérateur de mutation dans l'algorithme génétique.
Le prochain processus consistant à laisser l'IA concevoir un nouveau robot est divisé en trois étapes.
Dans un premier temps, utilisez l'algorithme classique MAP-Elites pour générer un premier ensemble de robots.
Il s'agit d'un algorithme QD (Quality Diversity) qui garantit que les robots se comportent différemment et sont tous de haute qualité.
La deuxième étape consiste à utiliser les données initiales générées lors de la première étape pour la pré-formation, afin que l'IA puisse d'abord apprendre à concevoir des robots au sein de la distribution des données de formation.
C’est l’image animée du début qui a étonné tout le monde sur Internet, montrant comment l’IA transforme un « bloc » immobile en un robot mobile avec des jambes alternées rebondissant pas à pas.
La troisième étape, combinée à l'algorithme d'apprentissage par renforcement pour un réglage fin, permet à l'IA de générer des robots capables de s'adapter à l'environnement en fonction des différentes conditions de terrain.
Enfin, les chercheurs ont sélectionné des robots issus des trois premières graines pour démontrer les effets.
On voit que leur structure et leurs méthodes de mouvement sont complètement différentes.
Une fois cette recherche annoncée, on peut dire qu'elle a fait d'une pierre des milliers de vagues.
De nombreux internautes se sont émerveillés devant cette nouvelle façon de combiner « grand modèle + algorithme évolutif » :
Les chercheurs qui ont effectué des travaux connexes ont également déclaré qu'ils n'avaient jamais pensé que les grands modèles pouvaient être utilisés sous forme de différences. mutations :
En plus de la discussion sur le formulaire de recherche et lui-même, certains internautes ont également posté des photos comme celle-ci :
Emmm... C'est un peu comme ça.
Les membres de l'équipe de cette recherche sont tous issus d'OpenAI.
Le premier auteur de l'article est Joel Lehman, un scientifique en apprentissage automatique. Ses domaines d'intervention comprennent la sécurité de l'intelligence artificielle, l'apprentissage par renforcement et les algorithmes de recherche ouverts.
Parallèlement, Joel Lehman a précédemment co-écrit un livre scientifique "Pourquoi la grandeur ne peut pas être planifiée : le secret de l'objectivité" basé sur ses réflexions sur le développement de l'intelligence artificielle :
Quant à la prochaine étape dans cette recherche, Joel Lehman lui-même a déclaré :
Une autre question importante est de savoir dans quelle mesure le modèle peut être appliqué à d'autres environnements.
L'efficacité des mutations chez GP peut désormais être grandement améliorée par ELM, qui inspirera un large éventail de nouvelles applications et orientations de recherche.
Alors ces recherches vous ont donné une nouvelle inspiration ?
Liens de référence :
[1]https://arxiv.org/abs/2206.08896
[2]https://twitter.com/joelbot3000/status/1538770905119150080?s=21&t=l8AASYjgC6RAEEimcQa Brouillard
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!