Apprentissage par transfert - partie 1

introduction

Qu'est-ce que l'apprentissage par transfert (TL) et en quoi est-il différent de l'apprentissage automatique (ML)?

Le gros mensonge de ML est que la distribution des données d'apprentissage est la même que celle des données sur lesquelles le modèle va être utilisé. Que se passe-t-il si cette hypothèse est violée, à savoir que les données ont une distribution différente sur un espace de fonctionnalités différent?

Lorsque suffisamment de données sont disponibles, on peut simplement reconfigurer un modèle sur les nouvelles données et éliminer complètement les anciennes. Ce n'est pas toujours possible. Cependant, il y a moyen d'améliorer. Si l’on sait qu’il existe une relation entre les données de formation et d’autres données, le transfert de connaissances (ou de transfert d’apprentissage) obtenu sur les données de formation à un modèle pour d’autres données peut aider.

L’apprentissage par transfert est différent de la configuration ML classique: au lieu d’apprendre dans un contexte, les connaissances tirées de l’apprentissage dans un environnement sont réutilisées pour améliorer l’apprentissage dans un autre environnement. L'apprentissage par transfert s'inspire de la façon dont les apprenants tirent parti de leurs connaissances et de leurs compétences: un humain qui sait lire des ouvrages a plus de chances de réussir à lire des articles scientifiques qu'un humain qui ne sait pas lire du tout. Dans le contexte de l'apprentissage supervisé, l'apprentissage par transfert implique la possibilité de réutiliser la connaissance de la structure de dépendance entre les caractéristiques et les étiquettes apprises dans un contexte afin d'améliorer l'inférence de la structure de dépendance dans un autre contexte. Chez Dataswati, nous sommes particulièrement intéressés par ce type d’apprentissage par transfert appliqué aux données chronologiques de différentes usines et j’ai personnellement consacré une bonne partie de mon temps à résoudre ces problèmes.

Dans cet article, je passerai en revue différents aspects de l’apprentissage par transfert, mais tout d’abord, quelques mots sur le cadre classique de l’apprentissage automatique supervisé.

Apprentissage machine supervisé: récapitulation rapide

Nous avons un jeu de données D qui contient des échantillons de vecteurs de caractéristiques (x) et d’étiquettes correspondantes (y ∈ 𝒴): D = {(xi, yi): i = 1,…, m}. D comprend l'ensemble des exemples d'apprentissage D | X = {xi: i = 1,…, m} et l'ensemble des étiquettes correspondantes D | Y = {yi: i = 1,…, m}. Ici m est la taille de l'échantillon. Tous les couples (x, y) sont supposés être échantillonnés indépendamment de la même distribution conjointe P (X, Y) (hypothèse iid) qui reflète la dépendance entre les variables aléatoires X et Y. En d'autres termes, (xi, yi) est une réalisation de (X, Y) ∼ P (X, Y) pour tout i. Notre objectif est d’utiliser D pour apprendre une fonction h: 𝒳 → (h pour «hypothèse»), de sorte que h se rapproche de la vraie relation entre x et y, c’est-à-dire un résumé de P (Y | X = x), par exemple h (x) ≈ E (Y | X = x). Lorsque nous recherchons un bon h, nous limitons notre recherche à une classe de fonctions ℋ (par exemple, une classe de modèles linéaires), h ∈. Si ℋ n’est pas trop complexe et que la taille de l’échantillon m est suffisamment grande, nous pouvons apprendre le «bon» h (par exemple, en utilisant une minimisation empirique des risques:

Algorithme ERM

, où l est une fonction de perte), de sorte que h fournit une bonne approximation de la relation vraie entre x et y non seulement sur (x, y) ∈ D, mais sur les autres données (x, y) échantillonnées à partir de P (X, Y).

Que faire si nous ne disposons pas de suffisamment de données ou de libellés? Y a-t-il un espoir?

Et qu'est-ce qui se passerait si…

  • … Nous avons plusieurs jeux de données différents, mais avec une structure de dépendance X-Y similaire?
  • … Nous n’avons des étiquettes que pour certains de ces jeux de données, mais pas les autres et nous voulons faire des prédictions s’il n’ya pas d’étiquettes disponibles?
  • … Nous voulons apprendre à dépendre d'un jeu de données avec un échantillon de petite taille lorsque nous avons un autre jeu de données avec un échantillon de grande taille et une structure de dépendance similaire, mais différente?
  • … Nous avons une combinaison de tout cela?

En effet, il y a un espoir, et ça s'appelle…
 … Transférer l'apprentissage.

Pan, Yang et autres (2010) et Weiss, Khoshgoftaar et Wang (2016) donnent un excellent aperçu de l'apprentissage par transfert avant la folie Deep Learning. Pan, Yang et autres (2010) définissent le domaine 𝒟 comme un espace de caractéristiques considéré conjointement avec la distribution de probabilité sur cet espace 𝒟 = (, P (X)). Une tâche est formellement définie comme = (, f), ici f est vrai, mais la fonction inconnue (et éventuellement stochastique) f: 𝒳 → que nous essayons d'approximer avec h ∈.

Pour définir les types de base d’apprentissage par transfert (TL), considérons une configuration simplifiée lorsque nous n’avons que deux domaines avec une tâche par domaine: domaine source S et tâche 𝒯S, et domaine cible T et tâche 𝒯T. Dans ce cadre simple, TL vise à améliorer l’apprentissage de fT en utilisant les connaissances en S, S en plus de 𝒯T, 𝒟T, lorsque S T ou S ≠ 𝒟T.

Le tableau ci-dessous résume les types de TL comparés au ML classique.

Types d'apprentissage par transfert: inductif, transductif et non supervisé

Une classification supplémentaire peut être effectuée en fonction des espaces de fonctions:

Apprentissage par transfert homogène et hétérogène

Le cas le plus général d’apprentissage par transfert est celui où les espaces caractéristiques et les distributions sont différents, de même que les tâches.

Pan, Yang et al. (2010) regroupent les approches en matière de TL basées sur la question «Que transférer?»:

  • Apprentissage par transfert basé sur des instances. Il est supposé que certaines données du domaine source peuvent être réutilisées dans le domaine cible. L'échantillonnage d'importance et la repondération d'instances sont utilisés ici.
  • Transfert de fonctionnalités. Une représentation de caractéristique r est apprise pour faciliter la modélisation de la dépendance entre r (X) et Y. Elle est ensuite utilisée pour améliorer les performances sur la tâche cible. Dans le contexte des réseaux de neurones, on peut former un modèle supervisé dans le domaine source, puis prendre une représentation de l'une des dernières couches pour transformer les données dans le domaine cible, puis former un autre modèle sur ces données transformées.
  • Transfert de paramètres. Les tâches source et cible sont supposées partager certains paramètres ou a priori. Dans un cas simple où hS, hT, hS = f (x; θS), hT = f (x; θT), cela signifie que θS est partiellement similaire à θT. Dans le contexte des réseaux de neurones, on peut prendre un modèle de pré-entraînement tel que VGG et recycler les dernières couches sur ses propres données propres à une tâche (reconvertir une petite partie de θS).

Développements récents liés aux problèmes de Dataswati

Dans cette série d'articles, je passerai en revue certains développements récents de TL, notamment l'adaptation de domaine, l'apprentissage en quelques étapes et le cadre le plus général de l'apprentissage par transfert multi-domaine.

Adaptation de domaine

Dans le cadre de la TL transductive homogène (𝒳S = 𝒳T = 𝒳), l’adaptation de domaine (formation d’un modèle sur les données d’une distribution conjointe et utilisation des données d’une autre) a fait l’objet d’une attention soutenue au cours de la dernière décennie, notamment: dans le contexte de l'apprentissage en profondeur.

On veut souvent trouver des transformations ϕS, T: 𝒳 → 𝒳̃ de sorte que la distribution des données cibles transformées soit la même que celle des données sources transformées, à savoir P (S (X)) = P (T (X)) pour X ∈, ou cas particulier, lorsque la transformation est appliquée uniquement aux données source: S (X) P (X). L'espoir ici est que nous puissions appliquer efficacement le modèle formé sur les données source transformées aux données cibles transformées.

L'adaptation de domaine a été théoriquement étudiée dans le contexte de problèmes de classification (Ben-David et al. 2007, 2010) et de régression (Cortes et Mohri 2011). Ben-David et al. (2007) ont étudié les conditions dans lesquelles un classificateur formé aux données du domaine source peut être utilisé dans le domaine cible. Ils ont prouvé que la limite supérieure de l'erreur dans le domaine cible était exprimée en fonction de l'erreur dans le domaine source. Ils ont ensuite étendu leur analyse dans Ben-David et al. (2010). En résumé, la théorie suggère que pour une adaptation de domaine efficace, il est nécessaire de former un modèle sur une représentation de données à partir de laquelle il est impossible de discriminer entre le domaine source et le domaine cible.

Je mentionne d’abord certaines approches générales.

Approches générales

Daumé III (2009) a proposé une approche très simple de l'adaptation de domaine. Daumé III (2009) a transformé le problème d’adaptation de domaine en problème d’apprentissage supervisé en appliquant une simple augmentation de données (duplication de caractéristiques ou remplissage avec des zéros) aux domaines source et cible, puis en formant un modèle à des données augmentées provenant des deux domaines. Leur approche nécessite toutefois des données étiquetées dans le domaine cible (DT ∣ Y ≠).

Sans données étiquetées dans le domaine cible, il est possible de trouver des transformations qui alignent les distributions source et cible. Sun, Feng et Saenko (2016) ont proposé l'algorithme CORAL (CORrelation Alignment) qui aligne les statistiques de second ordre des distributions source et cible. Sun, Feng et Saenko (2016) ont montré que CORAL peut surpasser certaines approches modernes basées sur l'apprentissage en profondeur.

Si, Tao et Geng (2010) ont utilisé la régularisation basée sur la divergence de Bregman pour la réduction de la dimensionnalité inter-domaines non supervisée et ont proposé des versions de PCA tenant compte de l'apprentissage du transfert, FLAN (analyse discriminante linéaire), projections de préservation de la localité, analyses marginales de Fisher. (MFA) et alignement discriminatif de localité (DLA). La divergence de Bregman a été utilisée pour minimiser la différence entre les distributions des données projetées dans les domaines source et cible.

Dans leur analyse de la composante de transfert (TCA), Pan et al. (2011) ont utilisé l'écart maximal moyen (MMD) comme mesure de la distance de distribution. MMD a été utilisé pour apprendre la transformation (composants de transfert) de l'ensemble de données afin de minimiser la distance de distribution. Long et al. (2013) ont proposé une adaptation de la distribution conjointe (JDA) qui généralise l'ACT en incluant l'objectif de minimisation de la distribution conditionnelle.

Récemment, Optimal Transport a été utilisé avec succès pour l'adaptation de domaine (Courty, Flamary et Tuia 2014; Courty, Flamary, Tuia et al. 2017; Courty, Flamary, Habrard et al. 2017). Optimal Transport trouve une transformation des données d'un domaine à un autre en minimisant la distance de Wasserstein entre les distributions (Peyré, Cuturi et autres 2017).

Dans le contexte de l'apprentissage basé sur un modèle mixte, Beninel et al. (2012) ont proposé une méthode de mappage des données source de sorte que la distribution modélisant les données transformées soit égale à la distribution modélisant la cible.

L'apprentissage en profondeur

Glorot, Bordes et Bengio (2011) ont utilisé l'adaptation de domaine basée sur la représentation des entités dans le contexte de la classification des sentiments. À l'aide d'une version réduite du jeu de données Amazon incluant des données dans quatre domaines différents, ils ont d'abord rassemblé les données de tous les domaines et ont appris une représentation d'entité non supervisée à l'aide de Stacked Denoising Autoencoder (Vincent et al. 2008) sur la représentation en sac de mots du fichier. Les données. Ensuite, pour chaque paire de domaines source-cible, ils ont formé un classifieur SVM binaire sur la représentation des données source et l'ont utilisé sur la représentation des données cible.

Ganin et Lempitsky (2014) ont proposé à Neural une architecture de réseau combinant adaptation de domaine et apprentissage approfondi au sein d'un même processus de formation. À l'instar de la formation contradictoire (Goodfellow et al. 2014), ils ont simultanément formé deux modèles i) le réseau de classifieur de domaine afin de discriminer les données source et cible transformées, et ii) le réseau de prédicteurs formé pour prédire les étiquettes dans le domaine source ainsi que pour «Tromper» le classifieur de domaine (obtenu avec un terme de régularisation dans sa fonction de perte). Cependant, au lieu d'alterner l'apprentissage du classifieur de domaine et du prédicteur, ils ont introduit la couche d'inversion de gradient qui permettait une formation de bout en bout. Ils ont démontré l'efficacité de leur approche sur une série de jeux de données de vision par ordinateur: SVHN, MNIST et panneaux de signalisation. Ajakan et al. (2014) ont appliqué efficacement un modèle très similaire à l'ensemble de données d'analyse des opinions Amazon reviews. Ganin et al. (2016) présente une analyse approfondie de ces réseaux de neurones, appelés réseaux de neurones d'adaptation à domaine contradictoire.

À suivre…

Pour la suite, veuillez cliquer ici. Vous trouverez la seconde partie consacrée à l’apprentissage zéro / peu développé. Dans la troisième partie, je passerai également en revue l’apprentissage par transfert multi-domaines. Si vous ne voulez pas rater cette histoire, assurez-vous de nous suivre.

Références

Ajakan, Hana, Pascal Germain, Hugo Larochelle, François Laviolette et Mario Marchand. 2014. «Réseaux de neurones d'adversaire de domaine». ArXiv Preprint arXiv: 1412.4446.

Ben-David, Shai, John Blitzer, Koby Crammer, Alex Kulesza, Fernando Pereira et Jennifer Wortman Vaughan. 2010. «Une théorie de l'apprentissage de différents domaines». Apprentissage automatique 79 (1–2): 151–75.

Ben-David, Shai, John Blitzer, Koby Crammer et Fernando Pereira. 2007. «Analyse des représentations pour l'adaptation de domaine», In the Advances in Neural Information Processing Systems, 137–44.

Beninel, Farid, Christophe Biernacki, Charles Bouveyron, Julien Jacques et Alexandre Lourme. 2012. Modèles de liaisons paramétriques pour le transfert de connaissances dans l'apprentissage statistique. Nova Publishers.

Cortes, Corinna et Mehryar Mohri. 2011. «Adaptation de domaine dans la régression». In International Conference on Algorithmic Learning Theory, 308–23. Springer.

Courty, Nicolas, Rémi Flamary, Amaury Habrard et Alain Rakotomamonjy. 2017. «Distribution optimale, transport conjoint pour l'adaptation de domaine». Dans Advances in Neural Information Processing Systems, 3730–9.

Courty, Nicolas, Rémi Flamary et Devis Tuia. 2014. «Adaptation de domaine avec un transport optimal régularisé», Conférence européenne conjointe sur l'apprentissage automatique et la découverte des connaissances dans les bases de données, 274–89. Springer.

Courty, Nicolas, Rémi Flamary, Devis Tuia et Alain Rakotomamonjy. 2017. «Transport optimal pour l'adaptation de domaine». Transactions IEEE sur l'analyse des modèles et l'intelligence artificielle 39 (9): 1853–185.

Daumé III, Hal. 2009. “Adaptation de domaine facile et frustrante.” ArXiv Preprint arXiv: 0907.1815.

Ganin, Yaroslav et Victor Lempitsky. 2014. «Adaptation de domaine non supervisé par rétropropagation». ArXiv Preprint arXiv: 1409.7495.

Ganin, Yaroslav, Evgeniya Ustinova, Hana Ajakan, Pascal Germain, Hugo Larochelle, François Laviolette, Mario Marchand et Victor Lempitsky. 2016. «Formation de réseaux de neurones à l'adversité de domaines». Journal de Machine Learning Research 17 (1): 2096–30.

Glorot, Xavier, Antoine Bordes et Yoshua Bengio. 2011. «Adaptation de domaine pour la classification des sentiments à grande échelle: une approche d'apprentissage en profondeur», dans Actes de la 28e Conférence internationale sur l'apprentissage automatique (ICML-11), 513–20.

Goodfellow, Ian, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville et Yoshua Bengio. 2014. «Réseaux d'adversaire génératif», In Advances in Neural Information Processing Systems, 2672–80.

Long, Mingsheng, Jianmin Wang, Guiguang Ding, Jiaguang Sun et Philip S. Yu. 2013. «Apprentissage de la fonctionnalité de transfert avec adaptation de la distribution conjointe». Dans Actes de la Conférence internationale sur la vision par ordinateur de l'IEEE, 2200–2207.

Pan, Sinno Jialin, Ivor W Tsang, James T. Kwok et Qiang Yang. 2011. «Adaptation de domaine via l'analyse des composants de transfert». Transactions IEEE sur des réseaux de neurones 22 (2): 199–210.

Pan, Sinno Jialin, Qiang Yang et d’autres. 2010. «Enquête sur l'apprentissage par transfert». Transactions IEEE sur l'ingénierie des connaissances et des données 22 (10): 1345–59.

Peyré, Gabriel, Marco Cuturi et d'autres. 2017. «Transport optimal par ordinateur».

Si, Si, Dacheng Tao et Bo Geng. 2010. «Régularisation basée sur la divergence de Bregman pour l'apprentissage de sous-espace de transfert». IEEE Transactions on Knowledge and Data Engineering 22: 929–42.

Sun, Baochen, Jiashi Feng et Kate Saenko. 2016. «Retour de l'adaptation de domaine extrêmement frustrante.» Dans AAAI, 6: 8.

Vincent, Pascal, Hugo Larochelle, Yoshua Bengio et Pierre-Antoine Manzagol. 2008. «Extraction et composition de fonctions robustes à l'aide d'auto-encodeurs à réduction de bruit», dans Actes de la 25e Conférence internationale sur l'apprentissage automatique, 1096–1103. ACM.

Weiss, Karl, Taghi M Khoshgoftaar et DingDing Wang. 2016. “Une enquête sur l'apprentissage par transfert.” Journal of Big Data 3 (1): 9.