Element AI met à disposition sa bibliothèque BAyesian Active Learning en code source ouvert
The BaaL team The BaaL team
8 octobre 4 min

Element AI met à disposition sa bibliothèque BAyesian Active Learning en code source ouvert

La bibliothèque BAyesian Active Learning d’Element AI (ou bibliothèque BaaL) est maintenant offerte en code source ouvert et disponible sur GitHub. Dans cet article, nous décrivons brièvement l’apprentissage actif, son utilisation potentielle dans les réseaux profonds et les capacités spécifiques de notre bibliothèque BaaL.

Qu’est-ce que l’apprentissage actif?

Les applications d’apprentissage machine nécessitent généralement une énorme quantité de données et, dans de nombreux cas, ces données ne peuvent pas être facilement acquises. De plus, même lorsque les données sont facilement disponibles, il n’est souvent pas possible de les étiqueter efficacement. L’apprentissage actif vise à réduire la quantité de données étiquetées nécessaires à la formation des modèles d’apprentissage machine.

Son fonctionnement est en fait assez simple : nous permettons au modèle d’« interroger » activement les exemples à étiqueter. De cette façon, nous sommes en mesure de nétiqueter que les échantillons les plus efficaces pour la formation du modèle, plutôt que d’étiqueter une sélection aléatoire.

BaaL scheme.

Apprentissage actif pour l’apprentissage profond

Les techniques courantes d’apprentissage actif telles que les processus gaussiens ou les méthodes de noyau sont insuffisantes lorsqu’elles sont utilisées sur des ensembles de données de grande dimension. Cependant, les progrès récents de l’apprentissage profond proposent la formation d’un réseau neuronal profond afin qu’il soit capable d’apprendre à partir d’une petite quantité de données et d’interroger activement le prochain échantillon par lui-même.

Pour sélectionner l’échantillon suivant, il faut estimer l’incertitude du modèle. En ciblant les points de données sur lesquels le modèle est le moins certain, nous visons à relever les points qui sont aussi les plus utiles pour le modèle. L’estimation de l’incertitude est un problème difficile dans l’apprentissage profond. Les méthodes les plus récentes proposent d’estimer la distribution postérieure du modèle, ce qui permet de sélectionner l’échantillon le plus incertain – qui aurait la variance prédictive la plus élevée.

En utilisant MCDropout (Gal et coll. 2015) et BALD (Houlsby et coll. 2011), nous présentons nos résultats sur CIFAR100 avec un VGG16. En utilisant l’apprentissage actif, nous obtenons la même performance avec la moitié des échantillons.

Resultats apprentissage actif vs. échantillonnages aléatoires sur CIFAR100.

Ensuite, nous présentons la représentation t-SNE d’une version personnalisée de CIFAR10 où nous ne conservons que les catégories « avion », « chat » et « camion ». Cela nous permet de comparer l’apprentissage actif et l’étiquetage aléatoire standard.

Différence entre les résultats de l’apprentissage actif (à gauche) et ceux de l’étiquetage aléatoire standard (à droite).

Active learning vs. standard random labelling.
On voit clairement que l’apprentissage actif sélectionne des échantillons où la décision est moins certaine, ce qui le rend plus efficace que la sélection aléatoire.

BaaL chez Element AI

Bien que l’apprentissage actif soit un domaine de recherche actif, nous avons constaté que le manque de bonnes bibliothèques ralentissait à la fois nos propres recherches et l’utilisation de l’apprentissage actif dans les logiciels d’entreprise. Pour cette raison, chez Element AI, nous avons créé une bibliothèque qui tente de résoudre ces deux problèmes.

Aujourd’hui, nous rendons cette bibliothèque gratuite et ouverte à la communauté. Notre bibliothèque BaaL propose des techniques de pointe dans une API unifiée facile à utiliser par les praticiens de l’IA et les chercheurs. Jetez-y un coup d’œil et faites-nous savoir ce que vous en pensez!

Auteurs: Parmida Atighehchian, Frédéric Branchaud-Charron, Jan Freyberg, and Lorne Schell

Sources

Active Learning with Statistical Models

Deep Bayesian Active Learning with Image Data

Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning (Gal et al. 2015)

Bayesian layers (Shridhar et al. 2019)

Deeper Connections between Neural Networks and Gaussian Processes Speed-up Active Learning (Panov et al. 2019)

A Simple Baseline for Bayesian Uncertainty in Deep Learning (Zellers et al. 2018)

Bayesian Active Learning for Classification and Preference ...