Principaux types de modèles d'apprentissage en profondeur que les ingénieurs en IA devraient apprendre en 2022
Publié: 2021-01-01Table des matières
introduction
Le Deep Learning est une technique d'apprentissage automatique qui capitalise sur différentes couches de traitement d'informations non linéaires pour la transformation non supervisée et supervisée, l'extraction de caractéristiques, la classification et l'analyse de modèles.
Lorsqu'il s'agit de traitement de l'information de manière non linéaire, il se compose de différentes couches hiérarchiques. Ici, certains concepts de bas niveau sont capables de définir des concepts de niveau supérieur. L'apprentissage supervisé est une forme d'apprentissage automatique d'un ensemble de formation, et un ensemble d'exemples est soumis en tant qu'entrée dans le système pendant la phase de formation.
Comme chaque entrée est étiquetée avec une valeur de sortie, le système connaît la sortie lorsqu'un ensemble d'entrées est fourni. D'autre part, dans l'apprentissage non supervisé, les entrées ne sont pas étiquetées avec la classe à laquelle elles appartiennent. Il appartient donc au système de développer et d'organiser les données en recherchant des caractéristiques communes et en apportant les modifications nécessaires en fonction des connaissances internes.
Les réseaux de neurones artificiels sont peu profonds. Ainsi, ils ne peuvent pas traiter des données complexes comme celles que l'on trouve dans les applications quotidiennes telles que les images, la parole naturelle, la recherche d'informations et les applications de traitement de l'information de type humain. Pour ces types d'applications, les modèles d'apprentissage en profondeur sont parfaits. Avec l'aide de l'apprentissage en profondeur, il est possible de classer, reconnaître et catégoriser les modèles de données pour une machine avec moins d'effort.
Article connexe : Meilleures techniques d'apprentissage en profondeur
Types de modèles d'apprentissage en profondeur
Les modèles d'apprentissage en profondeur ont évolué et la plupart d'entre eux sont basés sur des réseaux de neurones artificiels. Le plus important d'entre eux est les réseaux de neurones convolutifs (CNN). Il inclut également des variables latentes et des formules propositionnelles organisées par couches dans des modèles génératifs profonds.

Auto-encodeurs
Il s'agit d'un réseau neuronal artificiel, qui peut apprendre de différents modèles de codage. Un auto-encodeur est similaire à un perceptron multicouche ayant une couche d'entrée, une couche cachée ou une couche de sortie dans sa forme la plus simple. La couche de sortie possède le même nombre de nœuds qu'une couche de sortie. Il ne prédit pas les valeurs cibles en fonction du vecteur de sortie ; à la place, l'Autoencoder peut prédire son entrée. Ce mécanisme d'apprentissage peut être décrit comme suit :
Pour chaque entrée x,
- Calculer l'activation en laissant passer une anticipation à chaque couche cachée et couches de sortie
- Utiliser les fonctions d'erreur appropriées pour détecter les écarts entre les valeurs calculées
- Mettre à jour les pondérations en rétropropageant l'erreur
- Continuez à répéter la tâche jusqu'à ce qu'elle génère une sortie satisfaisante
Si la couche cachée a moins de nœuds que les nœuds d'entrée-sortie, alors l'activation de la dernière couche cachée est considérée comme une représentation compressée des entrées. Si les nœuds de la couche cachée sont plus nombreux, un auto-encodeur apprendra la fonction d'identité et s'avérera inutile dans la plupart des cas.
Filet de croyance profonde
Il fournit une solution pour gérer les minima locaux et les fonctions objectives non convexes possédant un perceptron multicouche typique. Vous pouvez le considérer comme un autre type d'apprentissage en profondeur qui consiste en plusieurs couches de variables latentes interconnectées avec d'autres couches. Il s'agit d'une version restreinte des machines Boltzmann.
Ici, les couches cachées de chaque sous-réseau serviront de couche d'entrée visible pour la couche adjacente du réseau. Ainsi, il fait de la couche visible la plus basse un ensemble d'apprentissage pour la couche adjacente du réseau. Par conséquent, chaque couche du réseau peut être entraînée avidement et indépendamment. Chaque couche de la structure profonde utilise des variables cachées en tant que variables observées pour former chaque couche de la structure profonde. L'algorithme d'entraînement d'un réseau de croyances profondes est le suivant :

- Prendre en considération les vecteurs d'entrée
- Utilisez le vecteur d'entrée pour former une machine Boltzmann et obtenez la matrice de poids
- Utilisez la matrice de pondération pour former deux couches inférieures du réseau
- Utilisez le réseau RBM pour générer un nouveau vecteur d'entrée par activation moyenne et échantillonnage des unités cachées.
- Continuez à répéter la procédure jusqu'à ce que vous atteigniez les deux couches supérieures du réseau.
Lisez aussi : Apprentissage en profondeur vs réseaux de neurones
Réseaux de neurones convolutifs (CNN)
C'est une autre variante du perceptron multicouche basée sur l'anticipation. Il organise les neurones individuels de manière à ce qu'ils répondent à toutes les régions qui se chevauchent dans la zone visuelle. C'est l'un des algorithmes d'apprentissage en profondeur capables de prendre une image d'entrée et d'attribuer une importance aux biais et poids apprenables de divers aspects/objets de l'image.
Il peut différencier l'un de l'autre. Le besoin de prétraitement dans CNN est assez faible par rapport à d'autres algorithmes de classification. CNN possède la capacité d'apprendre ces caractéristiques et ces filtres.
Les CNN sont l'une des principales catégories pour les éléments suivants :
Détections d'objets
Classifications d'images
Reconnaissance d'images
Reconnaissance faciale etc...
Ce sont quelques-uns des rares domaines où CNN peut être largement utilisé.
Pour la classification des images, CNN acceptera une image d'entrée, la traitera et effectuera la classification dans différentes catégories. Les ordinateurs visualisent les images d'entrée sous la forme d'un tableau de pixels, et c'est une variable de résolution d'image. Techniquement, les modèles CNN soumettront chaque image d'entrée à plusieurs couches convolutionnelles avec des filtres pour la formation et les tests.
La première couche est connue sous le nom de Convolution, qui est affectée à l'extraction des caractéristiques d'une image d'entrée. La convolution peut préserver les relations entre les pixels car elle peut apprendre les caractéristiques de l'image grâce à l'utilisation de petits carrés de données d'entrée. Il exécute une opération mathématique en prenant deux entrées : une matrice d'image et un filtre ou noyau.
Lorsqu'une convolution d'image est dotée de différents filtres, elle devient capable d'effectuer des opérations telles que la détection des contours, la netteté et le flou à travers des filtres.
Au cours des dernières années, le domaine de la vision par ordinateur a connu des progrès considérables. L'une des plus grandes avancées est CNN. Les CNN profonds ont évolué pour devenir les applications de vision par ordinateur les plus fantaisistes utilisées dans la reconnaissance des gestes, les voitures autonomes, le marquage automatique des amis sur les photos publiées sur Facebook, les fonctions de sécurité faciale et la reconnaissance automatisée des plaques d'immatriculation.

Réseaux de neurones récurrents
Il s'agit d'un type de réseau neuronal où la sortie de l'étape précédente peut être alimentée en entrée de l'étape en cours. Les entrées et les sorties d'un réseau neuronal conventionnel sont indépendantes les unes des autres. Cependant, dans les cas où il est nécessaire de prédire les mots successifs d'une phrase, il sera nécessaire de se souvenir des mots précédents.
L'émergence de RNN promet de résoudre ce problème à l'aide d'une couche cachée. L'une des principales caractéristiques de RNN est l'état caché capable de mémoriser certaines informations dans une séquence.
RNN est équipé d'une mémoire capable de mémoriser toutes les informations sur les calculs. Il peut utiliser les mêmes paramètres pour chaque entrée pour effectuer les mêmes tâches sur toutes les entrées ou couches cachées pour produire la sortie souhaitée. Cela réduira considérablement la complexité des paramètres, ce qui contraste fortement avec les autres réseaux de neurones.
Dernières pensées
Le calcul des gradients dépend non seulement du pas courant mais aussi du pas précédent. Il existe une variante appelée réseau neuronal récurrent bidirectionnel qui est utilisée par plusieurs applications. Ici, le réseau prend en compte la sortie précédente et future attendue. En introduisant plusieurs couches cachées, l'apprentissage en profondeur peut être réalisé dans des réseaux de neurones récurrents bidirectionnels.
Si vous souhaitez en savoir plus sur les techniques d'apprentissage en profondeur , l'apprentissage automatique, consultez la certification PG d'IIIT-B et upGrad en apprentissage automatique et en apprentissage en profondeur, conçue pour les professionnels en activité et offrant plus de 240 heures de formation rigoureuse, plus de 5 études de cas. & affectations, statut IIIT-B Alumni & aide à l'emploi avec les meilleures entreprises.