Des chercheurs de Google Brain, l’une des divisions de recherche sur l’IA de Google, développé un outil automatisé pour la programmation dans des frameworks d’apprentissage automatique comme TensorFlow. Ils disent qu’il permet d’obtenir des performances supérieures à celles des humains sur certaines tâches de développement difficiles, en prenant quelques secondes pour résoudre des problèmes qui prennent des minutes à des heures aux programmeurs humains.

Les nouvelles techniques d’IA ont abouti à des percées dans les domaines de la vision par ordinateur, du traitement audio, du traitement du langage naturel et de la robotique. Les cadres d’apprentissage automatique comme TensorFlow, PyTorch de Facebook et MXNet jouent un rôle important, qui permettent aux chercheurs de développer et d’affiner de nouveaux modèles. Mais si ces frameworks ont facilité l’itération et la formation des modèles d’IA, ils ont une courbe d’apprentissage abrupte car le paradigme du calcul sur les tenseurs est assez différent de la programmation traditionnelle. (Les tenseurs sont des objets algébriques qui décrivent les relations entre des ensembles d’objets liés à un espace vectoriel, et ils constituent un format de données pratique dans l’apprentissage automatique.) La plupart des modèles nécessitent diverses manipulations de tenseur pour le traitement ou le nettoyage des données, des fonctions de perte personnalisées et des mesures de précision qui doit être mis en œuvre dans les contraintes d’un cadre.

L’outil TF-Coder des chercheurs vise à synthétiser des programmes de manipulation de tenseurs à partir d’exemples d’entrée et de sortie et de descriptions en langage naturel. Les pondérations par opération permettent à TF-Coder d’énumérer les expressions TensorFlow par ordre de complexité croissante, tandis qu’un nouveau système de filtrage basé sur le type et la valeur gère les contraintes imposées par la bibliothèque TensorFlow. Un cadre distinct combine les prédictions de plusieurs modèles d’apprentissage automatique indépendants qui choisissent les opérations à prioriser lors des recherches d’opérations, en fonction des caractéristiques des tenseurs d’entrée et de sortie et de la description en langage naturel d’une tâche. Cela permet d’adapter les recherches à la tâche de synthèse particulière à accomplir.

Tf-Coder

TF-Coder considère 134 opérations de manipulation de tenseur des 500 dans TensorFlow, y compris les remodelages, les filtres, les agrégations, les cartes, l’indexation, le découpage, le regroupement, le tri et les opérations mathématiques. Il est capable de gérer des problèmes impliquant des compositions de quatre ou cinq opérations différentes et des structures de données de 10 composants ou plus, qui ont peu de marge d’erreur car les formes et les types de données doivent être compatibles partout.

Publicité

Les co-auteurs affirment que lors d’expériences, TF-Coder a réalisé des performances «surhumaines» sur une gamme de problèmes réels à partir du site de questions-réponses StackOverflow. Évalué sur 70 tâches de transformation de tenseur du monde réel à partir de StackOverflow et d’un environnement de production, TF-Coder a réussi à synthétiser des solutions à 63 tâches en 17 secondes en moyenne et a conduit à des temps de synthèse «significativement» plus rapides (35,4% plus rapides en moyenne) par rapport au non en utilisant des modèles. Remarquablement, TF-Coder a également produit des solutions que les coauteurs affirment être «plus simples» et «plus élégantes» que celles écrites par les experts de TensorFlow – deux solutions nécessitent moins d’opérations que les meilleures solutions manuscrites.

«Nous pensons que TF-Coder peut aider à la fois les débutants en apprentissage automatique et les praticiens expérimentés à écrire des programmes de transformation de tenseur complexes qui sont communs dans les pipelines d’apprentissage en profondeur», les co-auteurs ont rédigé un article de pré-impression décrivant TF-Coder. «La leçon la plus importante à tirer de ce travail est peut-être simplement le fait qu’une recherche énumérative bien optimisée peut résoudre avec succès des problèmes de manipulation de tenseurs du monde réel en quelques secondes, même sur des problèmes que les programmeurs humains ont du mal à résoudre en quelques minutes.»

Rate this post
Publicité
Article précédentSamsung Note20 Ultra v / s Mi 10 Ultra: quel est le meilleur?
Article suivantQuel personnage d’anime êtes-vous: édition de Singapour, Digital News
Avatar
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici