Généralités sur l’Apprentissage Incrémental
Principe et Motivations
L’apprentissage incrémental propose de définir un nouveau paradigme qui, à la différence des approches hors ligne basées « batch », vise à concevoir un système capable d’apprendre en continu tout au long de son cycle de vie.
Entraînement Batch (EB)
Les réseaux de neurones profonds (DNN) obtiennent d’excellentes performances sur de nombreuses tâches de vision par ordinateur modernes. Leur entraînement repose sur des algorithmes d’optimisation en batch tels que la descente de gradient. Un algorithme dit « batch » ou « hors-ligne », est un algorithme d’optimisation statistique dont la fonction d’application est calculée sur la totalité du jeu de données – dataset–, i.e. la totalité du batch, afin de mettre à jour les paramètres du modèle. Ce processus est itératif, cette étape d’optimisation, aussi appelée epoch, correspond à une passe sur le batch et est répétée jusqu’à convergence vers une solution. Ces algorithmes sont dit « supervisés » lorsqu’ils sont conçus pour apprendre sur des jeux de données annotés. L’un des critères clés pour le bon fonctionnement de ces algorithmes est que le dataset soit indépendemment et identiquement distribué (i.i.d.). La performance finale du réseau dépend de nombreux facteurs mais les études existantes indiquent un clair bénéfice à pouvoir utiliser toujours plus de données avec des DNN toujours plus grands.
Le déroulement d’un entraînement batch (EB) se divise en deux phases distinctes. D’abord la collecte et l’annotation des données, afin de constituer un dataset aussi exhaustif que possible pour la tâche visée. Puis l’optimisation des paramètres du DNN sur ce même dataset. Ces deux phases permettent en général de garantir un résultat compétitif sur la tâche visée. Celle-ci cependant doit être clairement délimitée et le modèle final est figé. L’un des avantages des DNN est que leur entraînement est compatible avec une approche « end-to-end ». Pour une entrée donnée, on la soumet au modèle afin de calculer la réponse en sortie. Celle-ci sert à calculer une fonction de coût pour ensuite, via rétropropagation du gradient, optimiser les poids automatiquement de la couche de sortie à la couche d’entrée. Dans la littérature de l’incrémental, le terme entraînement batch est interchangeable avec les dénominations paradigme/entraînement hors-ligne, offline ou conjoint.
Paradigme Incrémental
L’apprentissage incrémental, aussi qualifié de continu, lifelong ou online, a pour objectif de concevoir un système évolutif capable d’apprendre en permanence sur un continuum de données. Contrairement à l’approche batch qui propose un modèle fini et fixe après entraînement, une solution incrémentale doit être capable à tout moment de se mettre à jour afin d’enrichir ses connaissances et le répertoire des tâches dédiées. Un problème de classification incrémental par exemple correspond à un problème dont les frontières, i.e. le nombre total de classes, n’est pas connu. Le modèle lors de sa création, n’a aucun a priori définitif sur l’ampleur du problème qu’il devra être capable de traiter. Son objectif est alors d’étendre ses capacités de classification afin d’être capable de discriminer aussi bien les classes qu’il aurait vues auparavant que celles nouvellement introduites. Une approche naïve est de simplement prendre le modèle actuel, d’étendre sa sortie afin d’intégrer les nouvelles classes, puis d’effectuer une mise-à-jour des paramètres (fine-tuning) sur les nouvelles données. Dès lors apparaît le principal problème de l’apprentissage incrémental (French, 1999 ; Goodfellow et al., 2013) : l’Oubli Catastrophique (OC), parfois aussi appelé Interférences Catastrophiques (Parisi et al., 2019). Ce phénomène correspond au fait que le modèle à tendance à complètement oublier ses connaissances passées lors d’un apprentissage sur de nouvelles données. La nouvelle connaissance vient totalement interférer et écraser l’information précédemment stockée. Pour revenir à notre exemple, en optimisant le modèle uniquement sur les nouvelles images, le modèle sera capable de devenir performant sur les nouvelles classes mais deviendra incompétent sur les anciennes classes sur lesquelles il était auparavant expert. L’oubli catastrophique est un phénomène inhérent aux réseaux connexionnistes et représente l’enjeu principal de la littérature de l’apprentissage incrémental.
Les différents scénarios de l’apprentissage incrémental
L’apprentissage continu peut référer à différents contextes. Il n’est pas envisageable d’arriver à une seule définition du problème qui fasse consensus. Il est cependant possible d’identifier certaines tendances dans la littérature qui restreignent l’étude de l’apprentissage incrémental à quelques scénarios (Parisi et al., 2019)). La logique pour définir et évaluer les baselines incrémentales est la suivante : prendre un problème connu et maîtrisé, puis réarranger les données pour qu’elles soient présentées au modèle de manière séquentielle. À noter que puisque la majorité des travaux concerne la classification d’images, on s’intéresse principalement à cette application pour la suite de cette section. La définition des différents scénarios incrémentaux est intrinsèquement orientée données. C’est-à-dire que le type d’incrémental dépend principalement du type de données d’apprentissage et de la façon avec laquelle elles sont arrangées au sein du continuum (Prabhu et al., 2020). En classification, les trois scénarios majeurs sont (van de Ven & Tolias, 2019) :
— Incrémental de Classes
— Incrémental de Tâches
— Incrémental de Domaines .
Incrémental de Classes (IC) correspond à une tâche de classification unique sans limite définie. Le modèle doit être capable de résoudre un problème de classification dont le nombre total de classes possibles n’est pas connu à l’avance. A n’importe quel instant, une nouvelle image associée avec un label jamais vu auparavant peut être soumise au modèle. Celui-ci doit alors étendre son espace de sortie pour accorder le nouveau label. L’objectif de ce scénario est d’apprendre à discriminer les nouvelles classes tout en maintenant une performance consistante sur les anciennes.
Incrémental de Tâches (IT) considère une approche différente. Ici, le modèle doit apprendre une séquence de tâches définies et dont les limites sont connues par le modèle. Celui-ci possède une tête de sortie propre à chaque tâche. Lorsqu’on soumet une image en entrée du modèle, on précise aussi la tâche afin que le modèle utilise la tête correspondante. Cette approche est qualifiée de multi-head. Par exemple, prenons un modèle capable de résoudre une tâche de classification T1 à 10 classes, incrémenter une tâche supplémentaire consiste à introduire au modèle T2 avec 10 nouvelles classes. Un système IT doit être capable de traiter aussi bien T1 que T2, mais requiert de connaître la tâche en entrée afin d’éviter toute ambiguïté. Le fait d’indiquer la tâche en entrée permet au modèle de limiter l’espace des sorties possibles.
Incrémental de Domaines (ID) vise à augmenter le domaine d’utilisation du modèle sur un même problème. L’intérêt est de pouvoir d’apprendre successivement sur des jeux de données avec des distributions et des caractéristiques différentes (e.g. données synthétiques et données réelles), pour in fine être capable de tous les traiter.
|
Table des matières
1 Introduction
1.1 Contexte
1.2 Domaines
1.3 Objectif de la thèse
1.4 Contributions
1.5 Structure du manuscrit
1.6 Publications
2 Domaines et État-de-l’art
2.1 Introduction
2.2 Généralités sur l’Apprentissage Incrémental
2.2.1 Principe et Motivations
2.2.2 Les différents scénarios de l’apprentissage incrémental
2.2.3 Les enjeux de l’apprentissage incrémental
2.3 Incrémental de Classes (IC)
2.3.1 Définition et Notations
2.3.2 Métriques et évaluation
2.4 Méthodes d’apprentissage incrémental
2.4.1 Apprentissage avec répétition
2.4.2 Distillation de Connaissances (DC)
2.4.3 Incrémental et Biais
2.4.4 Autres axes de recherche
2.5 Apprentissage des Représentations (AR)
2.5.1 Motivations
2.5.2 Pré-entraînement supervisé
2.5.3 Pré-entraînement non-supervisé
2.5.4 Les tâches prétextes
2.5.5 Semi-supervision avec régularisation de consistance
2.6 Conclusion : Vers un incrémental de classes semi-supervisé
2.7 Datasets
2.7.1 MNIST et E-MNIST
2.7.2 CIFAR
2.7.3 STL-10
2.7.4 ImageNet
2.7.5 Version Incrémentale ou faiblement supervisée
3 Apprentissage de représentations pour l’apprentissage incrémental
3.1 Introduction
3.2 Motivations
3.3 Représentations et Oubli Catastrophique
3.3.1 Vers de meilleurs représentations pour l’incrémental
3.3.2 Améliorer les représentations pour l’apprentissage incrémental
3.3.3 La sensibilité des classifieurs discriminatifs à l’oubli catastrophique
3.4 Utiliser des données externes non-annotées pour l’incrémental de classes : hypothèses et contraintes
3.4.1 L’origine des données non-annotées pendant l’incrémental
3.4.2 Les scénarios possibles pour l’incrémental de classes avec données non-annotées
3.4.3 Exploiter les données non-annotées
3.5 Étude expérimentale préliminaire
3.5.1 Objectif
3.5.2 Le choix de l’initialisation
3.5.3 Pré-entraînement et taille des modèles
3.5.4 Conclusion de l’étude préliminaire
3.6 L’Autoencodeur Adverse (AAE)
3.6.1 L’autoencodeur adverse (AAE) : les différents modules
3.6.2 Entraînement et Fonctions de coût
3.6.3 Prise en compte des labels lors de l’entraînement
3.6.4 Baseline Semi-supervisée
3.7 L’AAE, un framework pour l’incrémental de classes semi-supervisé
3.7.1 Algorithme #1 : AAE incrémental avec espace latent suivant une loi de mélange
3.7.2 Algorithme #2 : AAE incrémental semi-supervisé avec représentation disentangled
3.7.3 Entraînement de l’AAE en incrémental de classe avec répétition
3.8 Expérimentation et résultats
3.8.1 Algorithme #1 avec prior mélange de gaussiennes 2D
3.8.2 Incrémental de classes semi-supervisé
3.8.3 STL-10 avec pré-entraînement RotNet
3.9 Conclusion
3.10 Publication
4 Pseudo-Labeling pour l’Incrémental de Classes
4.1 Introduction
4.2 Motivations
4.3 Pseudo-labeling et Régularisation de consistance
4.3.1 Le choix de la tâche prétexte
4.3.2 Pseudo-Labeling
4.4 Pseudo-Labeling for Class-incremental Learning (PLCiL)
4.4.1 Composantes de la baseline PLCiL
4.4.2 Augmentation de données
4.4.3 Apprentissage du modèle
4.4.4 Explication des composantes de la loss
4.5 Expérimentations avec le PLCiL
4.5.1 Choix des hyperparamètres du PLCiL
4.5.2 Incrémental de classes
4.5.3 Incrémental de classes semi-supervisé
4.5.4 Influence du type de données non-annotées
4.6 Ablation du PLCiL
4.6.1 Bénéfice d’une plus grande architecture
4.6.2 Rôle des différents termes de la loss
4.6.3 Notre distillation face à une distillation standard
4.6.4 Biais dans le classifieur FC du PLCiL
4.6.5 Sensibilité des hyperparamètres
4.6.6 Analyse qualitative du pseudo-labeling
4.7 Conclusion
4.8 Publication
5 Conclusion