[Ressources d'apprentissage] Apprentissage incrémental de l'apprentissage automatique tout au long de la vie

À partir des problèmes existant dans l'apprentissage automatique, il présente le type de problèmes que l'apprentissage incrémental peut résoudre, les catégories d'apprentissage incrémental, les méthodes de mise en œuvre de l'apprentissage incrémental, les indicateurs d'évaluation et les ensembles de données communs de l'apprentissage incrémental, les méthodes typiques de la catégorie incrémental learning and La bibliothèque de codes et les ressources de référence espèrent vous aider à utiliser l'apprentissage incrémental pour améliorer la qualité de la classification des images, de la détection des objets, de la segmentation sémantique, de la reconnaissance des comportements, de la réidentification des objets et du traitement des nuages ​​de points 3D.

1 Quels sont les problèmes actuels avec l'apprentissage automatique ?

Source de l'image : https://speech.ee.ntu.edu.tw/~hylee/ml/ml2021-course-data/life_v2.pdf

À l'heure actuelle, l'apprentissage automatique présente les problèmes suivants :

Si les informations de domaine existantes contiennent du bruit et du contenu sans informations de bruit, comment rendre le modèle plus performant dans les deux cas ?

Un modèle de réseau neuronal qui inclut des paramètres peut bien effectuer la tâche un, mais pas la tâche deux. Comparé aux humains, il ne peut accomplir qu'une seule tâche. En d'autres termes, les paramètres ne peuvent pas être adaptés à de nouvelles tâches. Comment obtenir un modèle capable de mieux accomplir la tâche 1 et la tâche 2 en même temps ?

Dans la tâche de classification d'images, il est difficile de collecter des échantillons d'apprentissage de toutes les catégories possibles lors de l'entraînement du classifieur pour la première fois. Lorsqu'une nouvelle catégorie est rencontrée dans l'application, une formation incrémentielle de catégorie est requise. Comment s'entraîner ?

Comment les modèles de détection d'objets et de segmentation sémantique utilisent-ils les informations de base pour extraire les représentations de caractéristiques qui sont bénéfiques pour l'apprentissage incrémentiel de catégorie ultérieur ?

2 Quels problèmes l'apprentissage incrémental résout-il ?

Il peut non seulement mettre à jour et apprendre en permanence de nouvelles catégories ou tâches, mais également mieux maintenir les performances des catégories ou tâches apprises.

L'apprentissage continu ou incrémental essaie d'aider les réseaux de neurones à apprendre un grand nombre de tâches différentes comme les gens, sans aucune interférence mutuelle négative, et à résoudre le problème de l'oubli catastrophique. L'objectif des algorithmes d'apprentissage incrémental n'est pas de savoir comment utiliser les connaissances acquises dans les tâches précédentes pour aider à mieux apprendre de nouvelles tâches, mais pour résoudre le problème de l'oubli catastrophique.

 

图片来源:Apprentissage incrémental dans les réseaux de neurones à convolution profonde utilisant le partage de réseau partiel – arXiv Vanity

3 Quelles sont les catégories d'apprentissage progressif?

La couche de classification dans le tableau suivant fait référence à la dernière couche du réseau neuronal profond, et l'extracteur de caractéristiques fait référence à la couche avant du réseau neuronal profond, à l'exception de la couche de classification.

taper

principe

fonctionnalités de l'ensemble de catégories

structure de l'oubli

Exigences de la phase de test

incrément de données

L'ensemble de catégories ne change pas et les données sont dynamiquement augmentées dans le formulaire en ligne.

constant

CE

CE

incrément de tâche

Différentes tâches partagent le même extracteur de caractéristiques, et chaque fois qu'une tâche est apprise, le modèle doit ajouter une couche de classification de sortie.

Variations, classées dans les tâches respectives.

Dans l'extracteur de caractéristiques, car les couches de classification des différentes tâches ne s'affectent pas les unes les autres.

Le modèle doit connaître à l'avance le numéro de tâche de l'échantillon de test actuel et le classer dans la couche de classification correspondant à la tâche.

incrément de catégorie

Toutes les catégories partagent une couche de classification dont les nœuds de catégorie augmentent à mesure que davantage de catégories sont apprises. En réalité, les besoins pratiques sont nombreux.

Les variations sont classées sur toutes les catégories apprises.

L'extracteur de caractéristiques et la couche de classification souffrent d'oubli. Parce que différentes catégories s'affecteront les unes les autres.

Toutes les catégories connues peuvent être classées sans pré-spécifier la catégorie de l'échantillon d'essai.

4 Quelles sont les méthodes pour parvenir à un apprentissage incrémental ?

Deux méthodes de classification différentes sont introduites.

Source de l'image :

https://github.com/virginiakm1988/ML2022-Spring/blob/main/HW14/HW14.pdf

Le professeur Li Hongyi a présenté les trois types suivants dans https://speech.ee.ntu.edu.tw/~hylee/ml/ml2021-course-data/life_v2.pdf .

  • Plasticité synaptique sélective  
  • Allocation de ressources neuronales supplémentaires 
  • Réponse de la mémoire

La plasticité synaptique sélective utilise la méthode du gradient pour trouver quels paramètres sont importants pour une certaine tâche. En modifiant les paramètres qui ont peu ou pas d'influence sur la première tâche, le modèle peut effectuer la première tâche et la deuxième tâche en même temps. Cette méthode modifie principalement les paramètres du modèle, ce que l'on appelle la régularisation des paramètres. Tels que EWC, SI, MAS et LwF-MC et d'autres méthodes. Les méthodes de régularisation des paramètres sont adaptées pour résoudre l'apprentissage incrémental des tâches.

L'allocation de ressources neuronales supplémentaires introduit le réseau neuronal progressif, PackNet et CPG. Réseau de neurones progressif Le réseau de neurones progressif conserve un grand nombre de modèles pré-entraînés, c'est-à-dire conserve les paramètres du modèle des anciennes tâches, lorsqu'il y a de nouvelles tâches, il utilise les liens horizontaux entre les anciennes tâches pour s'adapter. Bien sûr, son inconvénient est qu'au fur et à mesure que le nombre de tâches augmente, le nombre de paramètres va exploser. PackNet configure d'abord un grand réseau et n'utilise qu'une partie du grand réseau lorsqu'il y a une nouvelle tâche. De cette façon, la quantité de paramètres n'augmentera pas avec l'augmentation des tâches. La combinaison de Progressive Neural Network et PackNet peut non seulement ajouter de nouveaux paramètres, mais également conserver les paramètres pour accomplir chaque tâche.

La réponse en mémoire fait référence à la génération de fausses données à l'aide du modèle génératif de la tâche précédente.

Source de l'image : Zhu Fei, Zhang Xuyao, Liu Chenglin. Progrès de la recherche et évaluation des performances de la catégorie Apprentissage incrémental[J].

Dans l'article "Progrès de la recherche et évaluation des performances de l'apprentissage incrémental de catégorie", Zhu Fei et al ont présenté cinq méthodes basées sur l'idée technique de surmonter l'oubli : basées sur la régularisation des paramètres, basées sur la distillation des connaissances, basées sur la lecture des données, basées sur la lecture des fonctionnalités et sur la base de la structure du réseau, les avantages et les inconvénients de chaque méthode sont résumés. Les auteurs ont utilisé des expériences pour évaluer des méthodes représentatives sur des ensembles de données couramment utilisés, et ont comparé et analysé les performances des algorithmes existants sur la base des résultats expérimentaux.Ils ont également attendu avec impatience la tendance de la recherche de l'apprentissage incrémental de catégorie, qui est une très bonne référence. Je n'entrerai pas dans les détails.

La méthode basée sur la distillation des connaissances consiste à maintenir la cohérence de la sortie des anciens et des nouveaux modèles pour les données données tout en apprenant de nouvelles tâches, c'est-à-dire que les "entrées-sorties" ne se déforment pas et évitent d'oublier les anciennes connaissances. Ceci peut être réalisé en conservant les caractéristiques importantes, les relations d'échantillonnage et les données auxiliaires. Des méthodes telles que TPCIL, PODnet, DDE et GeoDL.

La lecture des données signifie que lorsque le modèle apprend une nouvelle tâche, il peut mettre à jour le modèle avec les données de catégorie de l'ancienne tâche et les données de catégorie de la nouvelle tâche. Cela peut être réalisé en lisant des données réelles, en lisant des données générées et calibrage des anciennes et des nouvelles déviations. Comme d'autres méthodes.

La plupart des méthodes basées sur la relecture des données utilisent une stratégie de distillation des connaissances pour mieux utiliser les échantillons conservés des anciennes catégories. Tels que iCaRL, BiC, UCIR, WA et d'autres méthodes.

La lecture des fonctionnalités signifie que lorsque le modèle apprend une nouvelle tâche, les exemples de fonctionnalités de l'ancienne tâche et les exemples de fonctionnalités de la nouvelle tâche peuvent être mis à jour ensemble pour mettre à jour le modèle, ce qui peut être réalisé en rejouant des fonctionnalités réelles, des prototypes de catégorie et fonctionnalités générées. Tels que PASS, SSRE, méthodes Fusion.

L'approche basée sur la structure du réseau étend dynamiquement la structure du réseau pendant l'apprentissage incrémental. Comme les méthodes AANets, DER, ReduNet.

5 Indicateurs d'évaluation et ensembles de données couramment utilisés pour l'apprentissage progressif

Source de l'image : Zhu Fei, Zhang Xuyao, Liu Chenglin. Progrès de la recherche et évaluation des performances de la catégorie Apprentissage incrémental[J].

Source de l'image : Zhu Fei, Zhang Xuyao, Liu Chenglin. Progrès de la recherche et évaluation des performances de la catégorie Apprentissage incrémental[J].

Méthodes typiques et bases de code pour 6 catégories d'apprentissage incrémental

L'objectif de l'apprentissage incrémental de catégorie est que le modèle puisse continuellement apprendre de nouvelles connaissances de catégorie sur la base d'un meilleur maintien des connaissances existantes dans un environnement dynamique et ouvert.

iCaRL (Incremental Classifer and Representation Learning) est une méthode très basique pour apprendre simultanément des classificateurs et des représentations d'entités sous le paramètre d'incrément de classe. À un niveau élevé, iCaRL maintient un échantillon d'exemples pour chaque classe observée. Pour chaque classe, l'ensemble d'exemplaires est un sous-ensemble de tous les échantillons de cette classe, visant à contenir les informations les plus représentatives de cette classe. La classification des nouveaux échantillons se fait en choisissant une classe à laquelle l'ensemble d'exemples ressemble le plus. Lorsqu'une nouvelle classe apparaît, iCaRL crée un ensemble d'exemples pour cette nouvelle classe tout en élaguant l'ensemble d'exemples de classes existantes/précédentes. Cette approche consiste en une formation incrémentielle, en mettant à jour les représentations d'entités et en créant des ensembles d'exemples pour les nouvelles classes.

PyCIL : une boîte à outils Python pour l'apprentissage incrémentiel de classe GitHub - GUN/PyCIL: PyCIL : une boîte à outils Python pour l'apprentissage incrémentiel de classe

, une boîte à outils qui implémente presque toutes les méthodes d'apprentissage incrémental pour les catégories. Y compris les algorithmes classiques EWC , iCaRL et les dernières méthodes d'apprentissage incrémental telles que SSRE , Coil , FOSTER , FeTRIL , etc. Pour les autres bibliothèques, veuillez vous référer à Apprentissage incrémental | Documents avec code

La figure suivante est le processus d'apprentissage incrémental

Crédit image : Distillation des connaissances et apprentissage incrémental - Deepan Das

7 Ressources de référence

Les ressources suivantes sont fournies à titre de référence.

  • Programme d'apprentissage tout au long de la vie de l'Université de Taiwan Hongyi Li

Section 14 2021 - Machine Lifelong Learning (1) - Pourquoi l'intelligence artificielle d'aujourd'hui ne peut-elle pas devenir Skynet ? Oubli catastrophique (Oubli catastrophique)_哔哩哔哩_bilibili

2021 - Machine Lifelong Learning (2) - Oubli catastrophique_哔哩哔哩_bilibili  

Didacticiel https://speech.ee.ntu.edu.tw/~hylee/ml/ml2021-course-data/life_v2.pdf

En bref, l'apprentissage incrémental par catégorie peut aider à la classification d'images, à la détection d'objets, à la segmentation sémantique, à la reconnaissance de comportements, à la réidentification d'objets, au traitement de nuages ​​de points 3D, etc. Bienvenue à tous pour laisser un message, discutons et échangeons ensemble.

Je suppose que tu aimes

Origine blog.csdn.net/weixin_38575258/article/details/130328096
conseillé
Classement