X
    Catégories: Actualité

Uber propose en open source Pyro, son langage de programmation probabiliste

Après moins d’un an d’existence, le laboratoire d’intelligence artificielle d’Uber n’a de cesse de se développer et de chercher à attirer les experts IA. Il propose désormais en open source Pyro, le langage de programmation créé par ses chercheurs au sein du Uber AI Labs.

Un langage de programmation probabiliste

C’est sur GitHub qu’Uber a mis à disposition Pyro. Crée sur PyTorch, il s’agit d’un langage de programmation probabiliste. C’est dans son communiqué que l’entreprise présente ce nouvel outil:

« Pyro est un outil de modélisation probabiliste profond, unifiant le meilleur du deep learning moderne et de la modélisation bayésienne. Le but de Pyro est d’accélérer la recherche et les applications de ces techniques, en les rendant plus accessibles à l’ensemble de la communauté IA. »

Pyro repose sur quatre principes :

  • Universel : Pyro est un PPL universel – il peut représenter n’importe quelle distribution de probabilité calculable. Comment? En partant d’un langage universel avec itération et récursion (code Python arbitraire), puis en ajoutant l’échantillonnage aléatoire, l’observation et l’inférence ;
  • Évolutif : Pyro s’adapte aux grands ensembles de données avec peu de surcharge au-dessus du code. Comment? En construisant des techniques modernes d’optimisation de la boîte noire, qui utilisent des mini-lots de données, pour approximer l’inférence ;
  • Minimal : Pyro est agile et maintenable. Comment? Pyro est implémenté avec un petit noyau d’abstractions puissantes et modulables. Dans la mesure du possible, le levage lourd est délégué à PyTorch et à d’autres bibliothèques ;
  • Flexible : Pyro vise une automatisation et un contrôle qui s’adaptent à vos besoins. Comment? Pyro utilise des abstractions de haut niveau pour développer des modèles génératifs et d’inférence, tout en permettant aux experts de personnaliser facilement l’inférence.

Un langage créé via PyTorch

Le développement de ce nouveau langage de programmation par Uber AI Labs a pu se faire suite à l’acquisition l’an dernier de la start-up Geometric Intelligence. Pyro a été créé via la bibliothèque PyTorch incluant la différenciation automatique.

Comme l’indique Uber, l’utilisation de cette bibliothèque, qui peut construire des gradients de façon dynamique, a permis aux programmes Pyro d’intégrer une structure de contrôle stochastique. Cette dernière s’avère cruciale pour qu’un PPL (Probabilistic programming language) soit universel. Pyro peut ainsi représenter tout type de modèle probabiliste et fournir une inférence automatique basée sur l’optimisation, flexible et évolutive, des grands ensembles de données.

Ayant été construit sur Python, Pyro sera selon Uber facile d’utilisation pour la plupart des chercheurs. Les modèles génératifs et les guides d’inférence de ce langage peuvent tous deux inclure des réseaux de neurones profonds en tant que composants. Selon le communiqué d’Uber, les modèles probabilistes profonds ainsi développés pourraient résulter très intéressants pour d’actuels travaux de recherche, notamment pour les problèmes de machine learning supervisés ou non-supervisés.

Développer la prochaine génération de solutions IA

Proposé en open source sur GitHub, Pyro est accessible à tous les développeurs et chercheurs.

« Nous pensons que la version actuelle (alpha!) de Pyro intéressera surtout les modélisateurs probabilistes qui veulent tirer parti de grands ensembles de données et de réseaux profonds, les utilisateurs de PyTorch qui veulent pouvoir faire du calcul bayésien facilement et les datascientists prêts à explorer une technologie de pointe nouvelle. »

L’objectif d’Uber en proposant en open source son langage de programmation est, d’après le communiqué de l’entreprise, de participer activement à développer de nouveaux outils basés sur l’IA:

« Atteindre l’objectif qu’Uber s’est fixé d’offrir à chacun un transport fiable demande des efforts sans fin de prédiction et d’optimisation à chaque étape. Cela va de mettre en relation conducteurs et clients, de suggérer les meilleurs itinéraires ou même de créer la prochaine génération de voitures intelligentes.

Pour répondre à ces problèmes, nous combinons des techniques d’intelligence artificielle de pointe avec l’expertise de datascientists, d’ingénieurs et d’autres utilisateurs. Nous sommes en train d’explorer une approche centrée sur l’outil qui nous permettra, à nous et à d’autres, de développer la prochaine génération de solutions IA.

La mise à disposition en open source de Pyro a quelque peu surpris étant donné qu’Uber est réputé pour sa culture du secret. Cependant, l’intention de la firme de poursuivre dans la publication de projets open source et d’être plus active dans la communauté de la recherche est dans la lignée actuelle de nombreuses entreprises cherchant à attirer ainsi des chercheurs et talents IA comme nous l’expliquait il y a quelques mois Jacob Colker de l’incubateur du Allen Institute for Artificial Intelligence.

Johanna Diaz: