Maison  >  Article  >  Périphériques technologiques  >  Une revue de 10 000 mots sur l'apprentissage profond adaptée aux novices

Une revue de 10 000 mots sur l'apprentissage profond adaptée aux novices

WBOY
WBOYavant
2023-04-14 12:37:03977parcourir

​Article : Progrès récents en matière d'apprentissage profond : un aperçu

Une revue de 10 000 mots sur lapprentissage profond adaptée aux novices

Adresse de l'article : https://arxiv.org/pdf/1807.08169v1.pdf

Résumé : L'apprentissage profond est l'apprentissage automatique et L'une des dernières tendances en matière de recherche sur l'intelligence artificielle. C’est également l’une des tendances de recherche scientifique les plus populaires aujourd’hui. Les méthodes d’apprentissage profond ont apporté des avancées révolutionnaires en matière de vision par ordinateur et d’apprentissage automatique. De nouvelles techniques d’apprentissage profond sont constamment créées, dépassant l’apprentissage automatique de pointe et même les techniques d’apprentissage profond existantes. Ces dernières années, de nombreuses avancées majeures ont été réalisées dans ce domaine à travers le monde. En raison du développement rapide du deep learning, ses progrès sont difficiles à suivre, notamment pour les nouveaux chercheurs. Dans cet article, nous discuterons brièvement des avancées récentes en matière d’apprentissage profond au cours des dernières années.

1. Introduction

Le terme « apprentissage profond » (DL) a été introduit pour la première fois dans l'apprentissage automatique (ML) en 1986, et a ensuite été utilisé pour les réseaux de neurones artificiels (ANN) en 2000. Les méthodes d'apprentissage en profondeur se composent de plusieurs couches pour apprendre les caractéristiques des données avec plusieurs niveaux d'abstraction. Les méthodes DL permettent aux ordinateurs d’apprendre des concepts complexes à travers des concepts relativement simples. Pour les réseaux de neurones artificiels (ANN), l'apprentissage profond (DL) (également appelé apprentissage hiérarchique) fait référence à l'allocation précise de crédits sur plusieurs étapes de calcul pour transformer les activations globales dans le réseau. Pour apprendre des fonctions complexes, des architectures profondes sont utilisées à plusieurs niveaux d'abstraction, c'est-à-dire des opérations non linéaires telles que les ANN, avec de nombreuses couches cachées. Pour résumer en termes précis, l'apprentissage profond est un sous-domaine de l'apprentissage automatique qui utilise plusieurs niveaux de traitement et d'abstraction d'informations non linéaires pour l'apprentissage, la représentation, la classification et la reconnaissance de formes, supervisés ou non.

L'apprentissage profond, ou apprentissage par représentation, est une branche ou un sous-domaine de l'apprentissage automatique. La plupart des gens pensent que les méthodes modernes d'apprentissage profond ont été développées à partir de 2006. Cet article est une revue des dernières technologies d’apprentissage profond et est principalement recommandé aux chercheurs qui sont sur le point de s’impliquer dans ce domaine. Cet article comprend les idées de base, les principales méthodes, les derniers développements et les applications de DL.

Les articles de synthèse sont très bénéfiques, en particulier pour les nouveaux chercheurs dans un domaine particulier. Si un domaine de recherche présente une grande valeur dans un avenir proche et les domaines d'application associés, il est généralement difficile de suivre les derniers progrès en temps réel. La recherche scientifique est une carrière attrayante de nos jours, car les connaissances et l’éducation sont plus faciles que jamais à partager et à obtenir. La seule hypothèse normale pour une tendance de recherche technologique est qu’elle verra de nombreuses améliorations dans tous les aspects. Un aperçu d’un domaine d’il y a quelques années peut désormais être obsolète.

Considérant la popularité et la promotion du deep learning ces dernières années, nous fournissons un bref aperçu du deep learning et des réseaux de neurones (NN), ainsi que de ses principaux progrès et percées majeures de ces dernières années. Nous espérons que cet article aidera de nombreux chercheurs novices dans ce domaine à acquérir une compréhension globale des recherches et techniques récentes en matière d’apprentissage profond et les guidera pour démarrer de la bonne manière. En même temps, nous espérons rendre hommage aux meilleurs chercheurs DL et ANN de cette époque à travers ces travaux : Geoffrey Hinton (Hinton), Juergen Schmidhuber (Schmidhuber), Yann LeCun (LeCun), Yoshua Bengio (Bengio) et bien d'autres. chercheurs universitaires, dont les recherches ont construit l’intelligence artificielle (IA) moderne. Il est également crucial pour nous de suivre leurs travaux afin de suivre les meilleures avancées actuelles en matière de recherche DL et ML.

Dans cet article, nous décrivons d'abord brièvement les articles de recherche antérieurs et étudions les modèles et méthodes d'apprentissage profond. Nous commencerons ensuite par décrire les avancées récentes dans ce domaine. Nous discuterons des méthodes d'apprentissage profond (DL), des architectures profondes (c'est-à-dire des réseaux de neurones profonds (DNN)) et des modèles génératifs profonds (DGM), suivis d'importantes méthodes de régularisation et d'optimisation. De plus, deux courtes sections sont utilisées pour résumer les frameworks DL open source et les applications DL importantes. Nous discutons de l'état actuel et de l'avenir de l'apprentissage profond dans les deux derniers chapitres, Discussion et Conclusion.

2. Recherches connexes

Au cours des dernières années, de nombreux articles de synthèse ont été publiés sur l'apprentissage profond. Ils décrivent de manière intéressante les méthodes et méthodologies DL ainsi que leurs applications et les orientations de recherche futures. Ici, nous présentons brièvement quelques excellents articles de synthèse sur l’apprentissage profond.

Young et al. (2017) discutent des modèles et des architectures DL, principalement pour le traitement du langage naturel (NLP). Ils démontrent les applications DL dans différents domaines de la PNL, comparent les modèles DL et discutent des tendances futures possibles.

Zhang et al. (2017) discutent des meilleures techniques actuelles d'apprentissage en profondeur pour les systèmes de reconnaissance vocale front-end et back-end.

Zhu et al. (2017) ont passé en revue les avancées récentes de la technologie de télédétection DL. Ils discutent également des frameworks DL open source et d'autres détails techniques de l'apprentissage profond.

Wang et al. (2017) décrivent l'évolution des modèles d'apprentissage profond de manière chronologique. Ce court article présente brièvement le modèle et ses avancées dans la recherche DL. Cet article utilise une approche évolutive pour comprendre les origines de l'apprentissage profond et explique l'optimisation et les recherches futures sur les réseaux de neurones.

Goodfellow et al. (2016) ont discuté en détail des réseaux profonds et des modèles génératifs, et ont résumé la recherche et les applications DL au cours des dernières années à partir des connaissances de base de l'apprentissage automatique (ML) et des avantages et des inconvénients des architectures profondes.

LeCun et al. (2015) ont donné un aperçu des modèles d'apprentissage profond (DL) à partir de réseaux de neurones convolutifs (CNN) et de réseaux de neurones récurrents (RNN). Ils décrivent le DL dans une perspective d'apprentissage par représentation, montrant comment fonctionnent les techniques DL, comment elles peuvent être utilisées avec succès dans diverses applications et comment elles peuvent apprendre à prédire l'avenir sur la base de l'apprentissage non supervisé (UL). Ils soulignent également les avancées majeures du DL dans la bibliographie.

Schmidhuber (2015) a donné un aperçu de l'apprentissage profond à partir de CNN, RNN et de l'apprentissage par renforcement profond (RL). Il met l'accent sur les RNN pour le traitement des séquences, tout en soulignant les limites des DL et NN de base, ainsi que des conseils pour les améliorer.

Nielsen (2015) décrit les détails des réseaux de neurones avec du code et des exemples. Il discute également des réseaux de neurones profonds et, dans une certaine mesure, de l'apprentissage profond.

Schmidhuber (2014) discute de l'histoire et des progrès des réseaux de neurones basés sur des séries chronologiques, des méthodes d'apprentissage automatique pour la classification et de l'utilisation de l'apprentissage profond dans les réseaux de neurones.

Deng et Yu (2014) décrivent les catégories et techniques d'apprentissage profond, ainsi que les applications du DL dans plusieurs domaines.

Bengio (2013) donne un bref aperçu des algorithmes DL du point de vue de l'apprentissage des représentations, c'est-à-dire des réseaux supervisés et non supervisés, des modèles d'optimisation et de formation. Il se concentre sur de nombreux défis de l'apprentissage profond, tels que : la mise à l'échelle d'algorithmes pour des modèles et des données plus volumineux, la réduction des difficultés d'optimisation, la conception de méthodes de mise à l'échelle efficaces, etc.

Bengio et al (2013) ont discuté de la représentation et de l'apprentissage des fonctionnalités, c'est-à-dire de l'apprentissage en profondeur. Ils explorent diverses approches et modèles du point de vue des applications, des technologies et des défis.

Deng (2011) donne un aperçu de l'apprentissage structuré en profondeur et de son architecture du point de vue du traitement de l'information et des domaines connexes.

Arel et al (2010) donnent un bref aperçu de la technologie DL ces dernières années.

Bengio (2009) discute des architectures profondes, à savoir les réseaux de neurones et les modèles génératifs pour l'intelligence artificielle.

Tous les articles récents sur l'apprentissage profond (DL) discutent de l'objectif de l'apprentissage profond sous plusieurs perspectives. Ceci est très nécessaire pour les chercheurs DL. Cependant, le DL est actuellement un domaine en plein essor. Après le récent article de synthèse DL, de nombreuses nouvelles techniques et architectures ont été proposées. De plus, des articles antérieurs l’ont étudié sous différents angles. Notre article s'adresse principalement aux apprenants et aux novices qui débutent dans le domaine. À cette fin, nous nous efforcerons de fournir une base et un concept clair d’apprentissage profond aux nouveaux chercheurs et à toute personne intéressée par ce domaine.

3. Derniers progrès

Dans cette section, nous aborderons les principales méthodes d'apprentissage profond (DL) récemment dérivées de l'apprentissage automatique et des réseaux de neurones artificiels (ANN), qui sont la forme d'apprentissage profond la plus couramment utilisée.

3.1 Évolution des architectures profondes

Les réseaux de neurones artificiels (ANN) ont fait de grands progrès, entraînant avec eux d'autres modèles profonds. La première génération de réseaux de neurones artificiels consistait en de simples couches neuronales de perceptrons qui ne pouvaient effectuer que des calculs simples et limités. La deuxième génération utilise la rétropropagation pour mettre à jour les poids des neurones en fonction du taux d'erreur. Ensuite, les machines à vecteurs de support (SVM) sont apparues et ont dépassé ANN pendant un certain temps. Pour surmonter les limites de la rétropropagation, des machines Boltzmann restreintes (RBM) ont été proposées pour faciliter l'apprentissage. À cette époque, d'autres technologies et réseaux de neurones ont également émergé, tels que les réseaux de neurones à action directe (FNN), les réseaux de neurones convolutifs (CNN), les réseaux de neurones récurrents (RNN), etc., ainsi que les réseaux de croyance profonde, les auto-encodeurs, etc. Depuis lors, les ANN ont été améliorés et conçus sous différents aspects à des fins diverses.

Schmidhuber (2014), Bengio (2009), Deng et Yu (2014), Goodfellow et al. (2016), Wang et al (2017) sur l'évolution et l'histoire des réseaux de neurones profonds (DNN) et profonds. learning (DL) ) fournit un aperçu détaillé. Dans la plupart des cas, les architectures profondes sont des itérations non linéaires multicouches d'architectures simples, permettant d'obtenir des fonctions très complexes à partir de l'entrée.

4. Méthodes d'apprentissage profond

Les réseaux de neurones profonds ont obtenu un grand succès dans l'apprentissage supervisé. De plus, les modèles d’apprentissage profond ont connu un grand succès dans l’apprentissage non supervisé, hybride et par renforcement.

4.1 Apprentissage supervisé en profondeur

L'apprentissage supervisé est appliqué lors de l'étiquetage des données, de la classification des classificateurs ou de la prédiction numérique. LeCun et al. (2015) fournissent une explication simplifiée des méthodes d'apprentissage supervisé et de la formation de structures profondes. Deng et Yu (2014) ont mentionné et expliqué de nombreux réseaux profonds pour l'apprentissage supervisé et hybride, tels que le réseau profond (DSN) et ses variantes. Les recherches de Schmidthuber (2014) couvrent tous les réseaux de neurones, depuis les premiers réseaux de neurones jusqu'aux succès plus récents des réseaux de neurones convolutifs (CNN), des réseaux de neurones récurrents (RNN), de la mémoire à long terme (LSTM) et de leurs améliorations.

4.2 Apprentissage approfondi non supervisé

Lorsque les données d'entrée ne sont pas étiquetées, des méthodes d'apprentissage non supervisé peuvent être appliquées pour extraire des caractéristiques des données et les classer ou les étiqueter. LeCun et al. (2015) prédisent l’avenir de l’apprentissage non supervisé dans le domaine de l’apprentissage profond. Schmidthuber (2014) décrit également les réseaux de neurones pour l'apprentissage non supervisé. Deng et Yu (2014) ont brièvement présenté les architectures profondes pour l'apprentissage non supervisé et ont expliqué en détail les auto-encodeurs profonds.

4.3 Apprentissage par renforcement profond

L'apprentissage par renforcement utilise un système de récompense et de punition pour prédire la prochaine étape d'un modèle d'apprentissage. Ceci est principalement utilisé dans les jeux et les robots pour résoudre des problèmes de prise de décision courants. Schmidthuber (2014) décrit les progrès de l'apprentissage profond dans l'apprentissage par renforcement (RL) et l'application de réseaux neuronaux à rétroaction profonde (FNN) et de réseaux neuronaux récurrents (RNN) dans RL. Li (2017) discute de l'apprentissage par renforcement profond (DRL), de son architecture (telle que Deep Q-Network, DQN) et de ses applications dans divers domaines.

Mnih et al. (2016) ont proposé un cadre DRL pour l'optimisation DNN utilisant la descente de gradient asynchrone.

van Hasselt et al. (2015) ont proposé une architecture DRL utilisant un réseau de neurones profonds (DNN).

5. Réseaux de neurones profonds

Dans cette section, nous discuterons brièvement des réseaux de neurones profonds (DNN), ainsi que de leurs récentes améliorations et percées. Les réseaux de neurones fonctionnent de manière similaire au cerveau humain. Ils sont principalement composés de neurones et de connexions. Lorsque nous parlons de réseaux de neurones profonds, nous pouvons supposer qu'il existe un certain nombre de couches cachées qui peuvent être utilisées pour extraire des caractéristiques et calculer des fonctions complexes à partir de l'entrée. Bengio (2009) explique les réseaux de neurones structurés en profondeur tels que les réseaux de neurones convolutifs (CNN), les auto-encodeurs (AE), etc. et leurs variantes. Deng et Yu (2014) fournissent une introduction détaillée à certaines architectures de réseaux neuronaux telles que AE et ses variantes. Goodfellow et al. (2016) ont introduit et expliqué techniquement les réseaux à réaction profonde, les réseaux convolutifs, les réseaux récurrents et leurs améliorations. Schmidhuber (2014) mentionne une histoire complète des réseaux de neurones, depuis les premiers réseaux de neurones jusqu'aux technologies récentes à succès.

5.1 Auto-encodeurs profonds

Un auto-encodeur (AE) est un réseau neuronal (NN) où la sortie est l'entrée. AE prend l'entrée brute, la code dans une représentation compressée, puis la décode pour reconstruire l'entrée. Dans l'AE profonde, les couches cachées faibles sont utilisées pour l'encodage, les couches cachées élevées sont utilisées pour le décodage et la rétropropagation des erreurs est utilisée pour la formation.

5.1.1 Auto-encodeurs variationnels

Les auto-encodeurs variationnels (VAE) peuvent être comptés comme des décodeurs. Les VAE sont construits sur des réseaux neuronaux standard et peuvent être entraînés via une descente de gradient stochastique (Doersch, 2016).

5.1.2 Auto-encodeur de débruitage multicouche

Dans les premiers auto-encodeurs (AE), la dimensionnalité de la couche d'encodage est plus petite (plus étroite) que la couche d'entrée. Dans les auto-encodeurs à débruitage multicouches (SDAE), la couche de codage est plus large que la couche d'entrée (Deng et Yu, 2014).

5.1.3 Transformation Autoencoder

Deep Autoencoder (DAE) peut être transformateur, c'est-à-dire que les fonctionnalités extraites du traitement non linéaire multicouche peuvent être transformées en fonction des besoins de l'apprenant. Les auto-encodeurs transformateurs (TAE) peuvent utiliser à la fois des vecteurs d'entrée et des vecteurs de sortie cibles pour appliquer des propriétés d'invariance de transformation afin de guider le code dans la direction souhaitée (Deng et Yu, 2014).

5.2 Réseau neuronal convolutif profond

Quatre idées de base constituent un réseau neuronal convolutif (CNN), à savoir : les connexions locales, les poids partagés, la mise en commun et l'utilisation de plusieurs couches. La première partie de CNN se compose de couches convolutives et de couches de pooling, et la dernière partie est principalement une couche entièrement connectée. Les couches convolutives détectent les connexions locales des entités et les couches de pooling fusionnent les entités similaires en une seule. CNN utilise la convolution au lieu de la multiplication matricielle dans la couche convolutive.

Krizhevsky et al. (2012) ont proposé une architecture de réseau neuronal convolutif profond (CNN), également connue sous le nom d'AlexNet, qui a constitué une avancée majeure dans l'apprentissage profond (DL). Le réseau se compose de 5 couches convolutives et de 3 couches entièrement connectées. L'architecture utilise une unité de traitement graphique (GPU) pour les opérations de convolution, une fonction linéaire rectifiée (ReLU) comme fonction d'activation et Dropout pour réduire le surajustement.

Iandola et al. (2016) ont proposé une petite architecture CNN appelée « SqueezeNet ».

Szegedy et al. (2014) ont proposé une architecture CNN profonde appelée Inception. Dai et al. (2017) ont proposé des améliorations à Inception-ResNet.

Redmon et al. (2015) ont proposé une architecture CNN appelée YOLO (You Only Look Once) pour une détection d'objets uniforme et en temps réel.

Zeiler et Fergus (2013) ont proposé une méthode pour visualiser les activations au sein des CNN.

Gehring et al. (2017) ont proposé une architecture CNN pour l'apprentissage séquence à séquence.

Bansal et al. (2017) ont proposé PixelNet, qui utilise des pixels pour représenter.

Goodfellow et al. (2016) expliquent l'architecture et les idées de base de CNN. Gu et al. (2015) fournissent un bon aperçu des avancées récentes en matière de CNN, des multiples variantes de CNN, des architectures de CNN, des méthodes et capacités de régularisation et des applications dans divers domaines.

5.2.1 Réseau neuronal convolutif Deep Max Pooling

Max Pooling Convolutional Neural Network (MPCNN) fonctionne principalement sur la convolution et le max pooling, en particulier dans le traitement d'images numériques. MPCNN se compose généralement de trois couches en plus de la couche d'entrée. La couche convolutive prend l'image d'entrée et génère des cartes de caractéristiques, puis applique une fonction d'activation non linéaire. La couche de pooling maximale sous-échantillonne l'image et conserve la valeur maximale de la sous-région. Les couches entièrement connectées effectuent une multiplication linéaire. Dans MPCNN profond, la convolution et le pooling hybride sont périodiquement utilisés après la couche d'entrée, suivis d'une couche entièrement connectée.

5.2.2 Réseaux de neurones convolutionnels très profonds

Simonyan et Zisserman (2014) ont proposé une architecture de réseau de neurones convolutionnels très profonds (VDCNN), également connue sous le nom de VGG Net. VGG Net utilise de très petits filtres convolutionnels d'une profondeur de 16 à 19 couches. Conneau et al. (2016) ont proposé une autre architecture VDCNN pour la classification de texte utilisant de petites convolutions et le pooling. Ils affirment que cette architecture VDCNN est la première à être utilisée dans le traitement de texte et qu'elle fonctionne au niveau des caractères. L'architecture se compose de 29 couches convolutives.

5.3 Réseau en réseau

Lin et al (2013) ont proposé Réseau en réseau (NIN). NIN remplace les couches convolutives des réseaux de neurones convolutifs (CNN) traditionnels par des réseaux micro-neuraux aux structures complexes. Il utilise des réseaux microneuraux de traitement de perceptron multicouche (MLPConv) et des couches de pooling moyennes globales au lieu de couches entièrement connectées. Les architectures Deep NIN peuvent être composées de plusieurs superpositions de structures NIN.

5.4 Réseau neuronal convolutif basé sur une région

Girshick et al. (2014) ont proposé un réseau neuronal convolutif basé sur une région (R-CNN) qui utilise les régions pour la reconnaissance. R-CNN utilise des régions pour localiser et segmenter les objets. L'architecture se compose de trois modules : des propositions de régions indépendantes de la classe qui définissent une collection de régions candidates, un grand réseau neuronal convolutif (CNN) qui extrait les caractéristiques des régions et un ensemble de machines à vecteurs de support linéaires (SVM) spécifiques à la classe.

5.4.1 Fast R-CNN

Girshick (2015) a proposé un réseau convolutif rapide basé sur une région (Fast R-CNN). Cette méthode exploite l'architecture R-CNN pour produire des résultats rapidement. Fast R-CNN se compose de couches convolutives et de pooling, de couches de proposition de région et d'une série de couches entièrement connectées.

5.4.2 Faster R-CNN

Ren et al (2015) ont proposé un réseau neuronal convolutionnel plus rapide basé sur une région (Faster R-CNN), qui utilise un réseau de réseau de proposition de région, RPN) pour détection d'objets en temps réel. RPN est un réseau entièrement convolutionnel capable de générer des propositions régionales avec précision et efficacité (Ren et al., 2015).

5.4.3 Mask R-CNN

He Kaiming et al. (2017) ont proposé un réseau convolutionnel de masques basé sur une région (Mask R-CNN) pour par exemple la segmentation d'objets. Mask R-CNN étend l'architecture de R-CNN et utilise une branche supplémentaire pour prédire les masques cibles.

5.4.4 R-CNN multi-experts

Lee et al (2017) ont proposé un réseau neuronal convolutif multi-expert basé sur une région (ME R-CNN), utilisant l'architecture Fast R-CNN . ME R-CNN génère des régions d'intérêt (RoI) à partir de recherches sélectives et exhaustives. Il utilise également un réseau multi-experts par RoI au lieu d’un réseau unique par RoI. Chaque expert a la même architecture avec des couches entièrement connectées de Fast R-CNN.

5.5 Réseau résiduel profond

Le réseau résiduel (ResNet) proposé par He et al. (2015) se compose de 152 couches. ResNet a peu d'erreurs et est facile à former grâce à l'apprentissage résiduel. Un ResNet plus profond peut obtenir de meilleures performances. Dans le domaine du deep learning, ResNet est considéré comme une avancée importante.

5.5.1 Resnet dans Resnet

Targ et al. (2016) ont proposé dans Resnet in Resnet (RiR) une combinaison de ResNets et de réseaux neuronaux convolutifs standard (CNN) dans une architecture profonde à deux flux .

5.5.2 ResNeXt

Xie et al (2016) ont proposé l'architecture ResNeXt. ResNext exploite ResNets pour réutiliser la stratégie split-transform-merge.

5.6 Capsule Network

Sabour et al. (2017) ont proposé Capsule Network (CapsNet), une architecture contenant deux couches convolutives et une couche entièrement connectée. CapsNet contient généralement plusieurs couches convolutives, avec des couches de capsules à la fin. CapsNet est considéré comme l'une des dernières avancées en matière d'apprentissage profond car il serait basé sur les limites des réseaux de neurones convolutifs. Il utilise des couches de capsules au lieu de neurones. Les capsules de niveau inférieur activées font des prédictions, et après s'être mises d'accord sur plusieurs prédictions, les capsules de niveau supérieur deviennent actives. Un mécanisme de routage de protocole est utilisé au sein de ces couches de capsule. Hinton a ensuite proposé le routage EM, qui a amélioré CapsNet en utilisant l'algorithme de maximisation des attentes (EM).

5.7 Réseau neuronal récurrent

Le réseau neuronal récurrent (RNN) est plus adapté aux entrées de séquence telles que la parole, le texte et les séquences générées. Une unité cachée répétée lorsqu’elle est déroulée dans le temps peut être considérée comme un réseau à réaction très profonde avec les mêmes poids. Les RNN étaient auparavant difficiles à former en raison de problèmes de gradient de disparition et d'explosion de dimensionnalité. Afin de résoudre ce problème, de nombreuses personnes ont proposé par la suite des améliorations.

Goodfellow et al. (2016) fournissent une analyse détaillée des détails des réseaux et architectures neuronaux récurrents et récurrents, ainsi que des réseaux de déclenchement et de mémoire associés.

Karpathy et al. (2015) utilisent des modèles de langage au niveau des caractères pour analyser et visualiser les prédictions, caractériser la dynamique d'entraînement, les types d'erreurs des RNN et leurs variantes (comme le LSTM), etc.

J´ozefowicz et al (2016) explorent les limites des modèles RNN et des modèles de langage.

5.7.1 RNN-EM

Peng et Yao (2015) ont proposé d'utiliser la mémoire externe (RNN-EM) pour améliorer la capacité de mémoire du RNN. Ils prétendent atteindre des performances de pointe en matière de compréhension du langage, meilleures que les autres RNN.

5.7.2 GF-RNN

Chung et al. (2015) ont proposé le réseau neuronal récurrent à rétroaction fermée (GF-RNN), qui est étendu en superposant plusieurs couches récurrentes avec des unités de déclenchement globales. RNN.

5.7.3 CRF-RNN

Zheng et al. (2015) ont proposé des champs aléatoires conditionnels comme réseaux de neurones récurrents (CRF-RNN), qui combinent des réseaux de neurones convolutifs (CNN) et des champs aléatoires conditionnels ( CRF) sont combinés pour une modélisation graphique probabiliste.

5.7.4 Quasi-RNN

Bradbury et al (2016) ont proposé un réseau neuronal quasi-récurrent (QRNN) pour la modélisation de séquences neuronales et l'application parallèle au fil du temps.

5.8 Réseau mémoire

Weston et al (2014) ont proposé un réseau mémoire à questions-réponses (QA). Le réseau de mémoire comprend la mémoire, le mappage des fonctionnalités d'entrée, la généralisation, le mappage des fonctionnalités de sortie et la réponse.

5.8.1 Réseau de mémoire dynamique

Kumar et al (2015) ont proposé un réseau de mémoire dynamique (DMN) pour les tâches d'assurance qualité. DMN comporte quatre modules : entrée, question, mémoire épisodique et sortie.

5.9 Réseaux de neurones augmentés

Olah et Carter (2016) fournissent une bonne démonstration de l'attention et des réseaux de neurones récurrents augmentés, à savoir les machines de Turing neuronales (NTM), les interfaces d'attention, les encodeurs neuronaux et le temps de calcul adaptatif. Les réseaux de neurones sont souvent améliorés à l'aide de propriétés supplémentaires telles que des fonctions logistiques ainsi que des architectures de réseaux de neurones standard.

5.9.1 Neural Turing Machine

Graves et al (2014) ont proposé l'architecture Neural Turing Machine (NTM), qui se compose d'un contrôleur de réseau neuronal et d'une banque de mémoire. NTM combine généralement un RNN avec une banque de mémoire externe.

5.9.2 GPU neuronal

Kaiser et Sutskever (2015) ont proposé un GPU neuronal pour résoudre le problème parallèle de NTM.

5.9.3 Machine neuronale à accès aléatoire

Kurach et al (2015) ont proposé une machine neuronale à accès aléatoire qui utilise une mémoire vive externe de taille variable.

5.9.4 Programmeur neuronal

Neelakantan et al (2015) ont proposé le programmeur neuronal, un réseau neuronal amélioré doté de fonctions arithmétiques et logiques.

5.9.5 Programmeur-interprète neuronal

Reed et de Freitas (2015) ont proposé un programmeur-interprète neuronal (NPI) apprenable. NPI comprend des noyaux périodiques, une mémoire de programme et des encodeurs spécifiques au domaine.

5.10 Réseau de mémoire longue à court terme

Hochreiter et Schmidhuber (1997) ont proposé une mémoire longue à court terme (LSTM) pour surmonter le problème de reflux d'erreurs des réseaux de neurones récurrents (RNN). LSTM est un algorithme d'apprentissage basé sur des réseaux récurrents et basé sur les gradients. LSTM introduit des chemins de génération d'auto-boucles pour permettre aux gradients de circuler.

Greff et al. (2017) ont effectué une analyse à grande échelle du LSTM standard et de 8 variantes du LSTM pour la reconnaissance vocale, la reconnaissance de l'écriture manuscrite et la modélisation de la musique polyphonique respectivement. Ils ont affirmé que les 8 variantes du LSTM ne présentaient aucune amélioration significative, alors que seul le LSTM standard fonctionnait bien.

Shi et al. (2016b) ont proposé un réseau de mémoire profonde à long terme (DLSTM), qui est une pile d'unités LSTM pour la représentation d'apprentissage de cartes de caractéristiques.

5.10.1 LSTM normalisé par lots

Cooijmans et al. (2016) ont proposé un LSTM normalisé par lots (BN-LSTM), qui utilise un LSTM normalisé par lots pour les états cachés des réseaux neuronaux récurrents. Normaliser.

5.10.2 Pixel RNN

van den Oord et al. (2016b) ont proposé un réseau neuronal récurrent de pixels (Pixel-RNN), qui se compose de 12 couches LSTM 2D.

5.10.3 LSTM bidirectionnel

W¨ollmer et al. (2010) ont proposé un réseau récurrent de LSTM bidirectionnel (BLSTM) avec un réseau bayésien dynamique (DBN) pour la détection de mots clés contextuels.

5.10.4 Bi-LSTM variationnel

Shabanian et al (2017) ont proposé Bi-LSTM variationnel (Variational Bi-LSTM), qui est une variante de l'architecture Bi-LSTM. Variational Bi-LSTM utilise des auto-encodeurs variationnels (VAE) pour créer un canal d'échange d'informations entre les LSTM afin d'apprendre de meilleures représentations.

5.11 Google Neural Machine Translation

Wu et al. (2016) ont proposé un système de traduction automatique appelé Google Neural Machine Translation (GNMT), qui combine un réseau d'encodeurs, un réseau de décodeurs et un réseau d'attention, suivant un cadre commun d’apprentissage séquence à séquence.

5.12 Fader Network

Lample et al. (2017) ont proposé Fader Network, une nouvelle architecture d'encodeur-décodeur qui génère des changements d'image d'entrée réalistes en modifiant les valeurs d'attribut.

5.13 Hyper-réseaux

Les hyper-réseaux proposés par Ha et al. (2016) génèrent des poids pour d'autres réseaux de neurones, tels que les réseaux convolutifs d'hyperréseaux statiques et les hyperréseaux dynamiques pour les réseaux récurrents.

Deutsch(2018) Génération de réseaux de neurones à l'aide d'hyperréseaux.

5.14 Réseaux routiers

Srivastava et al. (2015) ont proposé des réseaux routiers pour apprendre des informations de gestion en utilisant des unités fermées. Le flux d’informations à plusieurs niveaux s’appelle l’autoroute de l’information.

5.14.1 Réseaux routiers récurrents

Zilly et al. (2017) ont proposé des réseaux routiers récurrents (RHN), qui étendent l'architecture de mémoire à long terme (LSTM). RHN utilise la couche Highway dans les transitions périodiques.

5.15 Highway LSTM RNN

Zhang et al. (2016) ont proposé le RNN Highway Long Short-Term Memory (HLSTM), qui étend la fonctionnalité de fermeture entre les unités de mémoire du réseau Deep LSTM avec des connexions directionnelles. (c'est-à-dire l'autoroute).

5.16 CNN récurrent à long terme

Donahue et al. (2014) ont proposé le réseau convolutionnel récurrent à long terme (LRCN), qui utilise un CNN pour l'entrée, puis utilise un LSTM pour la modélisation et la génération de séquences récursives. de prédictions.

5.17 Deep Neural SVM

Zhang et al. (2015) ont proposé Deep Neural SVM (DNSVM), qui utilise Support Vector Machine (SVM) comme réseau neuronal profond (DNN) Le niveau le plus élevé de la catégorie.

5.18 Réseau de mémoire résiduelle convolutive

Moniz et Pal (2016) ont proposé un réseau de mémoire résiduelle convolutive pour incorporer le mécanisme de mémoire dans un réseau neuronal convolutif (CNN). Il utilise un mécanisme de mémoire à long terme pour améliorer le réseau résiduel convolutif.

5.19 Réseau fractal

Larsson et al (2016) ont proposé un réseau fractal, FractalNet, comme alternative aux réseaux résiduels. Ils prétendent être capables de former des réseaux neuronaux ultra-profonds sans apprentissage résiduel. Les fractales sont des architectures répétitives générées par de simples règles d'expansion.

5.20 WaveNet

van den Oord et al (2016) ont proposé WaveNet, un réseau neuronal profond pour générer de l'audio brut. WaveNet se compose d'un ensemble de couches convolutives et de couches de distribution softmax pour la sortie.

Rethage et al. (2017) ont proposé un modèle WaveNet pour le débruitage de la parole.

5.21 Réseaux de pointeurs

Vinyals et al. (2017) ont proposé des réseaux de pointeurs (Ptr-Nets) pour résoudre le problème de la représentation d'un dictionnaire de variables en utilisant une distribution de probabilité softmax appelée « pointeur ».

6. Modèles génératifs profonds

Dans cette section, nous discuterons brièvement d'autres architectures profondes qui utilisent plusieurs couches d'abstraction et de représentation similaires aux réseaux de neurones profonds, également connus sous le nom de modèles génératifs profonds (modèles de génération profonde, DGM). . Bengio (2009) explique les architectures profondes telles que la machine Boltzmann (BM) et les machines Boltzmann restreintes (RBM) et leurs variantes.

Goodfellow et al. (2016) expliquent en détail les modèles génératifs profonds, tels que les machines Boltzmann restreintes et non restreintes et leurs variantes, les machines Boltzmann profondes, les réseaux de croyance profonde (DBN), les réseaux de génération dirigée et de génération aléatoire, etc.

Maaløe et al. (2016) ont proposé des modèles génératifs profonds auxiliaires, dans lesquels ils ont étendu des modèles génératifs profonds avec des variables auxiliaires. Les variables auxiliaires génèrent des distributions variationnelles à l'aide de couches aléatoires et de connexions sautées.

Rezende et al. (2016) ont développé une généralisation en un seul coup de modèles génératifs profonds.

6.1 Machine Boltzmann

La machine Boltzmann est une méthode connexionniste pour apprendre des distributions de probabilité arbitraires, en utilisant le principe du maximum de vraisemblance pour l'apprentissage.

6.2 Machines Boltzmann restreintes

Les machines Boltzmann restreintes (RBM) sont un type spécial de champs aléatoires de Markov qui contiennent une couche d'unités cachées aléatoires, à savoir des variables latentes et une couche de variables observables.

Hinton et Salakhutdinov (2011) ont proposé un modèle génératif profond pour le traitement de documents à l'aide de machines Boltzmann restreintes (RBM).

6.3 Réseaux de croyances profondes

Les réseaux de croyances profondes (DBN) sont des modèles génératifs avec plusieurs couches de variables binaires ou réelles latentes.

Ranzato et al. (2011) ont utilisé le Deep Belief Network (DBN) pour construire un modèle génératif profond pour la reconnaissance d'images.

6.4 Réseau lambertien profond

Tang et al. (2012) ont proposé des réseaux lambertiens profonds (DLN), qui est un modèle génératif à plusieurs niveaux dans lequel les variables potentielles sont l'albédo, les normales de surface et les lumières. DLNis est une combinaison de réflectance lambertienne avec des machines Boltzmann restreintes gaussiennes et des réseaux de croyances profondes.

6.5 Réseaux contradictoires génératifs

Goodfellow et al. (2014) ont proposé de générer des réseaux contradictoires (GAN) pour évaluer des modèles génératifs à travers un processus contradictoire. L'architecture GAN consiste en un modèle génératif contre un adversaire (c'est-à-dire un modèle d'apprentissage ou un modèle discriminant de distribution de données). Mao et al. (2016), Kim et al. (2017) ont proposé davantage d'améliorations au GAN.

Salimans et al. (2016) ont proposé plusieurs méthodes pour former les GAN.

6.5.1 Réseau Adversarial Génératif Laplacien

Denton et al. (2015) ont proposé un modèle génératif profond (DGM) appelé Réseau Adversarial Génératif Laplacien (LAPGAN), en utilisant la méthode du Réseau Adversaire Génératif (GAN). Le modèle utilise également des réseaux convolutionnels dans un cadre pyramidal laplacien.

6.6 Machine à vecteurs de support récurrents

Shi et al. (2016a) ont proposé une machine à vecteurs de support récurrent (RSVM), qui utilise un réseau neuronal récurrent (RNN) pour extraire des caractéristiques de la séquence d'entrée et une machine à vecteurs de support standard ( SVM). ) pour l’identification de la cible au niveau de la séquence.

7. Techniques de formation et d'optimisation

Dans cette section, nous présenterons brièvement certaines des principales techniques de régularisation et d'optimisation des réseaux de neurones profonds (DNN).

7.1 Dropout

Srivastava et al. (2014) ont proposé Dropout pour empêcher le surapprentissage des réseaux neuronaux. Le dropout est une méthode de régularisation moyenne d'un modèle de réseau neuronal en ajoutant du bruit à ses unités cachées. Pendant l'entraînement, il tire au hasard des unités et des connexions du réseau neuronal. Le dropout peut être utilisé dans des modèles graphiques comme RBM (Srivastava et al., 2014) ou dans tout type de réseau neuronal. Une amélioration récemment proposée sur l'abandon est l'abandon fraternel pour les réseaux de neurones récurrents (RNN).

7.2 Maxout

Goodfellow et al. (2013) ont proposé Maxout, une nouvelle fonction d'activation pour Dropout. La sortie de Maxout est la valeur maximale d'un ensemble d'entrées, ce qui est bénéfique pour la moyenne du modèle de Dropout.

7.3 Zoneout

Krueger et al (2016) ont proposé Zoneout, une méthode de régularisation pour les réseaux de neurones récurrents (RNN). Zoneout utilise le bruit de manière aléatoire pendant l'entraînement, comme Dropout, mais conserve les unités cachées au lieu de les jeter.

7.4 Apprentissage résiduel profond

He et al (2015) ont proposé un cadre d'apprentissage résiduel profond, appelé ResNet avec une faible erreur de formation.

7.5 Normalisation par lots

Ioffe et Szegedy (2015) ont proposé la normalisation par lots comme méthode pour accélérer la formation des réseaux neuronaux profonds en réduisant les changements de covariables internes. Ioffe (2017) a proposé une normalisation par lots, qui étend les méthodes précédentes.

7.6 Distillation

Hinton et al. (2015) ont proposé une méthode pour transformer les connaissances d'une collection de modèles hautement régularisés (c'est-à-dire des réseaux de neurones) en un petit modèle compressé.

7.7 Normalisation des couches

Ba et al. (2016) ont proposé la normalisation des couches, en particulier pour la formation accélérée des réseaux neuronaux profonds pour RNN, résolvant les limites de la normalisation par lots.

8. Framework d'apprentissage profond

Il existe un grand nombre de bibliothèques et de frameworks open source disponibles pour l'apprentissage profond. La plupart d’entre eux sont conçus pour le langage de programmation Python. Tels que Theano, Tensorflow, PyTorch, PyBrain, Caffe, Blocks and Fuel, CuDNN, Honk, ChainerCV, PyLearn2, Chainer, torch, etc.

9. Applications du Deep Learning

Dans cette section, nous discuterons brièvement de certaines des applications récentes exceptionnelles en matière d'apprentissage profond. Depuis les débuts du deep learning (DL), les méthodes DL ont été largement utilisées dans divers domaines sous forme d’apprentissage supervisé, non supervisé, semi-supervisé ou par renforcement. Partant des tâches de classification et de détection, les applications DL se développent rapidement dans tous les domaines.

Par exemple :

Classification et reconnaissance d'images

Classification de vidéos

Génération de séquences

Classification de défauts

Traitement de texte, de parole, d'image et de vidéo

Classification de texte

Traitement de la parole

Voix reconnaissance et langage parlé compréhension

...

Colorisation d'images

Questions et réponses sur les images

Générer des images texturées et stylisées

Questions et réponses visuelles et textuelles

Identification et description visuelles

Reconnaissance d'objets

Traitement de documents

Synthèse et édition d'actions de personnages

S longue synthèse

Reconnaissance d'identité...

Agents conversationnels

Appel de variations génétiques

Détection du cancer

Reconstruction par tomodensitométrie à rayons X

Prédiction des crises

Accélération matérielle

Robots

Et plus encore.

Deng et Yu (2014) fournissent une liste détaillée des applications DL dans le traitement de la parole, la récupération d'informations, la reconnaissance d'objets, la vision par ordinateur, l'apprentissage multimodal et multitâche et d'autres domaines.

Utiliser l'apprentissage par renforcement profond (DRL) pour maîtriser les jeux est devenu un sujet brûlant aujourd'hui. De temps en temps, des robots IA sont créés à l'aide de DNN et DRL qui battent les champions du monde humains et les grands maîtres d'échecs dans des jeux de stratégie et d'autres jeux, en commençant par seulement quelques heures d'entraînement. Par exemple, Go’s AlphaGo et AlphaGo Zero.

10. Discussion

Bien que l'apprentissage profond ait connu un grand succès dans de nombreux domaines, il lui reste encore un long chemin à parcourir. Il reste encore de nombreux domaines à améliorer. Quant aux limitations, il existe de nombreux exemples. Par exemple : Nguyen et al. ont montré que les réseaux de neurones profonds (DNN) sont facilement trompés lors de la reconnaissance d'images. Il existe d'autres problèmes tels que la transférabilité des fonctionnalités apprises proposée par Yosinski et al. Huang et al. ont proposé une architecture pour la défense contre les attaques des réseaux neuronaux et ont fait valoir que des travaux futurs sont nécessaires pour se défendre contre ces attaques. Zhang et al. ont proposé un cadre expérimental pour comprendre les modèles d'apprentissage profond. Ils pensaient que la compréhension de l'apprentissage profond nécessitait de repenser et de généraliser.

Marcus propose en 2018 un examen important du rôle, des limites et de la nature du Deep Learning (DL). Il a fortement souligné les limites des méthodes DL, qui nécessitent davantage de données, ont une capacité limitée, ne peuvent pas gérer les hiérarchies, ne peuvent pas effectuer de raisonnement ouvert, ne peuvent pas être totalement transparentes, ne peuvent pas s'intégrer aux connaissances antérieures et ne peuvent pas distinguer les causes et les effets. Il a également mentionné que DL suppose un monde stable, est mis en œuvre de manière approximative, est difficile à concevoir et présente un risque potentiel de surmédiatisation. Marcus estime que l'apprentissage automatique doit être reconceptualisé et rechercher des possibilités dans l'apprentissage non supervisé, la manipulation symbolique et les modèles hybrides, tirer parti des sciences cognitives et de la psychologie et relever des défis plus audacieux.

11. Conclusion

Bien que l'apprentissage profond (DL) fasse progresser le monde plus rapidement que jamais, il reste encore de nombreux aspects qui méritent d'être étudiés. Nous ne comprenons toujours pas pleinement l’apprentissage profond, comment nous pouvons rendre les machines plus intelligentes, plus proches ou plus intelligentes que les humains, ou apprendre comme les humains. DL a résolu de nombreux problèmes tout en appliquant la technologie à tout. Mais les humains sont encore confrontés à de nombreux problèmes, comme le fait que des personnes continuent de mourir de faim et de crises alimentaires, de cancer et d’autres maladies mortelles. Nous espérons que l’apprentissage profond et l’intelligence artificielle se consacreront encore plus à l’amélioration de la qualité de la vie humaine en menant les recherches scientifiques les plus difficiles. Enfin et surtout, que notre monde devienne meilleur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer